2013-02-28 74 views
-8

我需要为一些c#文件添加一些类/属性级别的属性,所以不是手动添加它们,而是以编程方式执行它。修改现有的c#文件

我的问题基本上在这里是如何编辑一个C#文件在语法上,我的意思是加载C#文件作为codedom或AST并编辑它并重写到磁盘。

任何API都可用于此类工作!

+0

我不知道为什么标记'Metaprogramming'存在,但你为什么决定它与你的问题?! – gdoron 2013-02-28 17:40:09

+0

[你有什么尝试?](http://mattgemmell.com/2008/12/08/what-have-you-tried/) – Nuffin 2013-02-28 17:40:25

+10

我们倾向于downvote谁没有显示他们已经付出任何努力尝试自己解决问题。例如stackoverflow不应该是问题解决方案的第一站。 – 2013-02-28 17:40:33

回答

3

看那CodeDom。你可以加载现有的类,修改它们的对象图,并生成C#文件(甚至是JIT编译和使用)。

-1

如果它们都具有相同的属性...

让所有的属性的类;比方说,你把它FarmingObjectBase 与物业:

FarmName{get;set;} 
TractorCount{get;set;} 

让所有的类扩展FarmingObjectBase,使他们得到他们的属性,他们都会有这些2个属性,

+0

复制过去可能是你最好的选择,如果你没有几百个课程和属性,并且想要一个快速有效的解决方案....(只是不要太快以避免错误) – Abyte0 2013-02-28 18:01:09