Ale*_*sev 6 c# asp.net-mvc razor
我有一个视图,其中@model声明为FullModel类型;
public class FullModel
{
public IList<Record> SomeRecords {get;set;}
public Record NewRecord {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
此视图呈现SomeRecords,并且还将用于将NewRecord发布到控制器方法的Form呈现为:
public ActionResult CreateNew(Record record)
{
...
}
Run Code Online (Sandbox Code Playgroud)
像这样的东西:
@using (@Html.BeginForm("CreateNew", "RecordController"))
{
@Html.TextBoxFor(x => x.NewRecord.SomeProp)
...
}
Run Code Online (Sandbox Code Playgroud)
但是这不起作用,因为路径从root开始FullModel,所以POST数据变为NewRecord.SomeProp和控制器期望Record为root,路径应该是SomeProp
什么是通常\正确的方法来处理这个?
一种方法可能是使用TextBox而不是TextBoxFor定义您的自定义名称:
@using (@Html.BeginForm("CreateNew", "RecordController"))
{
@Html.TextBox("SomeProp", Model.NewRecord.SomeProp)
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
779 次 |
| 最近记录: |