【发布时间】:2011-08-26 08:25:21
【问题描述】:
背景信息
在使用 Windows Azure 和 WCF RIA 服务进行开发时,我看到了很多随机错误和令人沮丧的情况,但这个确实是巅峰。
我有一个具有以下架构的应用程序:2 个 Web 角色(MVC3 和带有 Silverlight RIA 的 ASP.NET)=> 业务层 => 数据层(外部服务/表存储/SQL Azure)。 ASP.NET 服务(配置文件/角色/会话)存储在表存储中。
由于最近的需求变化,需要添加一个移动网站。我想为两个 GUI 项目共享(服务器端)ViewModel。举例说明:
我的问题
当我的项目托管在 Windows Azure 环境中时,我现在遇到了可怕的“未找到”异常。使用提琴手,我发现它返回了以下异常:
DomainService 'XXService' 中的实体 'XXModel' 没有 定义了一个键。 DomainService 操作公开的实体类型 必须至少有一个标有 KeyAttribute 的公共属性。
奇怪的是,这个东西在本地 Azure 开发环境中可以完美运行,但是上传到云端时就不行了。我认为这个错误与 ViewModel 现在位于与 RIA 服务不同的程序集中有关,但为什么它会在本地而不是远程工作?
如果有人需要任何补充信息,我很乐意回答您的问题。
【问题讨论】:
-
您还在正确地对所有部分进行 bin 部署吗? RIA、Azure SDK 和您的程序集都需要它。
-
是的,所有的程序集都在部署中,以前在同一个项目上工作过。
-
您是否在开发环境的干净目录中重新构建了项目?我想知道您是否有一些来自先前构建的工件掩盖了问题。这不会解决您的问题,但可以解释开发与部署之间的差异。
-
@Paul Keister 我试过这个,但无济于事:(
-
很抱歉在此浪费您的时间。我在想,由于 RIA 服务依赖于“投影”代码,因此代码生成输出可能在本地不同步。显然这不是问题。
标签: .net c#-4.0 azure wcf-ria-services