ビジネスデータモデルを持つビジネスエンティティにlinqを使用しているWebアプリケーションがあります。
問題は :
null 値を許可しない 1 つの列を持つテーブルがあります。このテーブルを更新しようとすると、次のエラーが発生します。エラー プロパティ 'eg Carrier' はオブジェクトのキー情報の一部であり、変更できません
私は何ができますか?
最も簡単な方法は、guidなどの一意のキーを持つ2番目の列をテーブルに追加し、それに対応するエンティティに読み取り専用プロパティを作成することです。
Linq to businessの誘惑には、データベースで何を更新するかを追跡するための何らかのキーが必要です。通常、これはデータベーステーブルの主キーです。主キーがない場合、データベースを確実に更新できず、例外が送信されます。
また、テーブルlinqに主キーが明示的に設定されていない場合、ビジネスエンティティは、列の1つを選択して(テーブルの最初の列だと思いますが、間違っている可能性があります)、主キーとして機能するため、次のことはできません。更新してください。