このことは私を夢中にさせており、エラーは私にはまったく無意味です:
EntitySet 'TableB'は、DefiningQueryがあり、現在の操作をサポートする要素が要素に存在しないため、更新できません。
私のテーブルは次のように配置されています:
テーブルA int idA(ID、主キー) ... テーブルB int idA(TableA.idAのFK) int val
TableBには、SQLサーバーで定義された主キーがありません。Entity Frameworkはテーブルと関連付けをインポートし、両方のフィールドをキーとして設定しました。しかし、テーブルに挿入しようとすると、そのエラーが出力されます!
どうしましたか??
編集: アレックスによって提案されたように、解決策はこれでした:
- edmxファイルを右クリックし、[アプリケーションから開く]を選択します。XMLエディター
- edmx:StorageModels要素でエンティティを見つけます
- DefiningQueryを完全に削除します
- store:Schema = "dbo"の名前をSchema = "dbo"に変更します(それ以外の場合、コードは名前が無効であることを示すエラーを生成します)
- store:Nameプロパティを削除します
両方の列がキーの一部であることは私には問題なかったので、私はキーをそのまま残しました。