asp.net-mvc-3 – 此版本的SQL Server不支持没有聚集索引的表
发布时间:2020-12-15 18:38:43 所属栏目:asp.Net 来源:网络整理
导读:我正在使用vs 2010和EF 4.1与SQL Server数据库。 下面提到的代码在本地SQL Server DB上工作正常(SQL 2008)。 但是当我发布了Windows AZURE云和SQL Azure的MVC应用程序时,它给出了下面提到的错误。 为什么这个错误只返回SQL Azure(使用桌面SQL Server 2008)
我正在使用vs 2010和EF 4.1与SQL Server数据库。
下面提到的代码在本地SQL Server DB上工作正常(SQL 2008)。 但是当我发布了Windows AZURE云和SQL Azure的MVC应用程序时,它给出了下面提到的错误。 >为什么这个错误只返回SQL Azure(使用桌面SQL Server 2008)? 我的存储库代码示例如下所示。下面提到的错误在调用时出现 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 ModulePawLoyaltyPawLoyaltyPawLoyalty.DataRepositoriesCustomersRepository.cs:line 550 at PawLoyalty.Web.Areas.Providers.Controllers.CustomersController.ReturnRetailOnlySales(String providerKey,String ownerKey,String petKey,Guid saleDetailId,Int32 returnQuantity) in D:PawLoyalty ModulePawLoyaltyPawLoyaltyPawLoyalty.WebAreasProvidersControllersCustomersController.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) 解决方法
您需要在要添加行的SQL Azure中的所有表上创建一个聚簇索引;否则insert语句总是失败。
CREATE UNIQUE CLUSTERED INDEX Idx_TableName ON TableName(yourGUIDColumn); 以下是对这些指标的一般准则和限制的引用:MSDN Link 这是另一篇文章,解释了这个原因:link (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – MVC3:如何强制Html.TextBoxFor使用模型值而不是
- .net – MVC3与EF 4.1和EntityState.Modified更新
- 有趣的项目理念为体面的开发想要了解更多Asp.Net
- asp.net-mvc-3 – 实体框架乐观并发异常未发生
- 如何在ASP.NET中最好地填充HTML表?
- asp.net – IIS 7如何使用数据库中的用户帐户映射客户端证书
- asp.net – 避免重复大型应用程序
- asp.net-mvc-3 – 如何在ASP .NET MVC 3中验证与另一个值相
- asp.net-mvc – 在bootstrap模式中使用时,MVC中的文件上载返
- 如何在asp.net上模拟同时的web请求?
推荐文章
站长推荐
- asp.net – 如何在Repeater中为LinkBut??ton做As
- asp.net-mvc – 从n层ASP.Net MVC应用程序的服务
- wwwtl999999com17708846600Chinese exchangeto l
- ASP.NET命名空间
- asp.net – 如何在WebGrid中的列标题使用Display
- asp.net – 如何避免UpdatePanel在AutoPostBack上
- EventBus/EventQueue 再思考
- SimpleModal打破ASP.Net回传
- asp.net-core – 如何在IServiceCollection.Conf
- ASP到ASP.NET会话变量
热点阅读