-1

初めてエンティティ フレームワークとデータベースを使用しています。別のデータに厳密にリンクされているデータを保存する必要があります。1 つ目は問題のテーブルです: 問題の説明日とステータスが含まれ、2 つ目のデータは解決策のテーブルです: 解決策の説明と日付とステータスが含まれます。

https://www.dropbox.com/s/x6vcup7fw0ahm19/image%20for%20stack%20overflow.png

これを設計するにはどうすればよいですか : 問題には少なくとも 1 つの解決策があります。つまり、ユーザーが問題を入力するときは、解決策を入力する必要があります。同時に、他のユーザーは既存の問題に別のソリューションを追加できます。

「読み取りおよび書き込みオプションとエンティティ フレームワークを備えた MVC コントローラー」のスキャフォールディング オプションを使用して新しいコントローラーを追加すると、問題を作成するためのモデルが 1 つしか見つからず、別のモデルを追加できません。

説明が下手で大変申し訳ありません。この Web 開発全体は私にとって初めてのことです。ご回答ありがとうございます

4

1 に答える 1

0

あなたが説明しようとしているのは、一対多の関係です。まだ行っていない場合は、http://www.asp.net/mvc/tutorialsで入手できる優れたステップ バイ ステップ チュートリアルの 1 つに従ってください。

そこでは、問題へのアプローチ方法について十分な説明が確実に得られます。

これが答えであるため:

クラスを作成し、コードファーストのアプローチを使用する必要があると仮定します。

あなたの最初のクラスはProblemと呼ばれています

public class Problem
{
...
}

セカンドクラスのソリューションで

public class Solution
{
...
}

一対多の関係を実現するには、これをproblemクラスに実装する必要があります

public class Problem
{
...
public virtual ICollection<Solution> Solutions { get; set; }
}

これを英語に翻訳すると、次のようになります。 1 Problem には、Solution のコレクションがあります。このコレクションのサイズは 0 または 10 または 20 です。これはここに示されています: http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/creating-a-more-complex-data-model-for-an-asp-net -mvc-アプリケーション

とはいえ、最初から始めることをお勧めします。

敬具。

于 2013-10-11T18:05:01.400 に答える