2

我有这些属性 (A,B) :

[DataType(DataType.MultilineText)]
[Required(ErrorMessage = "A is required"), DisplayName("A")]
[StringLength(Constants.MaximunStringSize)]
public string A { get; set; }

[DataType(DataType.MultilineText)]
[Required(ErrorMessage = "B is required"), DisplayName("B")]
[StringLength(Constants.MaximunStringSize)]
public string B { get; set; }

我可以通过其构造函数创建一个“继承”所有属性(DataType、Required、StringLength、DisplayName)和集合的类?举例:

[MyAttribute("A","A is required")]
public string A { get; set; }

[MyAttribute("B","B is required")]
public string B { get; set; }
4

2 回答 2

3

一般来说,没有。

但是,对于验证属性,您可以创建自己的验证属性,其中包含现有属性中的所有逻辑。

要模拟[DataType],您需要实现IMetadataAware.

于 2012-07-27T18:35:26.027 回答
2

C# 中没有多重继承,所以不,你不能这样做。

但是,您可以编写自己的 Attribute 来包含这些属性的所有功能。

于 2012-07-27T18:35:39.713 回答