Tôi muốn tạo đối tượng proxy động để thêm chức năng nhất định vào đối tượng.Cách tạo proxy động đơn giản trong C#
về cơ bản tôi muốn nhận một đối tượng, bọc nó với một đối tượng trông giống hệt với bản gốc tôi đã nhận và chặn tất cả các cuộc gọi.
class Wrapper : DynamicProxy// dynamic proxy is not a reall class, but i guess something like this exists...
{
public static T Wrap(T obj)
{
return (T) new Wrapper(obj);
}
public override object InterceptCall(MethodInfo info, object[] args)
{
// do stuff
}
}
Chỉ cần làm rõ, tôi muốn làm một cái gì đó tương tự như các nhà máy kênh WCF ...
tôi thêm một tiền thưởng, bởi vì tôi cần một cách tốt để proxy các lớp (không phải là giao diện) và để xử lý các phương thức không ảo (như thể tôi đã kế thừa và thêm một methond theo từ khóa "mới"). Tôi chắc chắn tất cả điều này là rất có thể như. Net hiện nó.
có bạn nhìn vào http://www.castleproject.org/dynamicproxy/index.html? –
@ np-hard nếu bạn đăng câu trả lời này, tôi sẽ chấp nhận nó ... không phải 100% những gì tôi đang tìm kiếm, nhưng đủ tốt. –
Bạn có biết loại bạn muốn proxy vào thời gian biên dịch hay chỉ khi chạy? – Sneal