我正在用wpf编写一个小的可视化工具,这个想法是,普通用户可以创建有趣的可视化而不需要编程向导。动态关键字,C#编译服务 - 如何运行编译时尚未提供的代码?
我有了像StartPath方法的控制器类(双X,双y)和的LineTo(X,Y)CurveTo(...)等
的想法是,用户可以键入这些命令放入一个文本框中并让它在画布上绘制结果。
StartPath(0,0);
LineTo(30,50);
LineTo(50,40);
EndPath();
我有一个想法是使用具有实现的所有方法的.cs模板,与更换令牌内的额外运行()命令。我将模板作为字符串加载,将用户命令插入Run()方法,使用新的.NET 4.0编译服务即时创建程序集,然后加载它并调用其Run()方法并访问公开的Path在画布上绘制它。
另外一个将实际上只是解析文本,错误检查,并调用相应的方法。
是否还有其他的方法,尤其是与新的动态关键字?
我会看看它,非常感谢。 感谢您澄清,我没有达到最新的c#规范。 – kitsune 2009-09-03 18:26:45
很好地工作:http://dl.getdropbox.com/u/133877/test.jpg 再次感谢:) – kitsune 2009-09-07 08:39:58