【发布时间】:2010-06-10 16:49:39
【问题描述】:
在我的 ASP.Net MVC 应用程序中,我有一个模型层,它在业务对象上使用本地化验证注释。
代码如下:
[XmlRoot("Item")]
public class ItemBo : BusinessObjectBase
{
[Required(ErrorMessageResourceName = "RequiredField", ErrorMessageResourceType = typeof(StringResource))]
[HelpPrompt("ItemNumber")]
public long ItemNumber { get; set; }
这很好用。
当我想将对象序列化为 xml 时出现错误:
“找不到指定的'ErrorMessageResourceType'属性”(虽然它在其他错误下丢失,但这是我正在尝试处理的内部异常。
因此,问题在于 DataAnnotations 属性的使用。相关资源文件在另一个程序集中,并被标记为“公共”,正如我所说,在我进行序列化之前一切正常。
我在我的 nunit 测试和目标类中引用了相关的 DataAnnotations 类等。
顺便说一下,HelpPrompt 是我在别处定义的另一个数据注释,不会导致问题。
此外,如果我将Required 属性更改为标准格式,如下所示,序列化工作正常。
[Required(ErrorMessage="Error")]
谁能帮帮我?
【问题讨论】:
标签: asp.net-mvc xml serialization annotations data-annotations