使用VS 2008 & .NET 3.5 SP1:WCF,实体框架和数据合同
我使用WCF允许客户端连接到读取和写入使用实体框架的数据库条目的服务。默认情况下,从数据库自动生成的实体应用了DataContract属性。
不幸的是,许多字段暴露并不意味着客户端的消耗(即 - 谁正在访问什么数据的记录等),并且出于安全原因,我宁愿避免它们暴露。有没有办法避免以这种方式暴露实体框架类?
注:这不是How to prevent private properties in .NET entities from being exposed as public via services?重复。在这个问题中,用户希望有选择地显示某些字段,而我希望该实体根本不作为DataContract公开。
在此先感谢。
这可能类似于另一个没有完全回答的帖子:'wcf和ADO实体框架',http://stackoverflow.com/questions/828302/wcf-and-ado-entity-framework – Malcolm 2009-07-13 20:37:00
我同意回答您提供的“wcf和ADO实体框架”链接。或者你可以实现某种存储库模式。 – NikolaiDante 2009-07-13 20:46:31
@Nath - 我绝对同意在“wcf和ADO实体框架”的答案,但不幸的是它不能解决我的问题。答案中的第一点是“自动生成实体框架实体”,它将公开我希望作为DataContracts保密的数据。如果存储库模式由以这种方式生成的EF模型支持,则存在相同的问题 - 除非我错过了某些内容? – Malcolm 2009-07-13 20:53:07