注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Lucifer 的博客

网易英超评论专栏

 
 
 

日志

 
 
 
 

LINQ Entity Class Serialization  

2008-01-04 11:21:14|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

话说有了LINQ TO SQL ,大家变得懒一点是应该的,尽管是复杂的继承组合关系并不支持,LINQ TO SQL自动生成的entity class已经可以满足大家的一般需求了。不过有个更懒的人问我,可不可以把linq to sql生成的类直接去给WCF用,不用自己另外写了。。。通过SQLMetal.exe自动生成的LINQ的类中,有各个表的Info类。但没有[DataContract], [DataMember]的标识,就是说,没有[DataContract], [DataMember]的属性的话就无法Serialize,所以对于以交换消息为主要运作方式的SOA架构来说,这个类是不能直接应用的。其实我也不是很支持这种做法,总觉得懒的象什么似的。。。。。但是真要满足这个懒人的要求,该怎么做呢。其实也是挺简单的,让生成出来的class直接打上简单的[DataContract], [DataMember]属性。

 

(1)一种方法就是通过命令行工具sqlmetal.exe

sqlmetal.exe有一个参数serialization

  /serialization:    Generate serializable classes: None or Unidirectional (default: None).

 

这时我的测试命令行。

SqlMetal /serialization:Unidirectional /conn:"server='servername'; database='AdventureWorks';Integrated Security=True" /dbml:c:AdventureWorks.dbml

 

生成的dbml文件加入到VS2008项目中以后,会有这两个属性[DataContract],[DataMember].

 

(2)另一种方法更简单,就是用OR设计器里面选择一个property就可以了

Serialization Mode = Unidirectional15

 

LINQ Entity Class Serialization - Lucifer - Lucifer 的博客LINQ Entity Class Serialization - Lucifer - Lucifer 的博客
  评论这张
 
阅读(263)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018