は、私は、次のフィールドとジャンルと呼ばれるデータベーステーブルを持っていますASP.NET MVC 3のDropDownListForでのデータバインディングエラー? -</li> </ul> <p></p> <ul> <li>ID(シード主キー)</li> <li>名(などロマンス、西部、...ジャンルの名称):
public class GenreDropDownModel
{
private StoryDBEntities storyDB = new StoryDBEntities();
public Dictionary<int,string> genres { get; set; }
public GenreDropDownModel()
{
genres = new Dictionary<int,string>();
foreach (var genre in storyDB.Genres)
{
genres.Add(genre.Id, genre.Name);
}
}
}
マイコントローラーWrite
アクションが宣言されている:私はTEH、次のコードが含まれていGenreDropDownModel
と呼ばれるモデルクラスを持っていますS:私は次のエラーを取得する場所
public ActionResult Write()
{
return View(new GenreDropDownModel());
}
は最後に、私のビューWrite.cshtmlがある:
データバインディング:「System.Collections.Generic.KeyValuePair`2 [[可能System.Int32、mscorlib、バージョン= 4.0.0.0、文化=中立、なPublicKeyToken = b77a5c561934e089]、[可能System.String、mscorlib、バージョン= 4.0.0.0、文化=中立、なPublicKeyToken = b77a5c561934e089]]同上 '」名前のプロパティが含まれていません'。
@model Stories.Models.GenreDropDownModel
@{
ViewBag.Title = "Write";
}
<h2>Write</h2>
@Html.DropDownListFor(model => model.genres,new SelectList(Model.genres,"Id","Name"))
私が以前から求めていたこの問題のオフに行っていたが、鉱山は動作しません。http://stackoverflow.com/questions/5326515/create-a-dropdown-list-for-mvc3-using-entity-framework- edmx-model-razor-vie – Xaisoft
私はまた、Dictionaryが私がリンクした質問に基づいて渡すべき最良のものではないと聞きました。私はまだ最良の方法を見つけていない。 – Xaisoft
偉大な、あなたのソリューションが働いた。助けてくれてありがとう。 – Xaisoft