8

これは本当に奇妙なエラーです。私はオンラインで調べましたが、これが起こっている明確な理由はわかりません。

私は Database First Entity Framework バージョン 5 を使用しており、次の 4 つのテーブルを追加しました。

  • 仕事の状態
  • 仕事の状況
  • サブジョブのステータス
  • SubJobStageStatus

JobStatus、SubJobStatus、および SubJobStageStatus には、それぞれ WorkStatus に対する外部キー制約があります。

これらのテーブルを含めるように edmx を更新しましたが、何らかの理由で各テーブルに Status という単語の最後の s がありません。そのため、テーブルとそのナビゲーション プロパティは次のように呼び出されます。

  • 勤務状況
  • ジョブステータス
  • サブジョブの状態
  • SubJobStageStatus

なぜこれが起こるのか誰にも分かりますか?

4

1 に答える 1

8

「-Status」は複数形として解釈されており、EntityFrameworkは複数形を解除することで「役立つ」ようになっています。

たとえば、「Customers」というテーブルがある場合、EFは「Customer」というエンティティを生成します。これは実際にはコードの方が優れています。

var customer = new Customer();

あなたの場合はうまくいきません。あなたのテーブルはすでに特異です。

テーブルの名前を「-Statuses」に変更するか、デザイナーで名前を更新するか、複数形を無効にすることができます。

Tools > Options ここに画像の説明を入力してください

于 2012-09-17T12:50:51.453 に答える