我正在尝试从表单获取值以将对象保存在数据库中
这个视图
这个模型
但是当我尝试创建一个新的Marca时,create action中的marca对象具有从表单派生的所有属性设置为null,我无法理解为什么
答案 0 :(得分:0)
其他选项是创建一个单独的模型,只包含您想要的属性并绑定该模型。
public class MyModel
{
public int Iva {get;set;}
public string Path {get;set;};
// other properties
}
然后在控制器
public Task Index()
{
var marca = _context.GetMarca();
//map marca to MyModel here
var model = new MyModel()
{
Iva = marca.Iva,
Path = marca.Path
// other properties
}
return Index(model);
}
public async Task<IActionResult> Create(MyModel model)
{
var entity = _context.GetEntityByID(model.Iva);
entity.Path = model.Path
//map other properties
await _context.SaveChanges();
}
我更喜欢绑定不同的模型而不是绑定实体来查看。
答案 1 :(得分:0)
只需在控制器功能中使用[frombody]属性,因为httppost值来自请求的正文部分。