专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Flash教程 » silverlightsql:Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上) »正文

silverlightsql:Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上)

来源: 发布时间:星期五, 2009年1月23日 浏览:21次 评论:0
  目录  导言

  软件Software需求

  数据库实现

  Data Access层实现

  Web Service层实现

  Silverlight客户端实现

  结语

  导言  Silverlight 2支持JSON、Web Service、WCF以及Sockets等新特性对数据CRUD操作这个系列用例子结合数据库图文描述来学习下Silverlight 2 beta 1中进行数据库CRUD操作方面实战能力

Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上)

  这里多说几句:微软发布是Silverlight 2 beta1 并不是Silverlight 2.0也不是Silverlight 2.0Beta 1但是现在很多Blog、新闻把Silverlight 2 beta1 理解成了Silverlight 2.0或者Silverlight 2.0 Beta 1在这里特地介绍说明真正是Silverlight 2 beta1 并不是Silverlight 2.0也不是Silverlight 2.0Beta 1!希望初学者不要误解这个“概念”了

  软件Software需求  Silverlight 2 (beta1)

  Visual Studio 2008

  SQL 2005 Express with Management Studio

  数据库实现  这我们设计个科技成果表包含以下字段:成果编号名称类型完成时间成果截图负责人成果授予单位为了演示数据类型我没有具体定义了如下所示:

Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上)

  Data Access层实现  目前在数据访问层有很多技术可以使用像NHibernate、NetTiers 、LINQ to SQL、Entity Framework、Astoria (ADO.NET Data Services) VS2008为我们提供了OR设计器(LINQ to SQL技术)可视化编辑环境来映射数据表首先在Visual Studio 2008创建Silverlight工程然后添加LINQ to SQL下面步讲解下:

  第步:新建个Silverlight工程我命名为:YJingLee.Academe并选择ASP.NET Web Site用来托管Silverlight应用

Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上)

  第 2步:在Web项目中添加LINQ to SQL

Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上)

  这VS会提示你新建个App_Code目录把Academe.dbml文件放到这个文件夹下面

Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上)

  第 3步:映射表我们把数据库表拖到OR设计器中

Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上)

  第 3步:定义数据契约这是只需要在OR设计器修改Serialization属性为Unidirectional

Silverlight 2 (beta1)数据操作(5)——使用LINQ to SQL进行数据CRUD操作(上)

  另外为了实现更新操作思路方法我们在这里修改每个字段属性为UpdateCheck=UpdateCheck.Never这时在cs文件中设计器自动生成了些代码为了介绍说明问题在这里我贴出相关不完整代码

[Table(Name="dbo.Product")]
[DataContract]
public partial Product :
INotyPropertyChanging, INotyPropertyChanged
{  
  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 ProductID{ }
  
  [Column(Storage="_ProductName", DbType="VarChar(100)",
  UpdateCheck=UpdateCheck.Never)]
  [DataMember(Order=2)]
  public ProductName{ }
  
  [Column(Storage="_ProductType", DbType="VarChar(100)",
   UpdateCheck=UpdateCheck.Never)]
  [DataMember(Order=3)]
  public ProductType{ }
  
  [Column(Storage="_CompleteTime", DbType="VarChar(100)",
   UpdateCheck=UpdateCheck.Never)]
  [DataMember(Order=4)]
  public CompleteTime{ }
  
  [Column(Storage="_ProductImage", DbType="VarChar(300)",
  UpdateCheck=UpdateCheck.Never)]
  [DataMember(Order=5)]
  public ProductImage{ }
  
  [Column(Storage="_Principal", DbType="VarChar(100)",
  UpdateCheck=UpdateCheck.Never)]
  [DataMember(Order=6)]
  public Principal{ }
  
  [Column(Storage="_AwardUnit", DbType="VarChar(100)",
  UpdateCheck=UpdateCheck.Never)]
  [DataMember(Order=7)]
  public AwardUnit{ }
  private void Initialize
  {
    OnCreated;
  }
  
  [OnDeserializing]
  [.ComponentModel.
  EditorBrowsableAttribute(EditorBrowsableState.Never)]
  public void _disibledevent="IMetadataExchange"/>
    </service>
  </services>
</system.serviceModel>
  第 5步:设置Web应用端口号把器端口号设置为固定端口52600在浏览器中查看服务是否正常

  到此编译下Web项目我们已经完成了所有事情了步就是在Silverlight中这个服务了



0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: