2011-08-03 7 views
0

私はいくつかのテーブルを持つModel1.edmxを持っています。今、私はTableAテーブルのすべてのカラムを望んでいないので、別のエンティティを作成し、テーブルマッピングを使用してTableAでマッピングしました。エンティティフレームワークのテーブルマッピング

私は同じことをしながら多くの問題に直面しています。私はFKの関連付けを作成した場合、それは私が取っていたアプローチが正しいかどうエンティティセットのalraedyがTableAのために存在するとして、私は、わからない"Non-Primary-Key column(s) [XXX] are being mapped in both fragments to different conceptual side properties".

を言う

" Thier primary key may collide". 

私が取得エラー、 。

これがアプローチであれば、解決策は何でしょうか。

もしそうでない場合は、どうすればよいですか。

UPDATE:必須ではないプロパティを削除しました。また、TableAのFKであった他のテーブルのプロパティも追加しました。

今、私はエラー" Problem in mapping fragments starting at line 566:Must specify mapping for all key properties (TableAs.ID) of the EntitySet TableAs.

UPDATEを取得しています、彼らがFKだったように私は他のテーブルのプロパティを追加した、と私はUIに他のテーブルからいくつかの列を望んでいた。良い(あるいは可能)これは、アプローチまたは私はそれのためのクラスを作成し、手動でクラスの各プロパティをマッピング事前に 感謝しなければならない

答えて

0

あなたはこれで何を意味:?。今

、私はすべてのCを望んでいませんTableAのolumns、私は別のエンティティを作成し、テーブルマッピングを使用してTableAでマッピングしました。

完全には明確ではありません。 TableAの列のサブセットのみを処理し、アプリケーションのどこにあるものも無視することを意味しますか?それらがnullable(またはStoreGeneratedPropertyComputed)であると仮定すると、TableAのエンティティでそれらをクリックして削除することができます。あなたは、テーブルごとの階層の継承、それはあなたが興味を持っているような音はありません扱っている場合を除きTableAにマッピングされています別のエンティティを作成することはできません

+0

私が列を望んでいないことデータベースや開発目的のために内部的なものです。私は、UI(またはユーザー)に使用される列を公開したいだけです。また、私は "階層あたりのテーブルの機能"についてはわかりません、あなたはそれを詳しく説明できますか?それはちょうど助けになるグーグルであるかもしれませんか? – genericuser

+0

@Priya:あなたが話していることは、テーブルの継承とは関係がないので、それが何であるかを学ぶことに興味があればそれを見てください。この問題であなたを助けません。上で述べたように、列がNULL可能な場合は、単に列プロパティをデザイナーから削除できます。それらがヌル可能でない場合、エンティティを保存できなかったため、それらを削除できません。 –

+0

エンティティまたはエンティティセットから削除する必要がありますか?そして、それはどんな粗悪な操作にも影響を与えませんか?また、エンティティの列の名前を変更する方法はありますか? – genericuser

関連する問題