私はEntity Frameworkを使用して接続する古いデータベースを持っています。スキーマを変更することはできません。別の(非常に古い)アプリケーションによって使用されているためです。PKであると思われる列に独自の値を挿入できないとクラッシュします。Entity Frameworkを使用して従来のテーブルのプライマリキーを挿入する
テーブルには主キー制約が設定されていないため、IDは使用できません。それらはで、はEFデザイナーのエンティティキーに設定されています(コードファーストではありません)。セレクションは素晴らしいですが、挿入時に失敗します。なぜなら、主キーの値が何であるべきかを知ることができないからです。 StoreGeneratedPattern
をnone
,computed
、identity
に設定しようとしましたが、いずれも機能しませんでした。 VS 2013
、EF 6は、私が(正直ADO.net Entity Data Model
プロジェクトが指定されていないので、チェックする方法がわからない)
あなたは自分でPK値を入力する必要があります。データベースが何も生成しないので、 'DatabaseGeneratedOption'はここでは適用されません。 –
この表のいずれかの列は適切な「偽の」主キーですか?つまり、ユニークな値が含まれていますか?もしそうなら、その列を主キーとしてEFを騙すことができ、その質問に答えることができます。 – Amy
EFの代わりに挿入用のストアドプロシージャを使用することを検討しましたか? – HLGEM