static void Main(string[] args) { Console.WriteLine("Hello World!"); Console.WriteLine("Loading dynamic library..."); List <Type> LibraryTypes = new List <Type>(); LibraryTypes.AddRange(Assembly.Load("MyFirstLibrary").GetTypes()); foreach (var type in LibraryTypes) { Console.WriteLine(type.AssemblyQualifiedName); } Console.WriteLine("Done"); Console.WriteLine("Now using MyFirstLibrary class HelloWorld..."); dynamic libraryHelloWorld = Activator.CreateInstance(LibraryTypes.Where(t => t.FullName == "MyFirstLibrary.HelloWorld").First()); libraryHelloWorld.Initialize(); libraryHelloWorld.Message = "This is wonderful :)"; libraryHelloWorld.Run(); libraryHelloWorld.Abort(); libraryHelloWorld.Dispose(); Console.ReadLine(); }
public void CheckStatus(Object stateInfo) { dynamic serviceClient = null; if (stateInfo is Mage_Api_Model_Server_Wsi_HandlerPortTypeClient) { serviceClient = stateInfo as Mage_Api_Model_Server_Wsi_HandlerPortTypeClient; } else if (stateInfo is MagentoSoapServiceReference.Mage_Api_Model_Server_Wsi_HandlerPortTypeClient) { serviceClient = stateInfo as MagentoSoapServiceReference.Mage_Api_Model_Server_Wsi_HandlerPortTypeClient; } Interlocked.Increment(ref this.invokeCount); if (this.invokeCount == this.maxCount) { Interlocked.Exchange(ref this.invokeCount, 0); if (serviceClient != null) { serviceClient.Abort(); } } }
public void Abort() => client?.Abort();