VI.DB/VI.DB.Entities/Entity.cs
Compact public source page. The previous oversized rendered HTML was archived outside the public site; this page keeps source-derived context plus a bounded excerpt for browsing/search.
original 0.93 MBcompact pageexcerpt 2 lines
Source-derived context
VI.DB/VI.DB.Entities/Entity.cs Back to OIM Explorer VI.DB/VI.DB.Entities/Entity.cs Decompiler Source File VI.DB.Entity Decompiled Source 4 extracted method/event/call references in Entity. Source: F:\Claude\.tmp\oim-decompiled-full\1178_One_Identity_Manager_VI.DB.dll\VI.DB.Entities\Entity.cs Source size: 227.615 characters Interpretation Decompiled source file. Use method/event registrations and call-site extraction to connect back to DialogMethod, QBMEvent, and API layers. Relations CallMethodA
Bounded excerpt
First lines from the rendered source block, bounded to keep the public page fast.
1using System;2using System.Collections;3using System.Collections.Generic;4using System.Diagnostics;5using System.Linq;6using System.Reflection;7using System.Runtime.CompilerServices;8using System.Runtime.InteropServices;9using System.Threading;10using System.Threading.Tasks;11using VI.Base;12using VI.DB.Common;13using VI.DB.Implementation;14using VI.DB.MetaData;15using VI.DB.Sync;1617namespace VI.DB.Entities;1819public static class Entity20{21 [CompilerGenerated]22 private sealed class _003C_003Ec__DisplayClass11_023 {24 [StructLayout((LayoutKind)3)]25 private struct _003C_003CReplaceAsync_003Eb__0_003Ed : IAsyncStateMachine26 {27 public int _003C_003E1__state;2829 public AsyncValueTaskMethodBuilder<TryResult<string>> _003C_003Et__builder;3031 public _003C_003Ec__DisplayClass11_0 _003C_003E4__this;3233 public string name;3435 private ConfiguredValueTaskAwaiter<TryResult<object>> _003C_003Eu__1;3637 private void MoveNext()38 {39 //IL_0098: Unknown result type (might be due to invalid IL or missing references)40 //IL_009d: Unknown result type (might be due to invalid IL or missing references)41 //IL_00a5: Unknown result type (might be due to invalid IL or missing references)42 //IL_004e: Unknown result type (might be due to invalid IL or missing references)43 //IL_005d: Unknown result type (might be due to invalid IL or missing references)44 //IL_0062: Unknown result type (might be due to invalid IL or missing references)45 //IL_0066: Unknown result type (might be due to invalid IL or missing references)46 //IL_006b: Unknown result type (might be due to invalid IL or missing references)47 //IL_0080: Unknown result type (might be due to invalid IL or missing references)48 //IL_0082: Unknown result type (might be due to invalid IL or missing references)49 int num = _003C_003E1__state;50 _003C_003Ec__DisplayClass11_0 _003C_003Ec__DisplayClass11_ = _003C_003E4__this;51 TryResult<string> result;52 try53 {54 ConfiguredValueTaskAwaiter<TryResult<object>> val;55 if (num == 0)56 {57 val = _003C_003Eu__1;58 _003C_003Eu__1 = default(ConfiguredValueTaskAwaiter<TryResult<object>>);59 num = (_003C_003E1__state = -1);60 goto IL_00b4;61 }62 if (_003C_003Ec__DisplayClass11_.entity == null)63 {64 result = TryResult<string>.Failed;65 }66 else67 {68 if (_003C_003Ec__DisplayClass11_.entity.Columns.TryGetValue(name, out var value))69 {70 val = value.TryGetValueAsync(_003C_003Ec__DisplayClass11_.cancellationToken).ConfigureAwait(false).GetAwaiter();71 if (!val.IsCompleted)72 {73 num = (_003C_003E1__state = 0);74 _003C_003Eu__1 = val;75 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<TryResult<object>>, _003C_003CReplaceAsync_003Eb__0_003Ed>(ref val, ref this);76 return;77 }78 goto IL_00b4;79 }80 result = TryResult<string>.Failed;81 }82 goto end_IL_000e;83 IL_00b4:84 TryResult<object> result2 = val.GetResult();85 result = TryResult.FromResult(result2.Success ? DbVal.ConvertTo<string>(result2.Result) : string.Empty);86 end_IL_000e:;87 }88 catch (System.Exception exception)89 {90 _003C_003E1__state = -2;91 _003C_003Et__builder.SetException(exception);92 return;93 }94 _003C_003E1__state = -2;95 _003C_003Et__builder.SetResult(result);96 }9798 [DebuggerHidden]99 private void SetStateMachine(IAsyncStateMachine stateMachine)100 {101 _003C_003Et__builder.SetStateMachine(stateMachine);102 }103 }104105 public IEntity entity;106107 public CancellationToken cancellationToken;108109 [AsyncStateMachine(typeof(_003C_003CReplaceAsync_003Eb__0_003Ed))]110 internal System.Threading.Tasks.ValueTask<TryResult<string>> _003CReplaceAsync_003Eb__0(string name, CancellationToken ct)111 {112 //IL_0002: Unknown result type (might be due to invalid IL or missing references)113 //IL_0007: Unknown result type (might be due to invalid IL or missing references)114 _003C_003CReplaceAsync_003Eb__0_003Ed _003C_003CReplaceAsync_003Eb__0_003Ed = default(_003C_003CReplaceAsync_003Eb__0_003Ed);115 _003C_003CReplaceAsync_003Eb__0_003Ed._003C_003Et__builder = AsyncValueTaskMethodBuilder<TryResult<string>>.Create();116 _003C_003CReplaceAsync_003Eb__0_003Ed._003C_003E4__this = this;117 _003C_003CReplaceAsync_003Eb__0_003Ed.name = name;118 _003C_003CReplaceAsync_003Eb__0_003Ed._003C_003E1__state = -1;119 _003C_003CReplaceAsync_003Eb__0_003Ed._003C_003Et__builder.Start<_003C_003CReplaceAsync_003Eb__0_003Ed>(ref _003C_003CReplaceAsync_003Eb__0_003Ed);120 return _003C_003CReplaceAsync_003Eb__0_003Ed._003C_003Et__builder.Task;121 }122 }123124 [CompilerGenerated]125 private sealed class _003C_003Ec__DisplayClass16_0126 {127 public DiffOperation op;128129 internal bool _003CApplyAsync_003Eb__0(IEntityMethod m)130 {131 return string.Equals(m.Key, op.Name, (StringComparison)4);132 }133 }134135 [CompilerGenerated]136 private sealed class _003C_003Ec__DisplayClass22_0137 {138 public HashSet<string> classIds;139140 internal bool _003CGetEntityMethodsAsync_003Eb__1(IEntityClassMethod m)141 {142 return classIds.Contains(m.ClassId);143 }144 }145146 [CompilerGenerated]147 private sealed class _003C_003Ec__DisplayClass3_0148 {149 [StructLayout((LayoutKind)3)]150 private struct _003C_003CBuildDisplayAsync_003Eb__0_003Ed : IAsyncStateMachine151 {152 public int _003C_003E1__state;153154 public AsyncValueTaskMethodBuilder<TryResult<string>> _003C_003Et__builder;155156 public string name;157158 public _003C_003Ec__DisplayClass3_0 _003C_003E4__this;159160 public CancellationToken ct;161162 private ConfiguredValueTaskAwaiter<TryResult<object>> _003C_003Eu__1;163164 private ConfiguredValueTaskAwaiter<TryResult<string>> _003C_003Eu__2;165166 private void MoveNext()167 {168 //IL_00b9: Unknown result type (might be due to invalid IL or missing references)169 //IL_00be: Unknown result type (might be due to invalid IL or missing references)170 //IL_00c6: Unknown result type (might be due to invalid IL or missing references)171 //IL_017a: Unknown result type (might be due to invalid IL or missing references)172 //IL_017f: Unknown result type (might be due to invalid IL or missing references)173 //IL_0187: Unknown result type (might be due to invalid IL or missing references)174 //IL_0130: Unknown result type (might be due to invalid IL or missing references)175 //IL_013f: Unknown result type (might be due to invalid IL or missing references)176 //IL_0144: Unknown result type (might be due to invalid IL or missing references)177 //IL_0148: Unknown result type (might be due to invalid IL or missing references)178 //IL_014d: Unknown result type (might be due to invalid IL or missing references)179 //IL_0162: Unknown result type (might be due to invalid IL or missing references)180 //IL_0164: Unknown result type (might be due to invalid IL or missing references)181 //IL_006c: Unknown result type (might be due to invalid IL or missing references)182 //IL_007b: Unknown result type (might be due to invalid IL or missing references)183 //IL_0080: Unknown result type (might be due to invalid IL or missing references)184 //IL_0084: Unknown result type (might be due to invalid IL or missing references)185 //IL_0089: Unknown result type (might be due to invalid IL or missing references)186 //IL_009e: Unknown result type (might be due to invalid IL or missing references)187 //IL_00a0: Unknown result type (might be due to invalid IL or missing references)188 int num = _003C_003E1__state;189 _003C_003Ec__DisplayClass3_0 _003C_003Ec__DisplayClass3_ = _003C_003E4__this;190 TryResult<string> result;191 try192 {193 ConfiguredValueTaskAwaiter<TryResult<object>> val;194 if (num == 0)195 {196 val = _003C_003Eu__1;197 _003C_003Eu__1 = default(ConfiguredValueTaskAwaiter<TryResult<object>>);198 num = (_003C_003E1__state = -1);199 goto IL_00d5;200 }201 ConfiguredValueTaskAwaiter<TryResult<string>> val2;202 if (num == 1)203 {204 val2 = _003C_003Eu__2;205 _003C_003Eu__2 = default(ConfiguredValueTaskAwaiter<TryResult<string>>);206 num = (_003C_003E1__state = -1);207 goto IL_0196;208 }209 if (name.IndexOf('[') > -1)210 {211 if (!name.StartsWith("[display]", (StringComparison)5) && !name.StartsWith("[longdisplay]", (StringComparison)5))212 {213 val = _003C_003Ec__DisplayClass3_.entity.TryGetAsync(name, ct).ConfigureAwait(false).GetAwaiter();214 if (!val.IsCompleted)215 {216 num = (_003C_003E1__state = 0);217 _003C_003Eu__1 = val;218 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<TryResult<object>>, _003C_003CBuildDisplayAsync_003Eb__0_003Ed>(ref val, ref this);219 return;220 }221 goto IL_00d5;222 }223 result = TryResult<string>.Failed;224 }225 else226 {227 if (_003C_003Ec__DisplayClass3_.entity.Columns.TryGetValue(name, out var value))228 {229 val2 = value.TryGetDisplayValueAsync(_003C_003Ec__DisplayClass3_.session, ct).ConfigureAwait(false).GetAwaiter();230 if (!val2.IsCompleted)231 {232 num = (_003C_003E1__state = 1);233 _003C_003Eu__2 = val2;234 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<TryResult<string>>, _003C_003CBuildDisplayAsync_003Eb__0_003Ed>(ref val2, ref this);235 return;236 }237 goto IL_0196;238 }239 result = TryResult<string>.Failed;240 }241 goto end_IL_000e;242 IL_00d5:243 TryResult<string> tryResult = val.GetResult().Map<string>(DbVal.ConvertTo<string>);244 goto IL_019e;245 IL_019e:246 result = TryResult.FromResult(tryResult.Success ? tryResult.Result : "<Hidden>");247 goto end_IL_000e;248 IL_0196:249 tryResult = val2.GetResult();250 goto IL_019e;251 end_IL_000e:;252 }253 catch (System.Exception exception)254 {255 _003C_003E1__state = -2;256 _003C_003Et__builder.SetException(exception);257 return;258 }259 _003C_003E1__state = -2;260 _003C_003Et__builder.SetResult(result);261 }262263 [DebuggerHidden]264 private void SetStateMachine(IAsyncStateMachine stateMachine)265 {266 _003C_003Et__builder.SetStateMachine(stateMachine);267 }268 }269270 public IEntity entity;271272 public ISession session;273274 [AsyncStateMachine(typeof(_003C_003CBuildDisplayAsync_003Eb__0_003Ed))]275 internal System.Threading.Tasks.ValueTask<TryResult<string>> _003CBuildDisplayAsync_003Eb__0(string name, CancellationToken ct)276 {277 //IL_0002: Unknown result type (might be due to invalid IL or missing references)278 //IL_0007: Unknown result type (might be due to invalid IL or missing references)279 //IL_001e: Unknown result type (might be due to invalid IL or missing references)280 //IL_001f: Unknown result type (might be due to invalid IL or missing references)281 _003C_003CBuildDisplayAsync_003Eb__0_003Ed _003C_003CBuildDisplayAsync_003Eb__0_003Ed = default(_003C_003CBuildDisplayAsync_003Eb__0_003Ed);282 _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003Et__builder = AsyncValueTaskMethodBuilder<TryResult<string>>.Create();283 _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003E4__this = this;284 _003C_003CBuildDisplayAsync_003Eb__0_003Ed.name = name;285 _003C_003CBuildDisplayAsync_003Eb__0_003Ed.ct = ct;286 _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003E1__state = -1;287 _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003Et__builder.Start<_003C_003CBuildDisplayAsync_003Eb__0_003Ed>(ref _003C_003CBuildDisplayAsync_003Eb__0_003Ed);288 return _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003Et__builder.Task;289 }290 }291292 [CompilerGenerated]293 private sealed class _003C_003Ec__DisplayClass61_0294 {295 public IEntity entity;296297 internal EntityCallbackMethod _003CGetMethodsAsync_003Eb__0(IEntityMethod m)298 {299 return new EntityCallbackMethod(entity, m);300 }301 }302303 [CompilerGenerated]304 private sealed class _003C_003Ec__DisplayClass71_0305 {306 public IEntity entity;307308 public IDbInfo dbInfo;309310 internal System.Threading.Tasks.ValueTask<string> _003C_IsInModuleMasterDbAsync_003Eb__1(IMetaColumn p, CancellationToken ct)311 {312 //IL_000c: Unknown result type (might be due to invalid IL or missing references)313 return entity.GetValueAsync<string>(p.Columnname, ct);314 }315316 internal bool _003C_IsInModuleMasterDbAsync_003Eb__0(string w)317 {318 if (!string.Equals(w, dbInfo.ModuleOwner, (StringComparison)5) && !string.Equals(w, "CCC", (StringComparison)5))319 {320 if (string.Equals(w, "MDK", (StringComparison)5))321 {322 return string.Equals(dbInfo.ModuleOwner, "QBM", (StringComparison)5);323 }324 return false;325 }326 return true;327 }328 }329330 [CompilerGenerated]331 private sealed class _003C_003Ec__DisplayClass79_0332 {333 public IMetaColumn column;334335 public IMultiLanguageProvider ml;336337 internal string _003CGetDisplayValueAsync_003Eb__0(string c)338 {339 return ml.Get(column.Uid, c);340 }341 }342343 [CompilerGenerated]344 private sealed class _003C_003Ec__DisplayClass80_0345 {346 [StructLayout((LayoutKind)3)]347 private struct _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed : IAsyncStateMachine348 {349 public int _003C_003E1__state;350351 public AsyncValueTaskMethodBuilder<TryResult<string>> _003C_003Et__builder;352353 public string name;354355 public _003C_003Ec__DisplayClass80_0 _003C_003E4__this;356357 public CancellationToken cti;358359 private string _003CcolumnName_003E5__2;360361 private object _003CrawValue_003E5__3;362363 private ConfiguredTaskAwaiter<IMetaTable> _003C_003Eu__1;364365 private ConfiguredValueTaskAwaiter<string> _003C_003Eu__2;366367 private void MoveNext()368 {369 //IL_00ce: Unknown result type (might be due to invalid IL or missing references)370 //IL_00d3: Unknown result type (might be due to invalid IL or missing references)371 //IL_00db: Unknown result type (might be due to invalid IL or missing references)372 //IL_0174: Unknown result type (might be due to invalid IL or missing references)373 //IL_0179: Unknown result type (might be due to invalid IL or missing references)374 //IL_0181: Unknown result type (might be due to invalid IL or missing references)375 //IL_0021: Unknown result type (might be due to invalid IL or missing references)376 //IL_0026: Unknown result type (might be due to invalid IL or missing references)377 //IL_0028: Unknown result type (might be due to invalid IL or missing references)378 //IL_0031: Unknown result type (might be due to invalid IL or missing references)379 //IL_003d: Unknown result type (might be due to invalid IL or missing references)380 //IL_012a: Unknown result type (might be due to invalid IL or missing references)381 //IL_0139: Unknown result type (might be due to invalid IL or missing references)382 //IL_013e: Unknown result type (might be due to invalid IL or missing references)383 //IL_0142: Unknown result type (might be due to invalid IL or missing references)384 //IL_0147: Unknown result type (might be due to invalid IL or missing references)385 //IL_0085: Unknown result type (might be due to invalid IL or missing references)386 //IL_0090: Unknown result type (might be due to invalid IL or missing references)387 //IL_0095: Unknown result type (might be due to invalid IL or missing references)388 //IL_0099: Unknown result type (might be due to invalid IL or missing references)389 //IL_009e: Unknown result type (might be due to invalid IL or missing references)390 //IL_015c: Unknown result type (might be due to invalid IL or missing references)391 //IL_015e: Unknown result type (might be due to invalid IL or missing references)392 //IL_00b3: Unknown result type (might be due to invalid IL or missing references)393 //IL_00b5: Unknown result type (might be due to invalid IL or missing references)394 int num = _003C_003E1__state;395 _003C_003Ec__DisplayClass80_0 _003C_003Ec__DisplayClass80_ = _003C_003E4__this;396 TryResult<string> result;397 try398 {399 ConfiguredTaskAwaiter<IMetaTable> val;400 if (num == 0)401 {402 val = _003C_003Eu__1;403 _003C_003Eu__1 = default(ConfiguredTaskAwaiter<IMetaTable>);404 num = (_003C_003E1__state = -1);405 goto IL_00ea;406 }407 ConfiguredValueTaskAwaiter<string> val2;408 if (num == 1)409 {410 val2 = _003C_003Eu__2;411 _003C_003Eu__2 = default(ConfiguredValueTaskAwaiter<string>);412 num = (_003C_003E1__state = -1);413 goto IL_0190;414 }415 ValueTuple<string, string, string> val3 = Helper.ParseDisplayColumnReference(name);416 string item = val3.Item1;417 _003CcolumnName_003E5__2 = val3.Item2;418 string item2 = val3.Item3;419 IMetaTable metaTable;420 if (_003C_003Ec__DisplayClass80_.rawData.TryGetValue(item2, out _003CrawValue_003E5__3))421 {422 if (string.IsNullOrEmpty(item))423 {424 metaTable = _003C_003Ec__DisplayClass80_.parentTable;425 goto IL_00f3;426 }427 val = _003C_003Ec__DisplayClass80_.session.MetaData().GetTableAsync(item, cti).ConfigureAwait(false)428 .GetAwaiter();429 if (!val.IsCompleted)430 {431 num = (_003C_003E1__state = 0);432 _003C_003Eu__1 = val;433 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IMetaTable>, _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed>(ref val, ref this);434 return;435 }436 goto IL_00ea;437 }438 result = TryResult<string>.Failed;439 goto end_IL_000e;440 IL_00f3:441 if (metaTable.Columns.TryGetValue(_003CcolumnName_003E5__2, out var value))442 {443 val2 = GetDisplayValueAsync(value, _003C_003Ec__DisplayClass80_.session, _003CrawValue_003E5__3, _003C_003Ec__DisplayClass80_.rawData, isDifferent: false, cti).ConfigureAwait(false).GetAwaiter();444 if (!val2.IsCompleted)445 {446 num = (_003C_003E1__state = 1);447 _003C_003Eu__2 = val2;448 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<string>, _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed>(ref val2, ref this);449 return;450 }451 goto IL_0190;452 }453 result = TryResult<string>.Failed;454 goto end_IL_000e;455 IL_0190:456 result = TryResult<string>.FromResult(val2.GetResult());457 goto end_IL_000e;458 IL_00ea:459 metaTable = val.GetResult();460 goto IL_00f3;461 end_IL_000e:;462 }463 catch (System.Exception exception)464 {465 _003C_003E1__state = -2;466 _003CcolumnName_003E5__2 = null;467 _003CrawValue_003E5__3 = null;468 _003C_003Et__builder.SetException(exception);469 return;470 }471 _003C_003E1__state = -2;472 _003CcolumnName_003E5__2 = null;473 _003CrawValue_003E5__3 = null;474 _003C_003Et__builder.SetResult(result);475 }476477 [DebuggerHidden]478 private void SetStateMachine(IAsyncStateMachine stateMachine)479 {480 _003C_003Et__builder.SetStateMachine(stateMachine);481 }482 }483484 public IEntityRawData rawData;485486 public ISession session;487488 public IMetaTable parentTable;489490 [AsyncStateMachine(typeof(_003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed))]491 internal System.Threading.Tasks.ValueTask<TryResult<string>> _003C_GetParentDisplayValueAsync_003Eb__0(string name, CancellationToken cti)492 {493 //IL_0002: Unknown result type (might be due to invalid IL or missing references)494 //IL_0007: Unknown result type (might be due to invalid IL or missing references)495 //IL_001e: Unknown result type (might be due to invalid IL or missing references)496 //IL_001f: Unknown result type (might be due to invalid IL or missing references)497 _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed = default(_003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed);498 _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed._003C_003Et__builder = AsyncValueTaskMethodBuilder<TryResult<string>>.Create();499 _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed._003C_003E4__this = this;500 _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed.name = name;501 _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed.cti = cti;502 _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed._003C_003E1__state = -1;503 _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed._003C_003Et__builder.Start<_003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed>(ref _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed);504 return _003C_003C_GetParentDisplayValueAsync_003Eb__0_003Ed._003C_003Et__builder.Task;505 }506 }507508 [CompilerGenerated]509 private sealed class _003C_003Ec__DisplayClass9_0510 {511 public ISession session;512513 public EntityLoadType loadType;514515 internal System.Threading.Tasks.Task<IEntity> _003CReloadAsync_003Eb__0(IEntity e, CancellationToken ct)516 {517 //IL_000d: Unknown result type (might be due to invalid IL or missing references)518 return e.ReloadAsync(session, loadType, ct);519 }520 }521522 [StructLayout((LayoutKind)3)]523 [CompilerGenerated]524 private struct _003CApplyAsync_003Ed__16 : IAsyncStateMachine525 {526 public int _003C_003E1__state;527528 public AsyncTaskMethodBuilder<Diff> _003C_003Et__builder;529530 public DiffData data;531532 public IEntity entity;533534 public System.Collections.Generic.IEnumerable<DiffOperation> operations;535536 public IEntityLogic logic;537538 public CancellationToken ct;539540 private _003C_003Ec__DisplayClass16_0 _003C_003E8__1;541542 public SetValueBehavior setValueBehavior;543544 private DiffBuilder _003CretBuilder_003E5__2;545546 private IDiffOperationSink _003Csink_003E5__3;547548 private System.Collections.Generic.IEnumerator<DiffOperation> _003C_003E7__wrap3;549550 private ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<IEntityMethod>> _003C_003Eu__1;551552 private ConfiguredTaskAwaiter<ApplyResult> _003C_003Eu__2;553554 private ConfiguredValueTaskAwaiter<ApplyResult> _003C_003Eu__3;555556 private ConfiguredTaskAwaiter _003C_003Eu__4;557558 private System.Collections.Generic.IEnumerator<MethodCallData> _003C_003E7__wrap4;559560 private ConfiguredValueTaskAwaiter _003C_003Eu__5;561562 private void MoveNext()563 {564 //IL_05d4: Unknown result type (might be due to invalid IL or missing references)565 //IL_05d9: Unknown result type (might be due to invalid IL or missing references)566 //IL_05e1: Unknown result type (might be due to invalid IL or missing references)567 //IL_0139: Unknown result type (might be due to invalid IL or missing references)568 //IL_013e: Unknown result type (might be due to invalid IL or missing references)569 //IL_0146: Unknown result type (might be due to invalid IL or missing references)570 //IL_0275: Unknown result type (might be due to invalid IL or missing references)571 //IL_027a: Unknown result type (might be due to invalid IL or missing references)572 //IL_0282: Unknown result type (might be due to invalid IL or missing references)573 //IL_037e: Unknown result type (might be due to invalid IL or missing references)574 //IL_0383: Unknown result type (might be due to invalid IL or missing references)575 //IL_038b: Unknown result type (might be due to invalid IL or missing references)576 //IL_0428: Unknown result type (might be due to invalid IL or missing references)577 //IL_042d: Unknown result type (might be due to invalid IL or missing references)578 //IL_0435: Unknown result type (might be due to invalid IL or missing references)579 //IL_0721: Unknown result type (might be due to invalid IL or missing references)580 //IL_0726: Unknown result type (might be due to invalid IL or missing references)581 //IL_072e: Unknown result type (might be due to invalid IL or missing references)582 //IL_058b: Unknown result type (might be due to invalid IL or missing references)583 //IL_0596: Unknown result type (might be due to invalid IL or missing references)584 //IL_059b: Unknown result type (might be due to invalid IL or missing references)585 //IL_059f: Unknown result type (might be due to invalid IL or missing references)586 //IL_05a4: Unknown result type (might be due to invalid IL or missing references)587 //IL_06d4: Unknown result type (might be due to invalid IL or missing references)588 //IL_06e3: Unknown result type (might be due to invalid IL or missing references)589 //IL_06e8: Unknown result type (might be due to invalid IL or missing references)590 //IL_06ec: Unknown result type (might be due to invalid IL or missing references)591 //IL_06f1: Unknown result type (might be due to invalid IL or missing references)592 //IL_00f0: Unknown result type (might be due to invalid IL or missing references)593 //IL_00fb: Unknown result type (might be due to invalid IL or missing references)594 //IL_0100: Unknown result type (might be due to invalid IL or missing references)595 //IL_0104: Unknown result type (might be due to invalid IL or missing references)596 //IL_0109: Unknown result type (might be due to invalid IL or missing references)597 //IL_022c: Unknown result type (might be due to invalid IL or missing references)598 //IL_0237: Unknown result type (might be due to invalid IL or missing references)599 //IL_023c: Unknown result type (might be due to invalid IL or missing references)600 //IL_0240: Unknown result type (might be due to invalid IL or missing references)601 //IL_0245: Unknown result type (might be due to invalid IL or missing references)602 //IL_05b9: Unknown result type (might be due to invalid IL or missing references)603 //IL_05bb: Unknown result type (might be due to invalid IL or missing references)604 //IL_0706: Unknown result type (might be due to invalid IL or missing references)605 //IL_0708: Unknown result type (might be due to invalid IL or missing references)606 //IL_011e: Unknown result type (might be due to invalid IL or missing references)607 //IL_0120: Unknown result type (might be due to invalid IL or missing references)608 //IL_025a: Unknown result type (might be due to invalid IL or missing references)609 //IL_025c: Unknown result type (might be due to invalid IL or missing references)610 //IL_0331: Unknown result type (might be due to invalid IL or missing references)611 //IL_0340: Unknown result type (might be due to invalid IL or missing references)612 //IL_0345: Unknown result type (might be due to invalid IL or missing references)613 //IL_0349: Unknown result type (might be due to invalid IL or missing references)614 //IL_034e: Unknown result type (might be due to invalid IL or missing references)615 //IL_03db: Unknown result type (might be due to invalid IL or missing references)616 //IL_03ea: Unknown result type (might be due to invalid IL or missing references)617 //IL_03ef: Unknown result type (might be due to invalid IL or missing references)618 //IL_03f3: Unknown result type (might be due to invalid IL or missing references)619 //IL_03f8: Unknown result type (might be due to invalid IL or missing references)620 //IL_0363: Unknown result type (might be due to invalid IL or missing references)621 //IL_0365: Unknown result type (might be due to invalid IL or missing references)622 //IL_040d: Unknown result type (might be due to invalid IL or missing references)623 //IL_040f: Unknown result type (might be due to invalid IL or missing references)624 int num = _003C_003E1__state;625 Diff result;626 try627 {628 ConfiguredTaskAwaiter val;629 switch (num)630 {631 default:632 _003CretBuilder_003E5__2 = new DiffBuilder633 {634 Data = data635 };636 _003Csink_003E5__3 = entity as IDiffOperationSink;637 _003C_003E7__wrap3 = operations.GetEnumerator();638 goto case 0;639 case 0:640 case 1:641 case 2:642 case 3:643 try644 {645 ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<IEntityMethod>> val4;646 ConfiguredTaskAwaiter<ApplyResult> val3;647 ConfiguredValueTaskAwaiter<ApplyResult> val2;648 IEntityColumn value;649 IEntityMethod entityMethod;650 switch (num)651 {652 case 0:653 val4 = _003C_003Eu__1;654 _003C_003Eu__1 = default(ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<IEntityMethod>>);655 num = (_003C_003E1__state = -1);656 goto IL_0155;657 case 1:658 val3 = _003C_003Eu__2;659 _003C_003Eu__2 = default(ConfiguredTaskAwaiter<ApplyResult>);660 num = (_003C_003E1__state = -1);661 goto IL_0291;662 case 2:663 val2 = _003C_003Eu__3;664 _003C_003Eu__3 = default(ConfiguredValueTaskAwaiter<ApplyResult>);665 num = (_003C_003E1__state = -1);666 goto IL_039a;667 case 3:668 val2 = _003C_003Eu__3;669 _003C_003Eu__3 = default(ConfiguredValueTaskAwaiter<ApplyResult>);670 num = (_003C_003E1__state = -1);671 goto IL_0444;672 default:673 {674 while (((System.Collections.IEnumerator)_003C_003E7__wrap3).MoveNext())675 {676 _003C_003E8__1 = new _003C_003Ec__DisplayClass16_0();677 _003C_003E8__1.op = _003C_003E7__wrap3.Current;678 if (_003C_003E8__1.op.Type == DiffOperationType.MethodCanSee || _003C_003E8__1.op.Type == DiffOperationType.MethodCanEdit)679 {680 if (logic == null)681 {682 logic = entity.GetLogic();683 }684 if (logic == null)685 {686 continue;687 }688 goto IL_00e9;689 }690 if (_003Csink_003E5__3 != null)691 {692 goto IL_0214;693 }694 if (!entity.Columns.TryGetValue(_003C_003E8__1.op.Name, out value))695 {696 continue;697 }698 goto IL_02e1;699 }700 break;701 }702 IL_0155:703 entityMethod = Enumerable.FirstOrDefault<IEntityMethod>(val4.GetResult(), (Func<IEntityMethod, bool>)((IEntityMethod m) => string.Equals(m.Key, _003C_003E8__1.op.Name, (StringComparison)4)));704 if (entityMethod != null)705 {706 switch (_003C_003E8__1.op.Type)707 {708 case DiffOperationType.MethodCanSee:709 entityMethod.Visible = DbVal.ConvertTo<bool>(_003C_003E8__1.op.Value);710 _003CretBuilder_003E5__2.Append(_003C_003E8__1.op);711 break;712 case DiffOperationType.MethodCanEdit:713 entityMethod.Enabled = DbVal.ConvertTo<bool>(_003C_003E8__1.op.Value);714 _003CretBuilder_003E5__2.Append(_003C_003E8__1.op);715 break;716 }717 }718 goto default;719 IL_0444:720 if (val2.GetResult() == ApplyResult.Applied)721 {722 _003CretBuilder_003E5__2.Append(_003C_003E8__1.op);723 }724 goto IL_053e;725 IL_0214:726 val3 = _003Csink_003E5__3.ApplyOperationAsync(_003C_003E8__1.op, setValueBehavior, ct).ConfigureAwait(false).GetAwaiter();727 if (!val3.IsCompleted)728 {729 num = (_003C_003E1__state = 1);730 _003C_003Eu__2 = val3;731 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<ApplyResult>, _003CApplyAsync_003Ed__16>(ref val3, ref this);732 return;733 }734 goto IL_0291;735 IL_039a:736 if (val2.GetResult() == ApplyResult.Applied)737 {738 _003CretBuilder_003E5__2.Append(_003C_003E8__1.op);739 }740 goto IL_053e;741 IL_0291:742 if (val3.GetResult() == ApplyResult.Applied)743 {744 _003CretBuilder_003E5__2.Append(_003C_003E8__1.op);745 }746 goto default;747 IL_053e:748 _003C_003E8__1 = null;749 goto default;750 IL_02e1:751 switch (_003C_003E8__1.op.Type)752 {753 case DiffOperationType.Value:754 break;755 case DiffOperationType.OptionalValue:756 goto IL_03c3;757 case DiffOperationType.CanSee:758 value.CanSee = DbVal.ConvertTo<bool>(_003C_003E8__1.op.Value);759 _003CretBuilder_003E5__2.Append(_003C_003E8__1.op);760 goto IL_053e;761 case DiffOperationType.CanEdit:762 value.CanEdit = DbVal.ConvertTo<bool>(_003C_003E8__1.op.Value);763 _003CretBuilder_003E5__2.Append(_003C_003E8__1.op);764 goto IL_053e;765 case DiffOperationType.MinLen:766 value.MinLen = DbVal.ConvertTo<int>(_003C_003E8__1.op.Value);767 _003CretBuilder_003E5__2.Append(_003C_003E8__1.op);768 goto IL_053e;769 case DiffOperationType.MaxLen:770 value.MaxLen = DbVal.ConvertTo<int>(_003C_003E8__1.op.Value);771 _003CretBuilder_003E5__2.Append(_003C_003E8__1.op);772 goto IL_053e;773 default:774 goto IL_053e;775 }776 val2 = value.SetValueAsync(_003C_003E8__1.op.Value, setValueBehavior, ct).ConfigureAwait(false).GetAwaiter();777 if (!val2.IsCompleted)778 {779 num = (_003C_003E1__state = 2);780 _003C_003Eu__3 = val2;781 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003CApplyAsync_003Ed__16>(ref val2, ref this);782 return;783 }784 goto IL_039a;785 IL_03c3:786 val2 = value.TrySetValueAsync(_003C_003E8__1.op.Value, setValueBehavior, ct).ConfigureAwait(false).GetAwaiter();787 if (!val2.IsCompleted)788 {789 num = (_003C_003E1__state = 3);790 _003C_003Eu__3 = val2;791 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003CApplyAsync_003Ed__16>(ref val2, ref this);792 return;793 }794 goto IL_0444;795 IL_00e9:796 val4 = logic.GetMethodsAsync(ct).ConfigureAwait(false).GetAwaiter();797 if (!val4.IsCompleted)798 {799 num = (_003C_003E1__state = 0);800 _003C_003Eu__1 = val4;801 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<System.Collections.Generic.IEnumerable<IEntityMethod>>, _003CApplyAsync_003Ed__16>(ref val4, ref this);802 return;803 }804 goto IL_0155;805 }806 }807 finally808 {809 if (num < 0 && _003C_003E7__wrap3 != null)810 {811 ((System.IDisposable)_003C_003E7__wrap3).Dispose();812 }813 }814 _003C_003E7__wrap3 = null;815 if (_003Csink_003E5__3 != null)816 {817 ConfiguredTaskAwaitable val5 = _003Csink_003E5__3.SetDiffDataAsync(data, ct).ConfigureAwait(false);818 val = ((ConfiguredTaskAwaitable)(ref val5)).GetAwaiter();819 if (!((ConfiguredTaskAwaiter)(ref val)).IsCompleted)820 {821 num = (_003C_003E1__state = 4);822 _003C_003Eu__4 = val;823 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003CApplyAsync_003Ed__16>(ref val, ref this);824 return;825 }826 goto IL_05f0;827 }828 if (data.State.HasValue)829 {830 entity.State = data.State.Value;831 }832 _003C_003E7__wrap4 = data.MethodCalls.AvoidNull().GetEnumerator();833 goto case 5;834 case 4:835 val = _003C_003Eu__4;836 _003C_003Eu__4 = default(ConfiguredTaskAwaiter);837 num = (_003C_003E1__state = -1);838 goto IL_05f0;839 case 5:840 {841 try842 {843 if (num != 5)844 {845 goto IL_0744;846 }847 ConfiguredValueTaskAwaiter val6 = _003C_003Eu__5;848 _003C_003Eu__5 = default(ConfiguredValueTaskAwaiter);849 num = (_003C_003E1__state = -1);850 goto IL_073d;851 IL_073d:852 ((ConfiguredValueTaskAwaiter)(ref val6)).GetResult();853 goto IL_0744;854 IL_0744:855 if (((System.Collections.IEnumerator)_003C_003E7__wrap4).MoveNext())856 {857 MethodCallData current = _003C_003E7__wrap4.Current;858 ConfiguredValueTaskAwaitable val7 = entity.CallMethodAsync(current.Name, Enumerable.ToArray<System.Type>(Enumerable.Select<TypedValue, System.Type>((System.Collections.Generic.IEnumerable<TypedValue>)current.Parameters, (Func<TypedValue, System.Type>)((TypedValue p) => p.Type))), Enumerable.ToArray<object>(Enumerable.Select<TypedValue, object>((System.Collections.Generic.IEnumerable<TypedValue>)current.Parameters, (Func<TypedValue, object>)((TypedValue p) => p.GetTypedValue()))), ct).ConfigureAwait(false);859 val6 = ((ConfiguredValueTaskAwaitable)(ref val7)).GetAwaiter();860 if (!((ConfiguredValueTaskAwaiter)(ref val6)).IsCompleted)861 {862 num = (_003C_003E1__state = 5);863 _003C_003Eu__5 = val6;864 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter, _003CApplyAsync_003Ed__16>(ref val6, ref this);865 return;866 }867 goto IL_073d;868 }869 }870 finally871 {872 if (num < 0 && _003C_003E7__wrap4 != null)873 {874 ((System.IDisposable)_003C_003E7__wrap4).Dispose();875 }876 }877 _003C_003E7__wrap4 = null;878 break;879 }880 IL_05f0:881 ((ConfiguredTaskAwaiter)(ref val)).GetResult();882 break;883 }884 result = _003CretBuilder_003E5__2.ToDiff();885 }886 catch (System.Exception exception)887 {888 _003C_003E1__state = -2;889 _003CretBuilder_003E5__2 = null;890 _003Csink_003E5__3 = null;891 _003C_003Et__builder.SetException(exception);892 return;893 }894 _003C_003E1__state = -2;895 _003CretBuilder_003E5__2 = null;896 _003Csink_003E5__3 = null;897 _003C_003Et__builder.SetResult(result);898 }899900 [DebuggerHidden]901 private void SetStateMachine(IAsyncStateMachine stateMachine)902 {903 _003C_003Et__builder.SetStateMachine(stateMachine);904 }905 }906907 [StructLayout((LayoutKind)3)]908 [CompilerGenerated]909 private struct _003CApplyAsync_003Ed__18 : IAsyncStateMachine910 {911 public int _003C_003E1__state;912913 public AsyncTaskMethodBuilder _003C_003Et__builder;914915 public Diff diff;916917 public Func<DiffOperation, CancellationToken, System.Threading.Tasks.Task<bool>> filter;918919 public CancellationToken ct;920921 public IEntity entity;922923 private List<DiffOperation> _003Clist_003E5__2;924925 private System.Collections.Generic.IEnumerator<DiffOperation> _003C_003E7__wrap2;926927 private DiffOperation _003Cop_003E5__4;928929 private ConfiguredTaskAwaiter<bool> _003C_003Eu__1;930931 private ConfiguredTaskAwaiter<Diff> _003C_003Eu__2;932933 private void MoveNext()934 {935 //IL_0193: Unknown result type (might be due to invalid IL or missing references)936 //IL_0198: Unknown result type (might be due to invalid IL or missing references)937 //IL_01a0: Unknown result type (might be due to invalid IL or missing references)938 //IL_00bf: Unknown result type (might be due to invalid IL or missing references)939 //IL_00c4: Unknown result type (might be due to invalid IL or missing references)940 //IL_00cb: Unknown result type (might be due to invalid IL or missing references)941 //IL_014d: Unknown result type (might be due to invalid IL or missing references)942 //IL_0158: Unknown result type (might be due to invalid IL or missing references)943 //IL_015d: Unknown result type (might be due to invalid IL or missing references)944 //IL_0161: Unknown result type (might be due to invalid IL or missing references)945 //IL_0166: Unknown result type (might be due to invalid IL or missing references)946 //IL_0079: Unknown result type (might be due to invalid IL or missing references)947 //IL_0084: Unknown result type (might be due to invalid IL or missing references)948 //IL_0089: Unknown result type (might be due to invalid IL or missing references)949 //IL_008c: Unknown result type (might be due to invalid IL or missing references)950 //IL_0091: Unknown result type (might be due to invalid IL or missing references)951 //IL_017b: Unknown result type (might be due to invalid IL or missing references)952 //IL_017d: Unknown result type (might be due to invalid IL or missing references)953 //IL_00a5: Unknown result type (might be due to invalid IL or missing references)954 //IL_00a6: Unknown result type (might be due to invalid IL or missing references)955 int num = _003C_003E1__state;956 try957 {958 if (num == 0)959 {960 goto IL_0053;961 }962 ConfiguredTaskAwaiter<Diff> val;963 if (num == 1)964 {965 val = _003C_003Eu__2;966 _003C_003Eu__2 = default(ConfiguredTaskAwaiter<Diff>);967 num = (_003C_003E1__state = -1);968 goto IL_01af;969 }970 System.Collections.Generic.IEnumerable<DiffOperation> operations;971 if (!(diff == null))972 {973 operations = diff;974 if (filter != null)975 {976 _003Clist_003E5__2 = new List<DiffOperation>();977 _003C_003E7__wrap2 = diff.GetEnumerator();978 goto IL_0053;979 }980 goto IL_013a;981 }982 goto end_IL_0007;983 IL_01af:984 val.GetResult();985 goto end_IL_0007;986 IL_0053:987 try988 {989 if (num != 0)990 {991 goto IL_00fb;992 }993 ConfiguredTaskAwaiter<bool> val2 = _003C_003Eu__1;994 _003C_003Eu__1 = default(ConfiguredTaskAwaiter<bool>);995 num = (_003C_003E1__state = -1);996 goto IL_00da;997 IL_00da:998 if (val2.GetResult())999 {1000 _003Clist_003E5__2.Add(_003Cop_003E5__4);1001 }1002 _003Cop_003E5__4 = null;1003 goto IL_00fb;1004 IL_00fb:1005 if (((System.Collections.IEnumerator)_003C_003E7__wrap2).MoveNext())1006 {1007 _003Cop_003E5__4 = _003C_003E7__wrap2.Current;1008 val2 = filter.Invoke(_003Cop_003E5__4, ct).ConfigureAwait(false).GetAwaiter();1009 if (!val2.IsCompleted)1010 {1011 num = (_003C_003E1__state = 0);1012 _003C_003Eu__1 = val2;1013 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<bool>, _003CApplyAsync_003Ed__18>(ref val2, ref this);1014 return;1015 }1016 goto IL_00da;1017 }1018 }1019 finally1020 {1021 if (num < 0 && _003C_003E7__wrap2 != null)1022 {1023 ((System.IDisposable)_003C_003E7__wrap2).Dispose();1024 }1025 }1026 _003C_003E7__wrap2 = null;1027 operations = (System.Collections.Generic.IEnumerable<DiffOperation>)_003Clist_003E5__2;1028 _003Clist_003E5__2 = null;1029 goto IL_013a;1030 IL_013a:1031 val = entity.ApplyAsync(diff.Data, operations, ct).ConfigureAwait(false).GetAwaiter();1032 if (!val.IsCompleted)1033 {1034 num = (_003C_003E1__state = 1);1035 _003C_003Eu__2 = val;1036 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<Diff>, _003CApplyAsync_003Ed__18>(ref val, ref this);1037 return;1038 }1039 goto IL_01af;1040 end_IL_0007:;1041 }1042 catch (System.Exception exception)1043 {1044 _003C_003E1__state = -2;1045 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);1046 return;1047 }1048 _003C_003E1__state = -2;1049 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();1050 }10511052 [DebuggerHidden]1053 private void SetStateMachine(IAsyncStateMachine stateMachine)1054 {1055 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);1056 }1057 }10581059 [StructLayout((LayoutKind)3)]1060 [CompilerGenerated]1061 private struct _003CBuildDisplayAsync_003Ed__3 : IAsyncStateMachine1062 {1063 public int _003C_003E1__state;10641065 public AsyncValueTaskMethodBuilder<string> _003C_003Et__builder;10661067 public IEntity entity;10681069 public ISession session;10701071 public string pattern;10721073 public CancellationToken cancellationToken;10741075 private ConfiguredValueTaskAwaiter<string> _003C_003Eu__1;10761077 private void MoveNext()1078 {1079 //IL_0099: Unknown result type (might be due to invalid IL or missing references)1080 //IL_009e: Unknown result type (might be due to invalid IL or missing references)1081 //IL_00a5: Unknown result type (might be due to invalid IL or missing references)1082 //IL_0051: Unknown result type (might be due to invalid IL or missing references)1083 //IL_0060: Unknown result type (might be due to invalid IL or missing references)1084 //IL_0065: Unknown result type (might be due to invalid IL or missing references)1085 //IL_0069: Unknown result type (might be due to invalid IL or missing references)1086 //IL_006e: Unknown result type (might be due to invalid IL or missing references)1087 //IL_0038: Unknown result type (might be due to invalid IL or missing references)1088 //IL_0082: Unknown result type (might be due to invalid IL or missing references)1089 //IL_0083: Unknown result type (might be due to invalid IL or missing references)1090 int num = _003C_003E1__state;1091 string result;1092 try1093 {1094 ConfiguredValueTaskAwaiter<string> val;1095 if (num != 0)1096 {1097 _003C_003Ec__DisplayClass3_0 CS_0024_003C_003E8__locals2 = new _003C_003Ec__DisplayClass3_01098 {1099 entity = entity,1100 session = session1101 };1102 if (CS_0024_003C_003E8__locals2.entity == null)1103 {1104 throw new ArgumentNullException("entity");1105 }1106 val = SimpleReplacer.ReplaceAsync(pattern, [AsyncStateMachine(typeof(_003C_003Ec__DisplayClass3_0._003C_003CBuildDisplayAsync_003Eb__0_003Ed))] (string name, CancellationToken ct) =>1107 {1108 //IL_0002: Unknown result type (might be due to invalid IL or missing references)1109 //IL_0007: Unknown result type (might be due to invalid IL or missing references)1110 //IL_001e: Unknown result type (might be due to invalid IL or missing references)1111 //IL_001f: Unknown result type (might be due to invalid IL or missing references)1112 _003C_003Ec__DisplayClass3_0._003C_003CBuildDisplayAsync_003Eb__0_003Ed _003C_003CBuildDisplayAsync_003Eb__0_003Ed = default(_003C_003Ec__DisplayClass3_0._003C_003CBuildDisplayAsync_003Eb__0_003Ed);1113 _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003Et__builder = AsyncValueTaskMethodBuilder<TryResult<string>>.Create();1114 _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003E4__this = CS_0024_003C_003E8__locals2;1115 _003C_003CBuildDisplayAsync_003Eb__0_003Ed.name = name;1116 _003C_003CBuildDisplayAsync_003Eb__0_003Ed.ct = ct;1117 _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003E1__state = -1;1118 _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003Et__builder.Start<_003C_003Ec__DisplayClass3_0._003C_003CBuildDisplayAsync_003Eb__0_003Ed>(ref _003C_003CBuildDisplayAsync_003Eb__0_003Ed);1119 return _003C_003CBuildDisplayAsync_003Eb__0_003Ed._003C_003Et__builder.Task;1120 }, cancellationToken).ConfigureAwait(false).GetAwaiter();1121 if (!val.IsCompleted)1122 {1123 num = (_003C_003E1__state = 0);1124 _003C_003Eu__1 = val;1125 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<string>, _003CBuildDisplayAsync_003Ed__3>(ref val, ref this);1126 return;1127 }1128 }1129 else1130 {1131 val = _003C_003Eu__1;1132 _003C_003Eu__1 = default(ConfiguredValueTaskAwaiter<string>);1133 num = (_003C_003E1__state = -1);1134 }1135 result = _CleanDisplay(val.GetResult());1136 }1137 catch (System.Exception exception)1138 {1139 _003C_003E1__state = -2;1140 _003C_003Et__builder.SetException(exception);1141 return;1142 }1143 _003C_003E1__state = -2;1144 _003C_003Et__builder.SetResult(result);1145 }11461147 [DebuggerHidden]1148 private void SetStateMachine(IAsyncStateMachine stateMachine)1149 {1150 _003C_003Et__builder.SetStateMachine(stateMachine);1151 }1152 }11531154 [StructLayout((LayoutKind)3)]1155 [CompilerGenerated]1156 private struct _003CCollectEventsAsync_003Ed__86 : IAsyncStateMachine1157 {1158 public int _003C_003E1__state;11591160 public AsyncTaskMethodBuilder<Diff> _003C_003Et__builder;11611162 public IEntity entity;11631164 public CancellationToken ct;11651166 public Func<CancellationToken, System.Threading.Tasks.Task> action;11671168 private EventToDiffObserver _003Cobserver_003E5__2;11691170 private DiffData _003CdataBefore_003E5__3;11711172 private Diff _003Cdiff_003E5__4;11731174 private ConfiguredValueTaskAwaiter<DiffData> _003C_003Eu__1;11751176 private System.IDisposable _003C_003E7__wrap4;11771178 private ConfiguredTaskAwaiter _003C_003Eu__2;11791180 private void MoveNext()1181 {1182 //IL_008b: Unknown result type (might be due to invalid IL or missing references)1183 //IL_0090: Unknown result type (might be due to invalid IL or missing references)1184 //IL_0098: Unknown result type (might be due to invalid IL or missing references)1185 //IL_01cb: Unknown result type (might be due to invalid IL or missing references)1186 //IL_01d0: Unknown result type (might be due to invalid IL or missing references)1187 //IL_01d8: Unknown result type (might be due to invalid IL or missing references)1188 //IL_003e: Unknown result type (might be due to invalid IL or missing references)1189 //IL_004d: Unknown result type (might be due to invalid IL or missing references)1190 //IL_0052: Unknown result type (might be due to invalid IL or missing references)1191 //IL_0056: Unknown result type (might be due to invalid IL or missing references)1192 //IL_005b: Unknown result type (might be due to invalid IL or missing references)1193 //IL_0026: Unknown result type (might be due to invalid IL or missing references)1194 //IL_0122: Unknown result type (might be due to invalid IL or missing references)1195 //IL_0127: Unknown result type (might be due to invalid IL or missing references)1196 //IL_012f: Unknown result type (might be due to invalid IL or missing references)1197 //IL_00d9: Unknown result type (might be due to invalid IL or missing references)1198 //IL_00e4: Unknown result type (might be due to invalid IL or missing references)1199 //IL_00e9: Unknown result type (might be due to invalid IL or missing references)1200 //IL_00ed: Unknown result type (might be due to invalid IL or missing references)1201 //IL_00f2: Unknown result type (might be due to invalid IL or missing references)1202 //IL_0070: Unknown result type (might be due to invalid IL or missing references)1203 //IL_0072: Unknown result type (might be due to invalid IL or missing references)1204 //IL_0107: Unknown result type (might be due to invalid IL or missing references)1205 //IL_0109: Unknown result type (might be due to invalid IL or missing references)1206 //IL_017e: Unknown result type (might be due to invalid IL or missing references)1207 //IL_018d: Unknown result type (might be due to invalid IL or missing references)1208 //IL_0192: Unknown result type (might be due to invalid IL or missing references)1209 //IL_0196: Unknown result type (might be due to invalid IL or missing references)1210 //IL_019b: Unknown result type (might be due to invalid IL or missing references)1211 //IL_01b0: Unknown result type (might be due to invalid IL or missing references)1212 //IL_01b2: Unknown result type (might be due to invalid IL or missing references)1213 int num = _003C_003E1__state;1214 Diff result3;1215 try1216 {1217 ConfiguredValueTaskAwaiter<DiffData> val;1218 DiffData result;1219 switch (num)1220 {1221 default:1222 if (entity == null)1223 {1224 throw new ArgumentNullException("entity");1225 }1226 _003Cobserver_003E5__2 = new EventToDiffObserver();1227 val = entity.GetDiffDataAsync(ct).ConfigureAwait(false).GetAwaiter();1228 if (!val.IsCompleted)1229 {1230 num = (_003C_003E1__state = 0);1231 _003C_003Eu__1 = val;1232 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<DiffData>, _003CCollectEventsAsync_003Ed__86>(ref val, ref this);1233 return;1234 }1235 goto IL_00a7;1236 case 0:1237 val = _003C_003Eu__1;1238 _003C_003Eu__1 = default(ConfiguredValueTaskAwaiter<DiffData>);1239 num = (_003C_003E1__state = -1);1240 goto IL_00a7;1241 case 1:1242 try1243 {1244 ConfiguredTaskAwaiter val3;1245 if (num != 1)1246 {1247 ConfiguredTaskAwaitable val2 = action.Invoke(ct).ConfigureAwait(false);1248 val3 = ((ConfiguredTaskAwaitable)(ref val2)).GetAwaiter();1249 if (!((ConfiguredTaskAwaiter)(ref val3)).IsCompleted)1250 {1251 num = (_003C_003E1__state = 1);1252 _003C_003Eu__2 = val3;1253 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003CCollectEventsAsync_003Ed__86>(ref val3, ref this);1254 return;1255 }1256 }1257 else1258 {1259 val3 = _003C_003Eu__2;1260 _003C_003Eu__2 = default(ConfiguredTaskAwaiter);1261 num = (_003C_003E1__state = -1);1262 }1263 ((ConfiguredTaskAwaiter)(ref val3)).GetResult();1264 }1265 finally1266 {1267 if (num < 0 && _003C_003E7__wrap4 != null)1268 {1269 _003C_003E7__wrap4.Dispose();1270 }1271 }1272 _003C_003E7__wrap4 = null;1273 _003Cdiff_003E5__4 = _003Cobserver_003E5__2.GetDiff();1274 val = entity.GetDiffDataAsync(ct).ConfigureAwait(false).GetAwaiter();1275 if (!val.IsCompleted)1276 {1277 num = (_003C_003E1__state = 2);1278 _003C_003Eu__1 = val;1279 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<DiffData>, _003CCollectEventsAsync_003Ed__86>(ref val, ref this);1280 return;1281 }1282 break;1283 case 2:1284 {1285 val = _003C_003Eu__1;1286 _003C_003Eu__1 = default(ConfiguredValueTaskAwaiter<DiffData>);1287 num = (_003C_003E1__state = -1);1288 break;1289 }1290 IL_00a7:1291 result = val.GetResult();1292 _003CdataBefore_003E5__3 = result;1293 _003C_003E7__wrap4 = entity.Subscribe(_003Cobserver_003E5__2);1294 goto case 1;1295 }1296 DiffData result2 = val.GetResult();1297 if (!_003CdataBefore_003E5__3.MethodCalls.SequenceEqualSafe(result2.MethodCalls))1298 {1299 MethodCallData[] methodCalls = Enumerable.ToArray<MethodCallData>(Enumerable.Skip<MethodCallData>((System.Collections.Generic.IEnumerable<MethodCallData>)result2.MethodCalls, Enumerable.Count<MethodCallData>(_003CdataBefore_003E5__3.MethodCalls.AvoidNull())));1300 _003Cdiff_003E5__4 = new Diff(new DiffData1301 {1302 State = _003Cdiff_003E5__4.Data.State,1303 MethodCalls = methodCalls1304 }, _003Cdiff_003E5__4);1305 }1306 result3 = _003Cdiff_003E5__4;1307 }1308 catch (System.Exception exception)1309 {1310 _003C_003E1__state = -2;1311 _003Cobserver_003E5__2 = null;1312 _003CdataBefore_003E5__3 = null;1313 _003Cdiff_003E5__4 = null;1314 _003C_003Et__builder.SetException(exception);1315 return;1316 }1317 _003C_003E1__state = -2;1318 _003Cobserver_003E5__2 = null;1319 _003CdataBefore_003E5__3 = null;1320 _003Cdiff_003E5__4 = null;1321 _003C_003Et__builder.SetResult(result3);1322 }13231324 [DebuggerHidden]1325 private void SetStateMachine(IAsyncStateMachine stateMachine)1326 {1327 _003C_003Et__builder.SetStateMachine(stateMachine);1328 }1329 }13301331 [StructLayout((LayoutKind)3)]1332 [CompilerGenerated]1333 private struct _003CCreateAsync_003Ed__6 : IAsyncStateMachine1334 {1335 public int _003C_003E1__state;13361337 public AsyncTaskMethodBuilder<IEntity> _003C_003Et__builder;13381339 public IEntity baseEntity;13401341 public ISession session;13421343 public EntityLoadType loadType;13441345 public CancellationToken cancellationToken;13461347 private ConfiguredTaskAwaiter<IEntity> _003C_003Eu__1;13481349 private void MoveNext()1350 {1351 //IL_010c: Unknown result type (might be due to invalid IL or missing references)1352 //IL_0111: Unknown result type (might be due to invalid IL or missing references)1353 //IL_0118: Unknown result type (might be due to invalid IL or missing references)1354 //IL_001a: Unknown result type (might be due to invalid IL or missing references)1355 //IL_002d: Unknown result type (might be due to invalid IL or missing references)1356 //IL_00c9: Unknown result type (might be due to invalid IL or missing references)1357 //IL_00d4: Unknown result type (might be due to invalid IL or missing references)1358 //IL_00d9: Unknown result type (might be due to invalid IL or missing references)1359 //IL_00dc: Unknown result type (might be due to invalid IL or missing references)1360 //IL_00e1: Unknown result type (might be due to invalid IL or missing references)1361 //IL_00f5: Unknown result type (might be due to invalid IL or missing references)1362 //IL_00f6: Unknown result type (might be due to invalid IL or missing references)1363 int num = _003C_003E1__state;1364 IEntity result;1365 try1366 {1367 ConfiguredTaskAwaiter<IEntity> val;1368 if (num == 0)1369 {1370 val = _003C_003Eu__1;1371 _003C_003Eu__1 = default(ConfiguredTaskAwaiter<IEntity>);1372 num = (_003C_003E1__state = -1);1373 goto IL_0127;1374 }1375 if (baseEntity == null)1376 {1377 throw new ArgumentNullException("baseEntity");1378 }1379 if (session == null)1380 {1381 throw new ArgumentNullException("session");1382 }1383 if (baseEntity.State.HasFlagFast(EntityState.Saved) || !baseEntity.IsLoaded || baseEntity.IsPartial || baseEntity.IsReadOnly)1384 {1385 goto IL_00b1;1386 }1387 if (loadType == EntityLoadType.DelayedLogic && !baseEntity.IsInteractive)1388 {1389 result = baseEntity;1390 }1391 else1392 {1393 if (loadType != EntityLoadType.Interactive || !baseEntity.IsInteractive)1394 {1395 goto IL_00b1;1396 }1397 result = baseEntity;1398 }1399 goto end_IL_0007;1400 IL_00b1:1401 val = session.Source().GetAsync(baseEntity, loadType, cancellationToken).ConfigureAwait(false)1402 .GetAwaiter();1403 if (!val.IsCompleted)1404 {1405 num = (_003C_003E1__state = 0);1406 _003C_003Eu__1 = val;1407 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntity>, _003CCreateAsync_003Ed__6>(ref val, ref this);1408 return;1409 }1410 goto IL_0127;1411 IL_0127:1412 result = val.GetResult();1413 end_IL_0007:;1414 }1415 catch (System.Exception exception)1416 {1417 _003C_003E1__state = -2;1418 _003C_003Et__builder.SetException(exception);1419 return;1420 }1421 _003C_003E1__state = -2;1422 _003C_003Et__builder.SetResult(result);1423 }14241425 [DebuggerHidden]1426 private void SetStateMachine(IAsyncStateMachine stateMachine)1427 {1428 _003C_003Et__builder.SetStateMachine(stateMachine);1429 }1430 }14311432 [StructLayout((LayoutKind)3)]1433 [CompilerGenerated]1434 private struct _003CExecuteTemplateAsync_003Ed__68 : IAsyncStateMachine1435 {1436 public int _003C_003E1__state;14371438 public AsyncTaskMethodBuilder _003C_003Et__builder;14391440 public ISession session;14411442 public string columnname;14431444 public IEntity entity;14451446 public CancellationToken cancellationToken;14471448 private ConfiguredValueTaskAwaiter _003C_003Eu__1;14491450 private void MoveNext()1451 {1452 //IL_009a: Unknown result type (might be due to invalid IL or missing references)1453 //IL_009f: Unknown result type (might be due to invalid IL or missing references)1454 //IL_00a6: Unknown result type (might be due to invalid IL or missing references)1455 //IL_00ce: Unknown result type (might be due to invalid IL or missing references)1456 //IL_00dc: Unknown result type (might be due to invalid IL or missing references)1457 //IL_00e1: Unknown result type (might be due to invalid IL or missing references)1458 //IL_00e4: Unknown result type (might be due to invalid IL or missing references)1459 //IL_00e9: Unknown result type (might be due to invalid IL or missing references)1460 //IL_0114: Unknown result type (might be due to invalid IL or missing references)1461 //IL_0119: Unknown result type (might be due to invalid IL or missing references)1462 //IL_0120: Unknown result type (might be due to invalid IL or missing references)1463 //IL_00fd: Unknown result type (might be due to invalid IL or missing references)1464 //IL_00fe: Unknown result type (might be due to invalid IL or missing references)1465 //IL_0021: Unknown result type (might be due to invalid IL or missing references)1466 //IL_0051: Unknown result type (might be due to invalid IL or missing references)1467 //IL_005f: Unknown result type (might be due to invalid IL or missing references)1468 //IL_0064: Unknown result type (might be due to invalid IL or missing references)1469 //IL_0067: Unknown result type (might be due to invalid IL or missing references)1470 //IL_006c: Unknown result type (might be due to invalid IL or missing references)1471 //IL_0039: Unknown result type (might be due to invalid IL or missing references)1472 //IL_0080: Unknown result type (might be due to invalid IL or missing references)1473 //IL_0081: Unknown result type (might be due to invalid IL or missing references)1474 int num = _003C_003E1__state;1475 try1476 {1477 ConfiguredValueTaskAwaiter val;1478 ConfiguredValueTaskAwaitable val2;1479 if (num != 0)1480 {1481 if (num == 1)1482 {1483 val = _003C_003Eu__1;1484 _003C_003Eu__1 = default(ConfiguredValueTaskAwaiter);1485 num = (_003C_003E1__state = -1);1486 goto IL_012f;1487 }1488 if (session == null)1489 {1490 throw new ArgumentNullException("session");1491 }1492 if (string.IsNullOrEmpty(columnname))1493 {1494 throw new ArgumentNullException("columnname");1495 }1496 val2 = entity.CallMethodAsync("ExecuteTemplate", columnname, cancellationToken).ConfigureAwait(false);1497 val = ((ConfiguredValueTaskAwaitable)(ref val2)).GetAwaiter();1498 if (!((ConfiguredValueTaskAwaiter)(ref val)).IsCompleted)1499 {1500 num = (_003C_003E1__state = 0);1501 _003C_003Eu__1 = val;1502 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter, _003CExecuteTemplateAsync_003Ed__68>(ref val, ref this);1503 return;1504 }1505 }1506 else1507 {1508 val = _003C_003Eu__1;1509 _003C_003Eu__1 = default(ConfiguredValueTaskAwaiter);1510 num = (_003C_003E1__state = -1);1511 }1512 ((ConfiguredValueTaskAwaiter)(ref val)).GetResult();1513 val2 = entity.CallMethodAsync("ExecuteValueLogic", columnname, cancellationToken).ConfigureAwait(false);1514 val = ((ConfiguredValueTaskAwaitable)(ref val2)).GetAwaiter();1515 if (!((ConfiguredValueTaskAwaiter)(ref val)).IsCompleted)1516 {1517 num = (_003C_003E1__state = 1);1518 _003C_003Eu__1 = val;1519 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter, _003CExecuteTemplateAsync_003Ed__68>(ref val, ref this);1520 return;1521 }1522 goto IL_012f;1523 IL_012f:1524 ((ConfiguredValueTaskAwaiter)(ref val)).GetResult();1525 }1526 catch (System.Exception exception)1527 {1528 _003C_003E1__state = -2;1529 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);1530 return;1531 }1532 _003C_003E1__state = -2;1533 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();1534 }15351536 [DebuggerHidden]1537 private void SetStateMachine(IAsyncStateMachine stateMachine)1538 {1539 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);1540 }1541 }15421543 [StructLayout((LayoutKind)3)]1544 [CompilerGenerated]1545 private struct _003CExecuteTemplatesAsync_003Ed__67 : IAsyncStateMachine1546 {1547 public int _003C_003E1__state;15481549 public AsyncTaskMethodBuilder _003C_003Et__builder;15501551 public ISession session;15521553 public IEntity entity;15541555 public CancellationToken cancellationToken;15561557 private ConfiguredValueTaskAwaiter _003C_003Eu__1;15581559 private void MoveNext()1560 {1561 //IL_0079: Unknown result type (might be due to invalid IL or missing references)1562 //IL_007e: Unknown result type (might be due to invalid IL or missing references)1563 //IL_0085: Unknown result type (might be due to invalid IL or missing references)1564 //IL_00a7: Unknown result type (might be due to invalid IL or missing references)1565 //IL_00b5: Unknown result type (might be due to invalid IL or missing references)1566 //IL_00ba: Unknown result type (might be due to invalid IL or missing references)1567 //IL_00bd: Unknown result type (might be due to invalid IL or missing references)1568 //IL_00c2: Unknown result type (might be due to invalid IL or missing references)1569 //IL_00ed: Unknown result type (might be due to invalid IL or missing references)1570 //IL_00f2: Unknown result type (might be due to invalid IL or missing references)1571 //IL_00f9: Unknown result type (might be due to invalid IL or missing references)1572 //IL_00d6: Unknown result type (might be due to invalid IL or missing references)1573 //IL_00d7: Unknown result type (might be due to invalid IL or missing references)1574 //IL_0030: Unknown result type (might be due to invalid IL or missing references)1575 //IL_003e: Unknown result type (might be due to invalid IL or missing references)1576 //IL_0043: Unknown result type (might be due to invalid IL or missing references)1577 //IL_0046: Unknown result type (might be due to invalid IL or missing references)1578 //IL_004b: Unknown result type (might be due to invalid IL or missing references)1579 //IL_001e: Unknown result type (might be due to invalid IL or missing references)1580 //IL_005f: Unknown result type (might be due to invalid IL or missing references)1581 //IL_0060: Unknown result type (might be due to invalid IL or missing references)1582 int num = _003C_003E1__state;1583 try1584 {1585 ConfiguredValueTaskAwaiter val;1586 ConfiguredValueTaskAwaitable val2;1587 if (num != 0)1588 {1589 if (num == 1)1590 {1591 val = _003C_003Eu__1;1592 _003C_003Eu__1 = default(ConfiguredValueTaskAwaiter);1593 num = (_003C_003E1__state = -1);1594 goto IL_0108;1595 }1596 if (session == null)1597 {1598 throw new ArgumentNullException("session");1599 }1600 val2 = entity.CallMethodAsync("ExecuteTemplates", cancellationToken).ConfigureAwait(false);1601 val = ((ConfiguredValueTaskAwaitable)(ref val2)).GetAwaiter();1602 if (!((ConfiguredValueTaskAwaiter)(ref val)).IsCompleted)1603 {1604 num = (_003C_003E1__state = 0);1605 _003C_003Eu__1 = val;1606 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter, _003CExecuteTemplatesAsync_003Ed__67>(ref val, ref this);1607 return;1608 }1609 }1610 else1611 {1612 val = _003C_003Eu__1;1613 _003C_003Eu__1 = default(ConfiguredValueTaskAwaiter);1614 num = (_003C_003E1__state = -1);1615 }1616 ((ConfiguredValueTaskAwaiter)(ref val)).GetResult();1617 val2 = entity.CallMethodAsync("ExecuteValuesLogic", cancellationToken).ConfigureAwait(false);1618 val = ((ConfiguredValueTaskAwaitable)(ref val2)).GetAwaiter();1619 if (!((ConfiguredValueTaskAwaiter)(ref val)).IsCompleted)1620 {1621 num = (_003C_003E1__state = 1);1622 _003C_003Eu__1 = val;1623 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter, _003CExecuteTemplatesAsync_003Ed__67>(ref val, ref this);1624 return;1625 }1626 goto IL_0108;1627 IL_0108:1628 ((ConfiguredValueTaskAwaiter)(ref val)).GetResult();1629 }1630 catch (System.Exception exception)1631 {1632 _003C_003E1__state = -2;1633 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);1634 return;1635 }1636 _003C_003E1__state = -2;1637 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();1638 }16391640 [DebuggerHidden]1641 private void SetStateMachine(IAsyncStateMachine stateMachine)1642 {1643 ((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);1644 }1645 }16461647 [StructLayout((LayoutKind)3)]1648 [CompilerGenerated]1649 private struct _003CGetDiffAsync_003Ed__20 : IAsyncStateMachine1650 {1651 public int _003C_003E1__state;16521653 public AsyncTaskMethodBuilder<Diff> _003C_003Et__builder;16541655 public IMetaData metaData;16561657 public IEntity entity;16581659 public CancellationToken cancellationToken;16601661 public string[] mandatoryColumns;16621663 public DiffMode mode;16641665 private DiffBuilder _003Cdiff_003E5__2;16661667 private IMetaTable _003Ctbl_003E5__3;16681669 private HashSet<string> _003CmandatoryHash_003E5__4;16701671 private ConfiguredTaskAwaiter<IMetaTable> _003C_003Eu__1;16721673 private System.Collections.Generic.IEnumerator<IEntityColumn> _003C_003E7__wrap4;16741675 private IEntityColumn _003Cc_003E5__6;16761677 private IMetaColumn _003Ccolumn_003E5__7;16781679 private bool _003CtakeColumn_003E5__8;16801681 private object _003Cvalue_003E5__9;16821683 private ConfiguredValueTaskAwaiter<TryResult<object>> _003C_003Eu__2;16841685 private DiffBuilder _003C_003E7__wrap9;16861687 private ConfiguredValueTaskAwaiter<DiffData> _003C_003Eu__3;16881689 private void MoveNext()1690 {1691 //IL_0081: Unknown result type (might be due to invalid IL or missing references)1692 //IL_0086: Unknown result type (might be due to invalid IL or missing references)1693 //IL_008d: Unknown result type (might be due to invalid IL or missing references)1694 //IL_0484: Unknown result type (might be due to invalid IL or missing references)1695 //IL_0489: Unknown result type (might be due to invalid IL or missing references)1696 //IL_0491: Unknown result type (might be due to invalid IL or missing references)1697 //IL_003a: Unknown result type (might be due to invalid IL or missing references)1698 //IL_0045: Unknown result type (might be due to invalid IL or missing references)1699 //IL_004a: Unknown result type (might be due to invalid IL or missing references)1700 //IL_004e: Unknown result type (might be due to invalid IL or missing references)1701 //IL_0053: Unknown result type (might be due to invalid IL or missing references)1702 //IL_0067: Unknown result type (might be due to invalid IL or missing references)1703 //IL_0068: Unknown result type (might be due to invalid IL or missing references)1704 //IL_0263: Unknown result type (might be due to invalid IL or missing references)1705 //IL_0268: Unknown result type (might be due to invalid IL or missing references)1706 //IL_0270: Unknown result type (might be due to invalid IL or missing references)1707 //IL_033e: Unknown result type (might be due to invalid IL or missing references)1708 //IL_0343: Unknown result type (might be due to invalid IL or missing references)1709 //IL_034b: Unknown result type (might be due to invalid IL or missing references)1710 //IL_02f1: Unknown result type (might be due to invalid IL or missing references)1711 //IL_0300: Unknown result type (might be due to invalid IL or missing references)1712 //IL_0305: Unknown result type (might be due to invalid IL or missing references)1713 //IL_0309: Unknown result type (might be due to invalid IL or missing references)1714 //IL_030e: Unknown result type (might be due to invalid IL or missing references)1715 //IL_0437: Unknown result type (might be due to invalid IL or missing references)1716 //IL_0446: Unknown result type (might be due to invalid IL or missing references)1717 //IL_044b: Unknown result type (might be due to invalid IL or missing references)1718 //IL_044f: Unknown result type (might be due to invalid IL or missing references)1719 //IL_0454: Unknown result type (might be due to invalid IL or missing references)1720 //IL_0323: Unknown result type (might be due to invalid IL or missing references)1721 //IL_0325: Unknown result type (might be due to invalid IL or missing references)1722 //IL_0469: Unknown result type (might be due to invalid IL or missing references)1723 //IL_046b: Unknown result type (might be due to invalid IL or missing references)1724 //IL_0216: Unknown result type (might be due to invalid IL or missing references)1725 //IL_0225: Unknown result type (might be due to invalid IL or missing references)1726 //IL_022a: Unknown result type (might be due to invalid IL or missing references)1727 //IL_022e: Unknown result type (might be due to invalid IL or missing references)1728 //IL_0233: Unknown result type (might be due to invalid IL or missing references)1729 //IL_0248: Unknown result type (might be due to invalid IL or missing references)1730 //IL_024a: Unknown result type (might be due to invalid IL or missing references)1731 int num = _003C_003E1__state;1732 Diff result5;1733 try1734 {1735 ConfiguredTaskAwaiter<IMetaTable> val2;1736 ConfiguredValueTaskAwaiter<DiffData> val;1737 DiffData result;1738 IMetaTable result2;1739 switch (num)1740 {1741 default:1742 _003Cdiff_003E5__2 = new DiffBuilder();1743 val2 = metaData.GetTableAsync(entity.Tablename, cancellationToken).ConfigureAwait(false).GetAwaiter();1744 if (!val2.IsCompleted)1745 {1746 num = (_003C_003E1__state = 0);1747 _003C_003Eu__1 = val2;1748 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IMetaTable>, _003CGetDiffAsync_003Ed__20>(ref val2, ref this);1749 return;1750 }1751 goto IL_009c;1752 case 0:1753 val2 = _003C_003Eu__1;1754 _003C_003Eu__1 = default(ConfiguredTaskAwaiter<IMetaTable>);1755 num = (_003C_003E1__state = -1);1756 goto IL_009c;1757 case 1:1758 case 2:1759 try1760 {1761 ConfiguredValueTaskAwaiter<TryResult<object>> val3;1762 if (num != 1)1763 {1764 if (num != 2)1765 {1766 goto IL_03e1;1767 }1768 val3 = _003C_003Eu__2;1769 _003C_003Eu__2 = default(ConfiguredValueTaskAwaiter<TryResult<object>>);1770 num = (_003C_003E1__state = -1);1771 goto IL_035a;1772 }1773 val3 = _003C_003Eu__2;1774 _003C_003Eu__2 = default(ConfiguredValueTaskAwaiter<TryResult<object>>);1775 num = (_003C_003E1__state = -1);1776 goto IL_027f;1777 IL_0378:1778 object oldValue;1779 _003Cdiff_003E5__2.Append(new DiffOperation1780 {1781 Name = _003Cc_003E5__6.Columnname,1782 Type = ((!_003Cc_003E5__6.HasValueFromTrySet) ? DiffOperationType.Value : DiffOperationType.OptionalValue),1783 Value = _003Cvalue_003E5__9,1784 OldValue = oldValue,1785 AlreadyApplied = true1786 });1787 _003Ccolumn_003E5__7 = null;1788 _003Cvalue_003E5__9 = null;1789 _003Cc_003E5__6 = null;1790 goto IL_03e1;1791 IL_027f:1792 TryResult<object> result3 = val3.GetResult();1793 if (result3.Success)1794 {1795 _003Cvalue_003E5__9 = result3.Result;1796 if (_003CtakeColumn_003E5__8 || (mode.HasFlagFast(DiffMode.NonEmpty) && !DbVal.IsEmpty(_003Cvalue_003E5__9, _003Ccolumn_003E5__7.Type)))1797 {1798 oldValue = null;1799 if (mode.HasFlagFast(DiffMode.OldValues))1800 {1801 val3 = _003Cc_003E5__6.TryGetOldValueAsync(cancellationToken).ConfigureAwait(false).GetAwaiter();1802 if (!val3.IsCompleted)1803 {1804 num = (_003C_003E1__state = 2);1805 _003C_003Eu__2 = val3;1806 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<TryResult<object>>, _003CGetDiffAsync_003Ed__20>(ref val3, ref this);1807 return;1808 }1809 goto IL_035a;1810 }1811 goto IL_0378;1812 }1813 }1814 goto IL_03e1;1815 IL_035a:1816 TryResult<object> result4 = val3.GetResult();1817 oldValue = (result4.Success ? result4.Result : null);1818 goto IL_0378;1819 IL_03e1:1820 while (((System.Collections.IEnumerator)_003C_003E7__wrap4).MoveNext())1821 {1822 _003Cc_003E5__6 = _003C_003E7__wrap4.Current;1823 if (!_003Ctbl_003E5__3.Columns.TryGetValue(_003Cc_003E5__6.Columnname, out _003Ccolumn_003E5__7))1824 {1825 continue;1826 }1827 _003CtakeColumn_003E5__8 = mode.HasFlagFast(DiffMode.AllColumns) || (mode.HasFlagFast(DiffMode.Changed) && _003Cc_003E5__6.IsDifferent) || (mode.HasFlagFast(DiffMode.ValueSet) && _003Cc_003E5__6.IsChanged) || (_003CmandatoryHash_003E5__4 != null && _003CmandatoryHash_003E5__4.Contains(_003Cc_003E5__6.Columnname)) || (mode.HasFlagFast(DiffMode.TopLevel) && (_003Cc_003E5__6.ChangeLevels.Get(0) || (!entity.IsLoaded && _003Ccolumn_003E5__7.IsPK)) && !_003Ccolumn_003E5__7.IsSpecial);1828 if (!_003CtakeColumn_003E5__8 && !mode.HasFlagFast(DiffMode.NonEmpty))1829 {1830 continue;1831 }1832 val3 = _003Cc_003E5__6.TryGetValueAsync(cancellationToken).ConfigureAwait(false).GetAwaiter();1833 if (!val3.IsCompleted)1834 {1835 num = (_003C_003E1__state = 1);1836 _003C_003Eu__2 = val3;1837 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<TryResult<object>>, _003CGetDiffAsync_003Ed__20>(ref val3, ref this);1838 return;1839 }1840 goto IL_027f;1841 }1842 }1843 finally1844 {1845 if (num < 0 && _003C_003E7__wrap4 != null)1846 {1847 ((System.IDisposable)_003C_003E7__wrap4).Dispose();1848 }1849 }1850 _003C_003E7__wrap4 = null;1851 if (!mode.HasFlagFast(DiffMode.EntityDiffData))1852 {1853 break;1854 }1855 _003C_003E7__wrap9 = _003Cdiff_003E5__2;1856 val = entity.GetDiffDataAsync(cancellationToken).ConfigureAwait(false).GetAwaiter();1857 if (!val.IsCompleted)1858 {1859 num = (_003C_003E1__state = 3);1860 _003C_003Eu__3 = val;1861 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<DiffData>, _003CGetDiffAsync_003Ed__20>(ref val, ref this);1862 return;1863 }1864 goto IL_04a0;1865 case 3:1866 {1867 val = _003C_003Eu__3;1868 _003C_003Eu__3 = default(ConfiguredValueTaskAwaiter<DiffData>);1869 num = (_003C_003E1__state = -1);1870 goto IL_04a0;1871 }1872 IL_04a0:1873 result = val.GetResult();1874 _003C_003E7__wrap9.Data = result;1875 _003C_003E7__wrap9 = null;1876 break;1877 IL_009c:1878 result2 = val2.GetResult();1879 _003Ctbl_003E5__3 = result2;1880 _003CmandatoryHash_003E5__4 = ((mandatoryColumns != null && mandatoryColumns.Length != 0) ? Enumerable.ToHashSet<string>((System.Collections.Generic.IEnumerable<string>)mandatoryColumns, (IEqualityComparer<string>)(object)StringComparer.OrdinalIgnoreCase) : null);1881 _003C_003E7__wrap4 = ((System.Collections.Generic.IEnumerable<IEntityColumn>)entity.Columns).GetEnumerator();1882 goto case 1;1883 }1884 result5 = _003Cdiff_003E5__2.ToDiff();1885 }1886 catch (System.Exception exception)1887 {1888 _003C_003E1__state = -2;1889 _003Cdiff_003E5__2 = null;1890 _003Ctbl_003E5__3 = null;1891 _003CmandatoryHash_003E5__4 = null;1892 _003C_003Et__builder.SetException(exception);1893 return;1894 }1895 _003C_003E1__state = -2;1896 _003Cdiff_003E5__2 = null;1897 _003Ctbl_003E5__3 = null;1898 _003CmandatoryHash_003E5__4 = null;1899 _003C_003Et__builder.SetResult(result5);1900 }19011902 [DebuggerHidden]1903 private void SetStateMachine(IAsyncStateMachine stateMachine)1904 {1905 _003C_003Et__builder.SetStateMachine(stateMachine);1906 }1907 }19081909 [StructLayout((LayoutKind)3)]1910 [CompilerGenerated]1911 private struct _003CGetDisplayNameAsync_003Ed__2 : IAsyncStateMachine1912 {1913 public int _003C_003E1__state;19141915 public AsyncTaskMethodBuilder<ICultureDependentString> _003C_003Et__builder;19161917 public IEntity entity;19181919 public ISession session;19201921 public CancellationToken cancellationToken;19221923 public string columnname;19241925 private ConfiguredTaskAwaiter<IMetaTable> _003C_003Eu__1;19261927 private void MoveNext()1928 {1929 //IL_0077: Unknown result type (might be due to invalid IL or missing references)1930 //IL_007c: Unknown result type (might be due to invalid IL or missing references)1931 //IL_0083: Unknown result type (might be due to invalid IL or missing references)1932 //IL_0034: Unknown result type (might be due to invalid IL or missing references)1933 //IL_003f: Unknown result type (might be due to invalid IL or missing references)1934 //IL_0044: Unknown result type (might be due to invalid IL or missing references)1935 //IL_0047: Unknown result type (might be due to invalid IL or missing references)1936 //IL_004c: Unknown result type (might be due to invalid IL or missing references)1937 //IL_0017: Unknown result type (might be due to invalid IL or missing references)1938 //IL_0060: Unknown result type (might be due to invalid IL or missing references)1939 //IL_0061: Unknown result type (might be due to invalid IL or missing references)1940 int num = _003C_003E1__state;1941 ICultureDependentString display;1942 try1943 {1944 ConfiguredTaskAwaiter<IMetaTable> val;1945 if (num != 0)1946 {1947 if (entity == null)1948 {1949 throw new ArgumentNullException("entity");1950 }1951 val = session.Resolve<IMetaData>().GetTableAsync(entity.Tablename, cancellationToken).ConfigureAwait(false)1952 .GetAwaiter();1953 if (!val.IsCompleted)1954 {1955 num = (_003C_003E1__state = 0);1956 _003C_003Eu__1 = val;1957 _003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IMetaTable>, _003CGetDisplayNameAsync_003Ed__2>(ref val, ref this);1958 return;1959 }1960 }1961 else1962 {1963 val = _003C_003Eu__1;1964 _003C_003Eu__1 = default(ConfiguredTaskAwaiter<IMetaTable>);1965 num = (_003C_003E1__state = -1);1966 }1967 display = val.GetResult().Columns[columnname].Display;1968 }1969 catch (System.Exception exception)1970 {1971 _003C_003E1__state = -2;1972 _003C_003Et__builder.SetException(exception);1973 return;1974 }1975 _003C_003E1__state = -2;1976 _003C_003Et__builder.SetResult(display);1977 }19781979 [DebuggerHidden]1980 private void SetStateMachine(IAsyncStateMachine stateMachine)1981 {1982 _003C_003Et__builder.SetStateMachine(stateMachine);1983 }1984 }19851986 [StructLayout((LayoutKind)3)]1987 [CompilerGenerated]1988 private struct _003CGetDisplayValueAsync_003Ed__79 : IAsyncStateMachine1989 {1990 public int _003C_003E1__state;19911992 public AsyncValueTaskMethodBuilder<string> _003C_003Et__builder;19931994 public IMetaColumn column;19951996 public ISession session;19971998 public object value;19992000 public IEntityRawData rawData;20012002 public bool isDifferent;20032004 public CancellationToken ct;20052006 private _003C_003Ec__DisplayClass79_0 _003C_003E8__1;20072008 private ConfiguredTaskAwaiter<string> _003C_003Eu__1;20092010 private ConfiguredValueTaskAwaiter<string> _003C_003Eu__2;20112012 private MultiValueProperty _003Cvalues_003E5__2;20132014 private IMultiLanguageProvider _003Cml_003E5__3;20152016 private int _003Ci_003E5__4;20172018 private MultiValueProperty _003C_003E7__wrap4;20192020 private int _003C_003E7__wrap5;20212022 private void MoveNext()2023 {2024 //IL_0342: Unknown result type (might be due to invalid IL or missing references)2025 //IL_0347: Unknown result type (might be due to invalid IL or missing references)2026 //IL_034f: Unknown result type (might be due to invalid IL or missing references)2027 //IL_0409: Unknown result type (might be due to invalid IL or missing references)2028 //IL_040e: Unknown result type (might be due to invalid IL or missing references)2029 //IL_0416: Unknown result type (might be due to invalid IL or missing references)2030 //IL_049e: Unknown result type (might be due to invalid IL or missing references)2031 //IL_04a3: Unknown result type (might be due to invalid IL or missing references)2032 //IL_04ab: Unknown result type (might be due to invalid IL or missing references)2033 //IL_05df: Unknown result type (might be due to invalid IL or missing references)2034 //IL_05e4: Unknown result type (might be due to invalid IL or missing references)2035 //IL_05ec: Unknown result type (might be due to invalid IL or missing references)2036 //IL_06ed: Unknown result type (might be due to invalid IL or missing references)2037 //IL_06f2: Unknown result type (might be due to invalid IL or missing references)2038 //IL_06fa: Unknown result type (might be due to invalid IL or missing references)2039 //IL_004f: Unknown result type (might be due to invalid IL or missing references)2040 //IL_0596: Unknown result type (might be due to invalid IL or missing references)2041 //IL_05a1: Unknown result type (might be due to invalid IL or missing references)2042 //IL_05a6: Unknown result type (might be due to invalid IL or missing references)2043 //IL_05aa: Unknown result type (might be due to invalid IL or missing references)2044 //IL_05af: Unknown result type (might be due to invalid IL or missing references)2045 //IL_05c4: Unknown result type (might be due to invalid IL or missing references)2046 //IL_05c6: Unknown result type (might be due to invalid IL or missing references)2047 //IL_06a7: Unknown result type (might be due to invalid IL or missing references)2048 //IL_06b2: Unknown result type (might be due to invalid IL or missing references)2049 //IL_06b7: Unknown result type (might be due to invalid IL or missing references)2050 //IL_06bb: Unknown result type (might be due to invalid IL or missing references)2051 //IL_06c0: Unknown result type (might be due to invalid IL or missing references)2052 //IL_06d5: Unknown result type (might be due to invalid IL or missing references)2053 //IL_06d7: Unknown result type (might be due to invalid IL or missing references)2054 //IL_02f9: Unknown result type (might be due to invalid IL or missing references)2055 //IL_0304: Unknown result type (might be due to invalid IL or missing references)2056 //IL_0309: Unknown result type (might be due to invalid IL or missing references)2057 //IL_030d: Unknown result type (might be due to invalid IL or missing references)2058 //IL_0312: Unknown result type (might be due to invalid IL or missing references)2059 //IL_0327: Unknown result type (might be due to invalid IL or missing references)2060 //IL_0329: Unknown result type (might be due to invalid IL or missing references)2061 //IL_0455: Unknown result type (might be due to invalid IL or missing references)2062 //IL_0460: Unknown result type (might be due to invalid IL or missing references)2063 //IL_0465: Unknown result type (might be due to invalid IL or missing references)2064 //IL_0469: Unknown result type (might be due to invalid IL or missing references)2065 //IL_046e: Unknown result type (might be due to invalid IL or missing references)2066 //IL_03bc: Unknown result type (might be due to invalid IL or missing references)2067 //IL_03cb: Unknown result type (might be due to invalid IL or missing references)2068 //IL_03d0: Unknown result type (might be due to invalid IL or missing references)2069 //IL_03d4: Unknown result type (might be due to invalid IL or missing references)2070 //IL_03d9: Unknown result type (might be due to invalid IL or missing references)2071 //IL_0483: Unknown result type (might be due to invalid IL or missing references)2072 //IL_0485: Unknown result type (might be due to invalid IL or missing references)2073 //IL_03ee: Unknown result type (might be due to invalid IL or missing references)2074 //IL_03f0: Unknown result type (might be due to invalid IL or missing references)2075 int num = _003C_003E1__state;2076 string result;2077 try2078 {2079 string text;2080 ConfiguredValueTaskAwaiter<string> val2;2081 ConfiguredTaskAwaiter<string> val;2082 string result2;2083 switch (num)2084 {2085 default:2086 _003C_003E8__1 = new _003C_003Ec__DisplayClass79_0();2087 _003C_003E8__1.column = column;2088 if (_003C_003E8__1.column == null)2089 {2090 throw new ArgumentNullException("column");2091 }2092 if (_003C_003E8__1.column.Type == ValType.Date)2093 {2094 result = ((session?.TimeZone != null) ? new DisplayConverter(null, session.TimeZone) : DisplayConverter.Default).ToDisplayString(value, ValType.Date, _003C_003E8__1.column.DateFormat);2095 }2096 else2097 {2098 if (!_003C_003E8__1.column.HasBitMaskCaptions)2099 {2100 text = null;2101 if (_003C_003E8__1.column.CountDigits > 0)2102 {2103 bool flag = false;2104 decimal num2 = default(decimal);2105 switch (_003C_003E8__1.column.Type)2106 {2107 case ValType.Int:2108 case ValType.Long:2109 case ValType.Byte:2110 case ValType.Short:2111 {2112 num2 = DbVal.ConvertTo<decimal>(value);2113 for (int i = 0; i < _003C_003E8__1.column.CountDigits; i++)2114 {2115 num2 *= 0.1m;2116 }2117 break;2118 }2119 case ValType.Double:2120 case ValType.Decimal:
…