- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个使用抽象类的简单 Poco-Model,它似乎不适用于 Asp.net MVC 2 的 Default ModelBinder。
一个项目在一个集合中有多个对象,它们都使用相同的抽象基类。
模型:
public partial class Item
{
public virtual ICollection<Core.Object> Objects
{
get
{
return _objects;
}
set
{
if (value != _objects)
{
_objects = value;
}
}
}
private ICollection<Core.Object> _objects;
}
public abstract partial class Object
{
public virtual Item Item
{
get
{
return _item;
}
set
{
if (!Object.ReferenceEquals(_item, value))
{
_item = value;
}
}
}
private Item _item;
}
public partial class TextObject : Object
{
public virtual string Text { get; set; }
}
var NewItem = new Item();
var TextObject1 = new TextObject
{
Text = "Text Object Text",
Item = NewItem
};
List<Core.Object> objects = new List<Core.Object>(){TextObject1};
NewItem.Objects = objects;
<input class="text-box single-line" id="Objects_0__Text" name="Objects[0].Text" type="text" value="Text Object Text" />
最佳答案
您将不得不使用自定义模型绑定(bind)器或使用 View 模型。模型绑定(bind)器只知道您用作操作参数的类型(包含抽象类)。然后它尝试将请求中的值映射到该模型。绑定(bind)器无法知道它应该使用其他一些实现以及可能是什么实现。
我的建议是创建更简单的 View 模型并使用 automapper 映射它们。 .
关于asp.net-mvc-2 - 使用抽象类的 Asp.Net MVC 2 DefaultModelBinder 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2387082/
我有一个像下面这样的操作方法。 [AcceptVerbs(HttpVerbs.Post)] public ActionResult Create(Form newForm) { ... }
我有一个带有代表员工时间表的表格的 View 。顶部的天数,向下的项目,每个天/项目交叉点包含两个值,用于正常工作时间和加类时间。 页面模型的(简化的)类定义是: public class Times
在 stackoverflow 和其他网站上有很多关于翻译 DefaultModelBinder 提供的默认错误消息的问题(和答案),例如 this one或this one . 这些问题的所有答案基
我有一个 MVC3 站点,该站点将具有一个不能使用默认模型绑定(bind)的模型。我一直在查看在线代码示例,看来我可以创建一个自定义模型绑定(bind)器,它可以实现 IModelBinder 或从
我正在尝试替换 MVC3 中在您未能填写必填字段或填写无效值时显示的默认验证消息。我只是在解决这个问题中的服务器端验证。我的无效值自定义消息有效,但缺少必填字段的消息不适用。 这是我所做的: 向 We
我正在尝试为 MVC 4 构建自定义模型绑定(bind)器,它将继承自 DefaultModelBinder。我希望它在任何 绑定(bind)级别拦截任何接口(interface),并尝试从名为 As
我希望 DefaultModelBinder 不执行基于 DataAnnotations 元数据的任何验证。我已经将 DataAnnotations 和 DynamicData 用于我网站的管理区域,
看起来其他人遇到了这个问题,但我似乎找不到解决方案。 我有 2 个模型:Person 和 BillingInfo: public class Person { public string Name
一些 decimal和 decimal?我的 View 模型中的属性被标记为“百分比”数据类型,以及其他数据注释,例如: [DataType("Percent")] [Display(Name = "
MVC 3.0 中的默认模型绑定(bind)器是否能够处理非顺序索引(对于简单和复杂模型类型)?我遇到过一些帖子建议它应该这样做,但在我的测试中似乎并不如此。 给定回发值: items[0].Id =
我正在将 MVC 5 项目转换为核心项目。我目前有一个自定义模型绑定(bind)器,用作我的 nhibernate 实体模型绑定(bind)器。我可以选择通过从数据库中获取实体然后调用基本 Defau
有几个相关问题,但我找不到有效的答案。 假设我有以下模型: public class EditorViewModel { public Account Account {get;set;} p
我有我认为有点正常的情况,我需要将表单帖子绑定(bind)到“订单”模型。这个模型有几个层次的信息: Order.Billing.FirstName Order.Billing.Address.Cit
使用 PropertyValueRequired 键将资源文件添加到 App_GlobalResources 并将 DefaultModelBinder.ResourceClassKey 更改为文件名
我有一个继承自 DefaultModelBinder 的自定义模型绑定(bind)器。我想要它做的是在模型上设置一个 DefaultModelBinder 无法解析的属性。它看起来像这样: publi
首先,对于大型文章(我首先尝试做一些研究)以及针对同一问题的技术混合(ASP.NET MVC 3,Ninject和MvcContrib)感到抱歉。 我正在使用ASP.NET MVC 3开发一个项目来处
我有一个非常简单的类: public class FilterItem { public Dictionary ItemsDictionary { get; set; } public
代码 我无法将 JavaScript 对象数组发送到服务器。ModelBinder 标准无法识别该格式。 在我的服务器上我有类(class): public class PessoaViewModel
我想在 ASP.Net Web API 中创建自定义模型绑定(bind)器。关于如何从头开始执行此操作的资源很多,但我想利用现有功能。 我查看了 codeplex 上的源代码,可以看到里面有很多模型绑
我正面临一个让我抽烟的非常奇怪的问题。 我有一个相当简单的场景,我有一个强类型 View ,它是从 GET 上的 Controller 正确填充的,但是当它将表单发布到 Controller 时,Re
我是一名优秀的程序员,十分优秀!