Entity framework Silverlight客户端中实体的助手属性,共享代码
我试图找出如何为给定的实体类型创建在Silverlight客户端中公开的其他“计算”属性。我的解决方案结构如下(简化): 名称空间“数据访问”,类库,保存我的EDMX 命名空间“Web”Web应用程序,承载silverlight应用程序以及通过EDMX投影的域服务(因此它有一个对“数据访问”项目的引用) 名称空间“SLApp”,Silverlight应用程序 我的一个实体是Person(非常简单): 我希望有一个名为FullName的“helper”/“computed”属性,它将名字和姓氏简单地放在一起。在过去,这很容易;创建我自己的公共部分类Person类并添加属性/逻辑,然后我可以将其作为普通属性使用。但是RIA域服务似乎没有公开该属性,所以我不能在客户端上使用它。如果EDMX在Web应用程序中,我可以使用.Shared.cs文件并将其包含在SL应用程序中(我猜),但我不希望我的EDMX出现在Web应用程序中(感觉很脏:) 我使用的是MVVM模式,因此我可以在ViewModel类上创建属性,但似乎我必须多次复制该逻辑(任何需要全名属性的ViewModel)。我尝试在SL应用程序中为Person对象创建一个名为FullName的扩展方法,但显然无法绑定到扩展方法 我是Silverlight的新手,这是我的第一个“真实”应用程序,所以我可能只是错过了一些非常简单的东西。。。我希望我是。任何帮助都会很好Entity framework Silverlight客户端中实体的助手属性,共享代码,entity-framework,mvvm,ria,domainservices,Entity Framework,Mvvm,Ria,Domainservices,我试图找出如何为给定的实体类型创建在Silverlight客户端中公开的其他“计算”属性。我的解决方案结构如下(简化): 名称空间“数据访问”,类库,保存我的EDMX 命名空间“Web”Web应用程序,承载silverlight应用程序以及通过EDMX投影的域服务(因此它有一个对“数据访问”项目的引用) 名称空间“SLApp”,Silverlight应用程序 我的一个实体是Person(非常简单): 我希望有一个名为FullName的“helper”/“computed”属性,它将名字和姓氏简单
谢谢大家! 您是否已将
[DataMember]
属性添加到您的计算属性中
[DataMember]
public string FullName
{
get { return string.Format("{0} (1)", this.FirstName, this.LastName); }
}
[DataMember]
public string FullName
{
get { return string.Format("{0} (1)", this.FirstName, this.LastName); }
}