作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个 MVC 模型,如下所示:
public class OtherModel
{
[Required]
[Display(Name = "Another ID")]
public int id{ get; set; }
}
public class MyModel
{
[Required]
[Display(Name = "ID")]
public int id { get; set; }
public PlayerModel otherModel = new OtherModel ();
}
我的 Controller 有一个名为 USE 的 [HttpPost] 操作,如下所示:
[HttpPost]
public ActionResult Use(MyModel myModel)
{
/// myModel.otherModel.id is 0 here!!
}
此操作采用 MyModel。发布我的表单时,otherModel 变量的 id 值包含一个 0。现在,包含表单的 View 被传递给一个 MyModel 并实际在页面上显示 otherModel.id。问题是后行动不是将表单数据正确编码到 otherModel 对象中,我不知道为什么。
另一个注意事项:当我检查帖子的表单数据标题时,我清楚地看到 otherModel.id 具有我期望的值。
为什么这个数据在我的 otherModel 对象中没有正确显示?
提前致谢!
最佳答案
您是否在 Global.asax.cs 中注册了 Binder ?
public static void RegisterBinders(ModelBinderDictionary binders)
{
binders.Add(typeof(MyModel), new MyModelBinder());
// other binders
}
这在 Application_Start 中调用如下:
protected void Application_Start()
{
RegisterBinders(ModelBinders.Binders);
}
PS:我假设您使用的是自定义模型 Binder 。如果您使用自动绑定(bind),请查看您是否遵守命名约定。
关于c# - 发布时未填充 MVC 模型类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9313336/
在我们的数据库表上,我们使用两个唯一的非聚集索引来创建跨四个字段的唯一约束。我们使用两个,因为其中一个字段 ZipCode 是一个可为空的字段。如果表中存在一条包含 ZipCode 的 null 条目
我刚刚开始学习 Rails 3 教程,以便对框架有一点熟悉,但我在生成 schema.rb 时遇到了问题。我的操作系统是 Windows 7 x64、Ruby 1.9.2、MySQL2 gem 0.2
我是一名优秀的程序员,十分优秀!