我正在使用vs 2010和EF 4.1与sql Server数据库。
下面提到的代码在本地sql Server DB上工作正常(sql 2008)。
下面提到的代码在本地sql Server DB上工作正常(sql 2008)。
但是当我发布了Windows AZURE云和sql Azure的MVC应用程序时,它给出了下面提到的错误。
>为什么这个错误只返回sql Azure(使用桌面sql Server 2008)?
>如何摆脱这个?
我的存储库代码示例如下所示。下面提到的错误在调用时出现
Catalog.SaveChanges()方法。
using (var catalog = new DataCatalog()) { var retailSaleReturn = new RetailSaleReturn { ReturnQuantity = returnQuantity,Product = saleDetailObj.Product,Owner = owner,Provider = provider,}; //add to context Catalog.RetailSaleReturns.Add(retailSaleReturn); //save for db Catalog.SaveChanges(); }
dbupdateException如下所示:
{"An error occurred while saving entities that do not expose foreign key properties for their relationships. The EntityEntries property will return null because a single entity cannot be identified as the source of the exception. Handling of exceptions while saving can be made easier by exposing foreign key properties in your entity types. See the InnerException for details."}
InnerException如下所示:
{"Tables without a clustered index are not supported in this version of sql Server. Please create a clustered index and try again."}
StackTrace如下所示
at System.Data.Entity.Internal.InternalContext.SaveChanges() at PawLoyalty.Data.Repositories.CustomersRepository.ReturnRetailOnlySales(Guid saleDetailId,Int32 returnQuantity,String providerKey,String ownerKey) in D:\PawLoyalty Module\PawLoyalty\PawLoyalty\PawLoyalty.Data\Repositories\CustomersRepository.cs:line 550 at PawLoyalty.Web.Areas.Providers.Controllers.CustomersController.ReturnRetailOnlySales(String providerKey,String ownerKey,String petKey,Guid saleDetailId,Int32 returnQuantity) in D:\PawLoyalty Module\PawLoyalty\PawLoyalty\PawLoyalty.Web\Areas\Providers\Controllers\CustomersController.cs:line 942 at lambda_method(Closure,ControllerBase,Object[] ) at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext,IDictionary`2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext,ActionDescriptor actionDescriptor,IDictionary`2 parameters) at System.Web.Mvc.ControllerActionInvoker.<>c__displayClassd.<InvokeActionMethodWithFilters>b__a() at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter,ActionExecutingContext preContext,Func`1 continuation)
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。