2010-09-01 99 views
3

我目前正在构建一个包含两部分,即用户前端和管理后端的应用程序。前端是一个ASP.NET MVC应用程序,后端是一个Silverlight应用程序。我通过创建一个名为Administration的Silverlight商业应用程序开始了该项目,并添加了两个项目,Silverlight应用程序(Administration)和托管Web应用程序(Administration.Web)。我想在Silverlight应用程序中使用RIA服务,所以我添加了一个实体数据模型并构建了该服务。分解WCF RIA服务项目

我遇到的问题是我想添加一个ASP.NET MVC项目并引用包含数据模型的项目。我更喜欢数据模型存在于自己的项目中,而不是一个,因此管理员和前端可以引用类库,而不是一个asp.net Web应用程序。

是否可以将.edmx文件移动到另一个项目(类库)并继续使RIA服务正常工作?

+0

我正在寻找一个答案,以及...如果我找到一个,我会尽力回复并回复 – 2012-01-27 17:06:25

+0

我不相信这是可能的。 RIA服务喜欢将该模型作为本地项目。我猜如果你改用POCO,它会起作用,但我不确定这会有什么好处。 – 2012-02-18 00:01:55

回答

0

这可能是可能的。首先将您的实体模型添加到类库项目并添加您的表格。然后创建一个Web应用程序并让它引用你的类库。在你的Web项目中添加一个域服务,然后在向导中选择你的实体模型(确保建立你的类库项目,否则模型可能不会出现)。然后创建一个Silverlight应用程序,并为RIA服务链接选择您的Web应用程序。然后,您可以创建ASP.NET MVC Web应用程序并引用您的类库。说到Silverlight,您将无法直接访问域模型,因此仍需通过域服务完成。

我还没有机器来验证它(它只是从内存中),所以请让我知道这是否有任何错误。 :)

+0

好的....没有意识到这已被问在2010年!无论如何,如果它有效,那么它可能对某人有用。 :) – MotoSV 2012-03-09 19:41:59