Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上)
2008-10-11 11:42:26 来源:WEB开发网[Table(Name="dbo.Product")]
[DataContract()]
public partial class Product :
INotifyPropertyChanging, INotifyPropertyChanged
{
public Product()
{
this.Initialize();
}
[Column(Storage="_ProductID", AutoSync=AutoSync.OnInsert,
DbType="Int NOT NULL IDENTITY",IsPrimaryKey=true,
IsDbGenerated=true,UpdateCheck=UpdateCheck.Never)]
[DataMember(Order=1)]
public int ProductID{ }
[Column(Storage="_ProductName", DbType="VarChar(100)",
UpdateCheck=UpdateCheck.Never)]
[DataMember(Order=2)]
public string ProductName{ }
[Column(Storage="_ProductType", DbType="VarChar(100)",
UpdateCheck=UpdateCheck.Never)]
[DataMember(Order=3)]
public string ProductType{ }
[Column(Storage="_CompleteTime", DbType="VarChar(100)",
UpdateCheck=UpdateCheck.Never)]
[DataMember(Order=4)]
public string CompleteTime{ }
[Column(Storage="_ProductImage", DbType="VarChar(300)",
UpdateCheck=UpdateCheck.Never)]
[DataMember(Order=5)]
public string ProductImage{ }
[Column(Storage="_Principal", DbType="VarChar(100)",
UpdateCheck=UpdateCheck.Never)]
[DataMember(Order=6)]
public string Principal{ }
[Column(Storage="_AwardUnit", DbType="VarChar(100)",
UpdateCheck=UpdateCheck.Never)]
[DataMember(Order=7)]
public string AwardUnit{ }
private void Initialize()
{
OnCreated();
}
[OnDeserializing()]
[System.ComponentModel.
EditorBrowsableAttribute(EditorBrowsableState.Never)]
public void OnDeserializing(StreamingContext context)
{
this.Initialize();
}
}
这里,我们可以看到,VS自动为表(这里映射为类)添加了DataContract属性,为序列化的成员添加了DataMember特性,同时设置了DataMember特性的Order属性为WCF提供序列化的顺序。另外,增加了一个序列化OnDeserializing事件,这个事件在反序列化之前发生,用于初始化类成员。
Tags:Silverlight 数据
编辑录入:爽爽 [复制链接] [打 印]更多精彩
赞助商链接