亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

C# ASP.NET 在下拉列表更改的 post 方法中傳遞模型

C# ASP.NET 在下拉列表更改的 post 方法中傳遞模型

C#
LEATH 2022-07-23 17:45:34
我試圖DropDownList在我的 Razor 代碼中更改 a 時傳遞我的模型,但我的模型信息沒有傳遞給 post 方法,即使調用了 post 方法。在我的剃刀中:@model Namespace.Models.MyModel@using (Html.BeginForm("myFunc", "Home", FormMethod.Post, new { myModel = Model })){    @Html.DropDownListFor(m => m.SelectedType, new SelectList(Model.Types, "Id", "Desc", Model.SelectedType), new { @class = "form-control", style = "display: inline;", @onchange = "this.form.submit()" })}我的模型:public class MyModel{    public List<myData> myList = new List<myData>();    public List<myType> Types = new List<myType>();    public string SelectedType;}我的控制器:[HttpPost]public ActionResult myFunc(MyModel myModel){    //do stuff}如果我在其中放置一個斷點,myFunc我可以看到它在我的更改時進入那里,DropDownList但模型信息不會傳遞給函數。我確定我所缺少的可能是一件小事,但我就是看不到它。呈現的 HTML 為:<form action="/Home/myFunc" myModel="Namespace.Models.MyModel" method="post">   <select class="form-control" id="SelectedType" name="SelectedType" onChange="(this.form).submit()" style="display: inline;">      <option selected="selected" value="FT">Fault</option>      <option value="QY">Query</option>      <option value="RQ">PM Request</option>   </select></form>
查看完整描述

1 回答

?
Cats萌萌

TA貢獻1805條經驗 獲得超9個贊

默認情況下,它只查看公共屬性而不是字段。


MVC 將嘗試按名稱將請求數據綁定到操作參數。MVC 將使用參數名稱及其公共可設置屬性的名稱來查找每個參數的值。在上面的例子中,唯一的 action 參數名為 id,MVC 將它綁定到路由值中的同名值。除了路由值之外,MVC 還會綁定來自請求各個部分的數據,并且它會按照設定的順序進行綁定。


https://docs.microsoft.com/en-us/aspnet/core/mvc/models/model-binding?view=aspnetcore-2.2


public class MyModel

{

    public List<myData> myList = new List<myData>();

    public List<myType> Types = new List<myType>();

    public string SelectedType;

}

我通過將您的模型從頂部更改為底部來使其工作。


public class MyModel

{

    public List<myData> myList {get;set;}

    public List<myType> Types{get;set;}

    public string SelectedType {get;set;}

}


查看完整回答
反對 回復 2022-07-23
  • 1 回答
  • 0 關注
  • 101 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號