1

データベースでの一括操作に Entity Framework を使用しています。

CSV ファイルはアプリケーションによってアップロードされます。これは任意の数の行と列にすることができ、アプリケーションはファイルをサーバーにアップロードし、データベース挿入用のトランザクションを作成します。データのガベージを回避するためにトランザクションを使用しました。破損したデータが見つかった場合は、操作全体をロールバックします。

私の質問は、データ数が少ない小さなファイルを使用している場合、完全に実行されるということです。

大きなファイルを使用すると、エラーログにこのエラーが表示されました

2012-04-06 12:28:13 PM [4] Amit-PC [fe80::4c0c:23b9:4c3:bbb8%10]
エラー VC.Phoenix.QM.Web.UI.Controllers.QuotasController - アプリケーション エラーが発生しましたメソッドで発生しました: ProcessMatrix()。アプリケーション管理者に連絡してください。エラーの詳細: コマンド定義の実行中にエラーが発生しました。詳細については、内部例外を参照してください。

System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands でのstackTrace
(EntityCommand entityCommand, CommandBehavior behavior)
System.Data.Objects.ObjectContext.CreateFunctionObjectResult[TElement](EntityCommand entityCommand, EntitySet entitySet, EdmType edmType, MergeOption mergeOption)
で System.Data.Objects .ObjectContext.ExecuteFunction[TElement](String functionName、MergeOption mergeOption、ObjectParameter[] パラメータ)
System.Data.Objects.ObjectContext.ExecuteFunction[TElement](String functionName、ObjectParameter[] パラメータ)

D:\OptimusRepository\VisionCritical\PhoenixQuota\Branches\BugFixes\VC.Phoenix.QM.EntityDataModel\QuotaManagement1.Designer.cs: VC の 317 行目の VC.Phoenix.QM.EntityDataModel.QuotaManagementContainer.SetTotalColumns(Nullable`1 quotaId) でD:\OptimusRepository\VisionCritical\PhoenixQuota\Branches\BugFixes\VC.Phoenix.QM.Web.UI\Controllers\QuotasController.cs の .Phoenix.QM.Web.UI.Controllers.QuotasController.SetTotalColumnData(Int32 quotaId, QuotaManagementContainer quotaManagementContext) :
D:\OptimusRepository\VisionCritical\PhoenixQuota\Branches\BugFixes\VC.Phoenix.QM.Web の VC.Phoenix.QM.Web.UI.Controllers.QuotasController.ProcessMatrix(Int32 quotaId, String isCount, String cellPos) の行 3032 .UI\Controllers\QuotasController.cs:844行目

Entityフレームワークの問題を理解するのを手伝ってください。前もって感謝します。

4

0 に答える 0