我正在使用 Silverlight 3 和 ADO.NET 数据服务,其中包含自定义构建的模型(单独的项目)和 DAL(单独的项目))。在我的 Silverlight 项目中,我创建了一个 [Service Reference] 来引用我的 .svc 文件,该文件又指向我的模型。
这是我的问题:我想使用 DataAnnotations (System.ComponentModel.DataAnnotations) 的丰富功能,但我究竟将这些属性放在哪里?如果我使用这些注释通过模型进行装饰,我看不到它们在我的 [服务参考] 生成的代理代码中呈现。我只看到我的类及其成员,但没有 DataAnnotations (Reference.cs)。
我知道如果我手动更改 (Reference.cs) 文件并添加一些 DataAnnotations,这些更改会渗透到我的 Silverlight 客户端。我不认为我应该更新生成的代码,即带有 (Reference.cs) 的代理代码。所以,我的问题是,在我的分离项目(Web、SL、模型、DAL)的 Visual Studio 结构中,我应该抛出/扩展这个自定义数据源(模型)以利用 DataAnnotations 吗?
我想要这样的东西:
[Required]
public string FirstName
{
get
{
return this._FirstName;
}
set
{
this.OnFirstNameChanging(value);
this._FirstName = value;
this.OnFirstNameChanged();
}
}