Dưới đây là một cái gì đó mà làm việc bằng cách sử dụng ưa thích dynamic
từ khóa. Bạn sẽ cần phải tham khảo lớp khác để kiểm tra để vượt qua, hoặc sử dụng một sự kiện xây dựng để sao chép qua DLL được xây dựng.
namespace TestLibrary
{
[TestFixture]
public class Tests
{
[Test]
public void FileCheck()
{
dynamic otherClass =
AppDomain.CurrentDomain.CreateInstanceFromAndUnwrap("OtherLibrary.dll",
"Prefix.OtherLibrary.SomeClass");
otherClass.SayHello(); // look, ma! no casting or interfaces!
}
}
}
namespace Prefix.OtherLibrary
{
public class SomeClass
{
public void SayHello()
{
Console.WriteLine("Hello, world.");
}
}
}
Không giống như Activator
, AppDomain.CurrentDomain.CreateInstanceFromAndUnwrap
mất một filename như là đối số đầu tiên chứ không phải là xác định kiểu. Điều này đôi khi hữu ích, đặc biệt là khi bạn không quan tâm đến tên mạnh của hội đồng.
Nguồn
2011-11-21 20:15:02
Đây là phương pháp tôi đã làm việc một số tôi đang đánh dấu này. Cảm ơn. – David