(mysql)データベースから派生したVisualStudio2010エンティティデータモデルを生成しました。
Users
- UserID
- Username
- UserGroupID
Groups
- GroupID
- GroupName
edmxダイアグラムは、2つのテーブル間の関係(1対多)を適切に示しています。ユーザーのデータソースをフォームにドラッグアンドドロップすると、datagridviewが表示され、アプリケーションを実行すると、ユーザー名などが正しく入力されます。ただし、GroupNameではなく(正しい)UserGroupIDの列が表示されます。これらの手順に従ってGroupNameを表示しようとしましたが、次のようなエラーが表示されます。
エラー3024:###行から始まるフラグメントのマッピングに問題があります:すべてのキープロパティにマッピングを指定する必要があります...
これは1対1の関係では機能するようですが、1対多では機能しないようです。
モデルファーストのエンティティデータモデルを使用する場合、クラスを手動で追加せずに、データグリッドビューにグループ名のユーザーテーブルを表示することはできませんか?それが実際に不可能な場合、datagridviewでこれを表示(および編集)する最も簡単な方法は何ですか(つまり、エンティティデータモデルを使用しない可能性がありますか?)これはかなり一般的なシナリオであると考えました。これを行うための視覚的なツールベースのアプローチであること。
許容できるアプローチとして、私は自分の好きなものを表示するビューを作成しようとしました。そのビューをモデルに追加し、エンティティをデータソースとして追加することができました。ただし、そのデータソースをフォームにドラッグすると、datagridviewには何も表示されませんでした。プロットが厚くなります。