データベースに加えられた変更を反映するようにedmxを更新する(.net linq-to-entities)

.net-3.5 entity-framework linq linq-to-entities

質問

  • それで私は私のedmxを作りました。
  • それからデータベースを少し変更して、列をNOT NULLからNULLを許可するように変更します。
  • 私は自分のedmxに入り、右クリックして "Update Model from Database"を選択します。

今私は私のプログラムに入り、それは実際には更新されていません...私は列にnullを入れることはできません。 edmxを正しく更新するためには何をしなければなりませんか?ありがとうございました。

受け入れられた回答

データベースから更新モデルを選択するのがEDMXを更新するための最良の方法です。概念レイヤでは更新されない特定のプロパティがあります。

モデルビューアツールボックスで表示して、ストアレイヤが更新されていることを確認します。ストアが正しく更新されていれば大丈夫です、そしてデータベースは同期しています。その場合は、ビジュアルデザイナに進み、フィールドをクリックしてプロパティに移動し、[概念]側のNotNullプロパティを更新します。


人気のある回答

EDMXからの更新/削除が常に機能するわけではありません。データベースからモデルを更新をクリックしてもモデルが更新されない場合は、DB内のビュー/テーブルを更新したとしましょう。

1)モデル図からビュー/テーブルを削除する
2)EDMXをxml表示に切り替えます(edmxファイルを右クリックして「アプリケーションから開く」を選択します)
3)xmlエンティティ要素を検索して削除する
4)EDMXビューに戻る
5)データベースからモデルを更新をクリック

これはあなたがあなたのEDMXにDBに加えたどんな種類の変更も反映するべきです。面倒ですが、問題なく動作します。

理想的な世界では、データベースからの更新モデルがDBからEDMXへの変更を同期することを期待します。しかし、それはほとんどの場合うまくいきません。



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ