我要这么一个码,用emit实现最好,我可以实现任意的接口,比如比如你实现一个类
class InterfaceImplementBuilder<T>
{
public InterfaceImplementBuilder(object methods)
{ }
public T Build()
{ }
}我可以这么用:IMyTest
{
void foo(string x);
int bar();
};IMyTest obj = new InterfaceImplementBuilder<IMyTest>
(new {
foo = new Action<string>(...),
bar = new Func<int>(...)
}).Build();
...
class InterfaceImplementBuilder<T>
{
public InterfaceImplementBuilder(object methods)
{ }
public T Build()
{ }
}我可以这么用:IMyTest
{
void foo(string x);
int bar();
};IMyTest obj = new InterfaceImplementBuilder<IMyTest>
(new {
foo = new Action<string>(...),
bar = new Func<int>(...)
}).Build();
...
解决方案 »
- 读取资源文件中所有key和value
- SendKeys.SendWait的严重问题
- 我利用.net给xslt传参对吗?达人帮我看下,在线等!
- 奇怪的现象。。。代码简单,请教下。
- C# WinForm 如何实现上一页下一页的效果
- C# 如何 监控SqlServer2000数据表的变化
- (高手们请进)请问水晶报表(主从表)设置时怎样定从表的显示行数啊,即我想定从表显示10就自定分页。
- 相关操作在void指针上未定义。
- WebService传输XML文件,无法用DataSet读取
- 谁能给我讲讲什么是COM和COM+
- RichTextBox 如何得到当前鼠标所在的们置 谢谢
- 有关socket连接的问题,在winform中连接套接字时容易出现“远端主机强迫关闭了一个现有连接”,请问高手该如何解决,谢谢
用c#这种非动态语言搞这种不伦不类的需求和设计这就属于理论高于实践了。
C#可以动态编译,也可以反射调用,也就是说,事实上你可以用C#创造出一个新的运行时语言。但是,这有意义吗?换一个动态语言可以做的比你优雅100倍,简单100倍。
public class IMyTest
{
public action<string> foo;
public func<int> bar;
};