ADO.NET Entity Framework:更新ウィザードはテーブルを追加しません

.net ado.net entity-framework primary-key visual-studio-2008

質問

プロジェクトに新しいADO.Net Entity Data Modelを追加し、 更新ウィザードを使用してモデルにテーブルを追加しました。選択された5つのテーブルがデザイン画面に追加されました。他の2つのテーブルは追加されません。ウィザードでそれらを選択して[完了]をクリックしても、デザイン画面に表示されません。

これはバグですか?それとも(設計上)モデルにモデルを追加できない状況がありますか?


更新:XML(* .edmx)は問題を明らかにしています。

<!--Errors Found During Generation:
warning 6013: The table/view 'FooBar.dbo.Roles' does not 
have a primary key defined and no valid primary key could be inferred. 
This table/view has been excluded. To use the entity you will need to 
review your schema, add the correct keys and uncomment it.-->
<!--<EntityType Name="Roles">
    <Property Name="role_id" Type="decimal" />
    <Property Name="role_desc" Type="nvarchar" MaxLength="30" />
</EntityType>-->

おかげクレイグあなたの応答のために。

受け入れられた回答

デザイン面はエンティティモデルとは異なります。デザイン画面に表示されないテーブルをEDMXのマッピングに含めることは可能です。ファイルがXMLとして表示されているかどうかを確認します。この場合、テーブルはすでにエンティティモデルの一部であるため、更新ウィザードでテーブルを再追加することはできません。したがって、一般的に言って、更新ウィザードは、デザインサーフェスよりもエンティティモデルについての知識があります。

私はそれがあなたが現在いる状況ではないと思います、しかしそれはあなたに解決策のための一般的な考えを与えるべきです:XMLに行き、問題のテーブルへの参照を探す。


人気のある回答

主キーをすべてのテーブルに設定するか、各テーブルの任意の列に1つのチェックボックス "Allow null"を設定します。わたしにはできる :)



Related

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