我想改變由EF代碼首先創建整個數據庫的整理,我試圖通過運行在創建後一個腳本來做到這一點,但它不工作,如何更改EF代碼/設置整理第一
_dbContext.Database.Delete();
_dbContext.Database.CreateIfNotExists();
_dbContext.Database.ExecuteSqlCommand("ALTER DATABASE afi COLLATE French_CI_AI");
是否可以在創建數據庫之前設置排序規則?
這是例外,我得到:
重置在不同狀態下的連接效果比初始 登錄。登錄失敗。用戶'afi'登錄失敗。當前命令發生嚴重錯誤 。結果,如果有的話,應該丟棄 。
[SqlException(0x80131904):重置連接導致 與初始登錄狀態不同。登錄失敗。
用戶'afi'登錄失敗。目前的 命令發生嚴重錯誤。結果,如果有的話,應被丟棄。]
System.Data.SqlClient.SqlConnection.OnError(SqlException異常, 布爾breakConnection,Action`1 wrapCloseInAction)388
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj,布爾callerHasConnectionLock,布爾asyncClose)688
System.Data.SqlClient.TdsParser.TryRun(runBehavior runBehavior, 的SqlCommand cmdHandler,SqlDataReader的數據流, BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj,布爾& dataReady)4403
系統.Data.SqlClient.TdsParser.Run(RU nBehavior runBehavior, 的SqlCommand cmdHandler,SqlDataReader的數據流, BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj)84
System.Data.SqlClient.TdsParser.TdsExecuteTransactionManagerRequest(字節[] 緩衝器,TransactionManagerRequestType請求,字符串transactionName, TransactionManagerIsolationLevel ISOLEVEL,超時的Int32 , SqlInternalTransaction交易,TdsParserStateObject stateObj, 布爾isDelegateControlRequest)1370
System.Data.SqlClient.SqlInternalConnectionTds.ExecuteTransactionYukon(TransactionRequest transactionRequest,字符串transactionName,異的IsolationLevel, SqlInternalTransaction internalTransaction,布爾 isDelegateControlRequest)674
System.Data.SqlClient.SqlInternalConnection.BeginSqlTransaction(的IsolationLevel 異,字符串transactionName)547
System.Data.SqlClient.SqlInternalConnection.BeginTransaction(的IsolationLevel 異)18
System.Data.SqlClient.SqlConnection.BeginDbTransaction(的IsolationLevel 的IsolationLevel)211
System.Data.EntityClient.EntityConnection.BeginDbTransaction(的IsolationLevel 的IsolationLevel)155[EntityException:在提供商連接上啓動事務時發生錯誤 。有關詳細信息,請參閱內部例外。]
System.Data.EntityClient.EntityConnection。BeginDbTransaction(IsolationLevel將 的IsolationLevel)4298876
System.Data.EntityClient.EntityConnection.BeginTransaction()+10
System.Data.Objects.ObjectContext.SaveChanges(SaveOptions選項) 538 System.Data.Entity.Internal.InternalContext .SaveChanges()+218 Afi.Domain.Storage.AfiDbContext.SaveChanges()in c:\ inetpub \ wwwroot \ afi \ src \ Domain \ Storage \ AfiDbContext.cs:190
Afi.Domain.Storage.EntitySession.Commit ()在 C:\的Inetpub \ wwwroot的\ AFI \ SRC \域\存儲\ EntitySession.cs:54
Afi.Web.Controllers.CIController.Seed(布爾excludeSomeData)在 C:\的Inetpub \ wwwroot的\ AFI \ SRC \網絡\控制器\ CIControll er.cs:263
Afi.Web.Controllers.CIController.Index()在 C:\的Inetpub \ wwwroot的\ AFI \ SRC \網絡\控制器\ CIController.cs:89
lambda_method(封閉,ControllerBase,對象[ ])81
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext,IDictionary的參數)39
System.Web.Mvc.Async。 <> c_ DisplayClass42.b _41() +34 System.Web.Mvc.Async。 <> c_ DisplayClass39.b _33() +124 System.Web.Mvc.Async。 <> c_ DisplayClass4f.b _49() +837307 System.Web.Mvc.Async。 <> c_ DisplayClass4f.b _49() +837307 System.Web.Mvc.Async。 <> c_ DisplayClass37.b _36(IAsyncResult asyncResult)+15
System.Web.Mvc.Async。 <> c_ DisplayClass2a.b _20() +33 System.Web.Mvc.Async。 <> c_ DisplayClass25.b _22(IAsyncResult asyncResult)+837892
System.Web.Mvc。 <> c_ DisplayClass1d.b _18(IAsyncResult asyncResult)+28
System.Web.Mvc.Async。 <> C_ DisplayClass4.b _3(IAsyncResult的 AR)15 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult的 asyncResult)65
System.Web.Mvc.Async。 <> C_ DisplayClass4.b _3(IAsyncResult的 AR)15 System.Web.Mvc.Controller.EndExecute(IAsyncResult的 asyncResult)51
System.Web.Mvc。 <> c_ DisplayClass8.b _3(IAsyncResult asyncResult)+42
System.Web.Mvc.Async。 <> C_ DisplayClass4.b _3(IAsyncResult的 AR)15 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult的 asyncResult)51
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute( ) +606 System.Web.HttpApplication。ExecuteStep(IExecutionStep步驟,布爾& completedSynchronously)288
你知道,即使您更改排序規則數據庫,在更改之前創建的任何對象都會持續排序?如果你有一個100行的表格。他們將保留舊的整理,而新的條目將具有新的整理。 – twoleggedhorse
另外,當您創建數據庫並且不指定排序規則時,它將採用服務器的排序規則。服務器是否設置爲French_CI_AI? – twoleggedhorse
我們希望更改創建數據庫的時間和EF編碼之間的排序規則。首先創建表格,但我們不知道表格應該如何排空 – VinnyG