所以我有这个样板代码,我想要应用于某些类的一堆属性,每个类都基本相同。我不知道是否必须一次又一次地为所有这些属性输入相同的代码,我想知道是否有任何方法可以通过为属性分配C#属性,在编译后或运行时动态构建这些属性方法。包括每个方法(字符串)的细微差别,然后通过反射找到这些属性。
我知道PostSharp,但我正在寻找免费或开源的东西。
例如,不必这样做:
public string Name {
get { return _member.GetValue( "othername" ); }
set { _member.SetValue( "othername", value ); }
}
...对于我拥有的每个房产,我只想这样说:
[MapTo( "othername" )]
public string Name { get; set; }
有什么想法吗?
答案 0 :(得分:1)
答案 1 :(得分:1)
您可以使用Unity interception extension执行类似操作。
答案 2 :(得分:1)
好的,所以它可能有自己的答案。我知道以下AOP框架,您无需支付:
答案 3 :(得分:0)
您好像正在寻找AOP (Aspect Oriented Programming)
之类的{{1}}。
它允许您以编程方式注入代码(就像您提到的那样)并且非常灵活。
答案 4 :(得分:0)
查看CInject on Codeplex这是代码注入的开源替代方案