私はEFでコードファーストアプローチを使用しています。私のコードはローカルの開発者用コンピューターでは問題なく動作しますが、本番環境では、しばらくするとオブジェクトの 1 つが挿入されなくなり、エラーがスローされるという奇妙な動作が発生します。
DatabaseGeneratedOption.Identity
ユーザーにこの問題が発生していないため、これが私の使用である可能性があると思われます。
昨日ずっとこのオブジェクトを挿入できましたが、今朝はできません。私のセットアップは次のようになります。
ユーザー
[Key]
[DataMember]
public Guid UserID { get; set; }
[DataMember]
public string Password { get; set; }
[DataMember]
public string FirstName { get; set; }
[DataMember]
public string LastName { get; set; }
public ICollection<Fish> Fish { get; set; }
魚
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[DataMember]
public Guid FishID { get; set; }
[DataMember]
public Guid UserID { get; set; }
[DataMember]
public virtual User User { get; set; }
[DataMember]
public string Title { get; set; }
[DataMember]
public string Description { get; set; }
アップデート:
エラー: 「エントリの更新中にエラーが発生しました。詳細については、内部例外を参照してください。」
次に、以下があります。
System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object インスタンス、Object[] 入力、Object[]& 出力) で System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) で System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage41(MessageRpc& rpc) で System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc) で System.ServiceModel.Dispatcher System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3(MessageRpc& rpc) の System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc) の ProcessMessage2(MessageRpc& rpc) System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1(MessageRpc& rpc) の System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
アップデート:
サーバーを再起動したところ、再び新しい「Fish」を挿入できるようになりました。これは、EF ではなく SQL Server 2008 r2 / WCF の問題を示していますか?