2017-05-22 15 views
0

私はEntityFramework c#でNtierアプリケーションを構築しています。 私は、既存のデータベースからコードファーストアプローチを使用して、データアクセスレイヤーにエンティティデータモデルを追加しています。EntityFrameworkを使用するデータベースからのC#コードファースト - プライマリキーなしでテーブルをマップする方法

私のdbのテーブルの中には、プライマリキーがないために含まれていないものがあります。私はEntityFrameworkのedmxをデータベースにマッピングするように変更し、キーのようないくつかのフィールドを偽装するこの問題を回避するいくつかの方法を見てきました。しかし、私は.edmxを使用していません。なぜなら私はそれで自動移行を使用することができないからです。私は既存のデータベースからのみPOCOを生成し、コードを最初に移行します。

Entity FrameworkでプライマリキーなしでこれらのテーブルのPOCOを生成する方法はありますか?いくつかのエントリは1つしかなく、実際にはPrimaryKeyは必要ありません

+0

私の経験から、主キーなしのテーブルを持っていることはかなり良い考えです。あなたはこれをハックすることができますが、私はこれに対して助言します。 – Alex

+0

これについてはこちらをご覧ください:https://stackoverflow.com/questions/3996782/entity-framework-table-without-primary-key – Alex

+0

テーブルをPKに変換するだけではどうですか?これを回避することは、主要なPITAになります。 – spender

答えて

0

最後に、含まれていないテーブルのPOCOを書きました。

私はキーのように動作したいプロパティの上に[KEY]属性を使用しました。 DataModelにDbSet行を追加し、EFがそれらをデータベースで認識しました。

私の上司が望んでいなかったので、私は主キーを生成したくありませんでした。 :)あなたのために最高のあなたの答えを希望

関連する問題