繁体   English   中英

使用属性拦截属性分配

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM