1

私はMVC4プログラミングが初めてです。最初はNerdDinnerチュートリアルに従いました。現在、シナリオは徐々に複雑になっています。テーブルのフィールドからリストを作成したいのですDropDownが、方法がわかりません。インターネットから関連資料を検索しましたが、洗練された情報を取得できませんでした。

シナリオは、2 つのテーブルSoftwareCategory(アンチウイルス、グラフィックスなどのソフトウェアのカテゴリを表す) があることです。

  1. in Softwaretableは、 in tableと外部キー関係を持つcatIDin形式です。intcatIDCategory
  2. Categoryテーブルでは、とcatIDcatTitle唯一のフィールドです。

Create新しい を追加/アップロードするビューを作成してSoftwareいるときcatTitleに、すべてcatIDの が に表示されDrop-Down List、そこからユーザーがソフトウェア カテゴリを選択するようにしたいのですが、その方法がわかりません....

Create.cshtml私のファイルで使用されているモデルは

@model SoftwarePortal.Models.Software


したがって、この場合、引数は何になりますか

@Html.DropDownListFor()


catIDsフェッチする SQL stmtと対応するSQL stmt をどこでどのように指定すればよいcatTitlesですか? (Linq to SQL を使用しています...)
現在のビューのモデルとして宣言されていないテーブルにアクセスするにはどうすればよいですか...?

4

2 に答える 2

0

コントローラーで、生成されたデータベース エンティティが SoftDBEntities になるとします。

private SoftDBEntities se = new SoftDBEntities();
public ActionResult Create()
{
    //se.Categorys will get all categories
    //se.Categorys may be replace with a function which return records from Category table
    ViewBag.CatId= new SelectList(se.Categorys, "CatId", "CatTitle");
    return View();
} 

cshtml ファイル内

@Html.DropDownList("CatId")

上記のステートメントが機能しない場合は、これを試してください

@Html.DropDownListFor(model.CatId,(SelectList)ViewBag.CatId,"CatId","CatTitle")
于 2012-10-18T05:16:30.540 に答える
0

あれまあ!私がする必要があったのは、to を内部で型キャストすることだけだったと思いますか!!! 自動で収納アイテムの形にならないから… バカかよ…ViewBag.CategoriesSelectList@Html.DropDownListFor()

于 2012-10-23T05:01:36.493 に答える