async Task Test1() { IMyFundamentalType instance = new MyFundamentalType(); // UltimateDIFactory.Create<IMyFundamentalType>(); var instanceAsyncInit = instance as IAsyncInitialization; if (instanceAsyncInit != null) { await instanceAsyncInit.Initialization; } }
static void Main(string[] args) { UseMyInterfaceAsync(new MyAsyncClass()).Wait(); var factory = MyAsyncClassFactory.createAsync().Result; Console.WriteLine(factory); var funType = new MyFundamentalType(); funType.Initialisation.Wait(); Console.WriteLine(funType); var data = new AsyncProperty().Data.GetValue(); Console.WriteLine(data); }
static async Task Main(string[] args) { // FactoryPattern var cls1 = await MyClass.CreateAsync(); Debug.WriteLine("MyClass is Created. (Initialized)"); // IAsyncInterface var cls2 = new MyFundamentalType(); Debug.WriteLine("MyFundamentalType is Created. (Uninitialized)"); await cls2.Initialization; Debug.WriteLine("MyFundamentalType is initialized."); }