1

LINK to Objects メソッドと @html.dropdownlist Webmatrix ヘルパーを使用して、いくつかのドロップダウン リストを作成しました。これはうまくいきます。

知りたいhow to pass / store the selected value in my database table

コード セクションのアイテム リストのビルド

var titlesData = db.Query("SELECT TitleId, Name FROM Titles ORDER BY Name");
        titlesListItems = titlesData.Select(i => new SelectListItem {
        Value = i.TitleId.ToString(),
        Text = i.Name,
        Selected = i.TitleId == providerData.TitleId ? true : false
        });

HTML マークアップ セクション:

@Html.DropDownList("titlesCombo","-- Veuillez sélectionner -- ",titlesListItems)

データベース更新コマンド (??? を参照) :

db.Execute("UPDATE Providers SET TitleId=@0 WHERE ProviderId=@1",???,providerId)

ここで使用した方法は、別の変数を作成することです。

var titleId = "";

if (!IsPost) {

    titleId = providerData.TitleId.ToString(); //providerData stores the SQL query result
}

if (IsPost) {

    var titleId = Request.Form[TitleID]
    db.Execute("UPDATE Providers SET TitleId=@0 WHERE ProviderId=@1",titleId,providerId)
}

残念ながらデータは更新されません

4

1 に答える 1

2

私が見る限り、コード内で DropDownList ヘルパーを正しく参照していません。次のコードを試してください。

var titleId = ""; 

if (!IsPost) { 
    titleId = providerData.TitleId.ToString();
} 

if (IsPost) { 
    titleId = Request.Form["titlesCombo"];
    db.Execute("UPDATE Providers SET TitleId=@0 WHERE ProviderId=@1",titleId,providerId);
} 
于 2012-09-27T12:51:29.340 に答える