8

Entity Framework 4を使用していますが、質問があります。

データベースに、カスタムSQLを使用して管理したいパスワード列があります。だから私はモデルにそれについて何も知られたくない。

[マッピングの詳細]ウィンドウでプロパティを削除しようとしましたが、コンパイルエラーが発生しました。

エラー3023:1660行目から始まるフラグメントのマッピングの問題:テーブルユーザーの列User.Passwordをマッピングする必要があります:デフォルト値がなく、null許容ではありません。

そこで、データベースで列をnull許容にし、モデルを更新しました。今、私はこのエラーを受け取ります:

エラー3004:1660行目から始まるフラグメントのマッピングの問題:SetUsersのプロパティUser.Password、User.Saltにマッピングが指定されていません。キー(PK)を持つエンティティは、次の場合にラウンドトリップしません。エンティティがタイプ[UserDirectoryModel.User]の場合

何かアイデアはありますか?

ありがとう、ニック

4

2 に答える 2

12

EDMX デザイナーの [プロパティ] ペインを使用して、プロパティをプライベートとしてマークすることができます。コード生成オプションの下には、パブリックからプライベートに変更できる Getter オプションと Setter オプションがあります。

于 2010-05-17T02:20:51.583 に答える
5

これを修正する 1 つの方法は、パスワード列を含まないユーザー テーブルのビューを作成することです。次に、テーブルではなくモデルでビューを使用します。

于 2010-05-16T20:28:38.793 に答える