[英]Intercepting Property Assignment with Attributes
是否可以在属性上放置一个属性来拦截对该属性的赋值调用?
我将如何使用它的一个例子是,当用户指定null
时,将其上具有此属性的字符串属性设置为string.Empty
。
我相信这样的东西有很多其他可能的用途,但目前这正是我正在寻找的东西。
编辑:
例如:
class A
{
[NotNullableString]
public string SomeString { get; set; }
}
NotNullableStringAttribute
将检查set
的输入值,如果为null,则将其替换为string.Empty
。
如果要使用C#属性执行此操作,则需要使用IL编织。
最受欢迎的图书馆是PostSharp: http ://ayende.com/blog/3640/first-steps-with-post-sharp快递版是免费的: http : //www.postsharp.net/aspects
如果您坚持在工作流程中没有构建后的步骤并且您可以使用属性,那么答案是它目前无法实现。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.