【问题标题】:Can 'attributes' change its value after setting value to a property?将值设置为属性后,“属性”可以更改其值吗?
【发布时间】:2011-01-18 17:54:43
【问题描述】:

考虑这段代码:

Public Class SomeViewModel
    <Custom>
    Public Property myData As String
End Class

我希望Custom 属性能够在 myData 设置为某些数据后对其进行更改。
IE。修剪 myD​​ata 或从中省略额外的字符,或者......现在没关系。

我知道我可以使用setget 语句,但是那些让我的代码看起来不太好,而且我想在同一类或其他地方重复这个CustomAttribute 很多次。

更新
好的,如果没有别的办法,我可以使用一些customAttribute 并且在我的“插入 SQL 逻辑”调用一个函数之前说:对于所有具有此customAttribute 的属性,请执行this thing?我该如何实现?

【问题讨论】:

    标签: .net model-view-controller attributes


    【解决方案1】:

    您应该使用 setter 和 getter,这就是它们的用途。

    属性标记代码的一部分,以便可以在此代码上使用反射 - 这是一种相当重的方法,只是因为您不喜欢属性设置器和获取器的外观。

    【讨论】:

    • 我在那个类中有 10 个相同的属性,我想对它们做同样的事情,这让我的代码变得如此混乱,不是吗?
    • @GtEx - 编写一个执行相同操作的方法并将value 传递给它。老实说,没有看到你想做的这个“相同”,很难给出任何建议。
    • do the same 我的意思是像trim 这样一次一件事。我不介意它在设置后没有完全改变,我只想要在我插入 SQL 逻辑之前。
    • @GtEx - 再说一次,设计的属性是什么。您可能想查看DataAnnotations 命名空间,它可能包含您要查找的内容。
    • 我想将数字从persian 转换为english 这就是我想要的并且我知道该怎么做,所以这不是问题的一部分:)。我有很多此类字段的注册表单,(电话,手机,传真,邮编,...),所以有更好的选择吗?谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-28
    • 2019-10-28
    • 1970-01-01
    • 2020-07-26
    相关资源
    最近更新 更多