0

私の ASP.NET MVC4 アプリケーションでは、場所を選択し、その ID をニュースなどのテーブルに挿入するためのドロップダウン リストが必要です。一部のニュースはすべての場所に適用されます。したがって、これを示すために、ニュースの LocationID は Nullable です。

したがって、ドロップダウンに「すべての場所」を追加する必要があります。

これは私が想像した方法ですが、機能しますが、最後の行で Value = DBNull.Value (または単純な null) は許可されていません。整数のみを受け入れます。Locations-table に ID=0 がないため、そのテーブルの外部キー制約で 0 が許可されていないため、「0」を使用できません

var locations = db.Locations.Select(c => new { DisplayText = c.Location, Value = c.ID }).ToList();
locations.Insert(0, new { DisplayText = "All Locations", Value = DBNull.Value });
return Json(new { Result = "OK", Options = locations});

これをオプションリストに追加するにはどうすればよいですか?

4

1 に答える 1

1

場所の匿名オブジェクトの基礎はnew {}、Linq ステートメントの演算子で作成されます。NULL を許可する必要がある場合はnew { DisplayText = c.Location, Value = (int?)c.ID }、匿名型の Value パラメーターを null 許容 int として明示的に設定します。Value = null次に、挿入時に次の行で実行できます。

于 2012-11-08T21:07:21.607 に答える