标签: model-binders

数据输入后修剪字符串的最佳方法.我应该创建自定义模型绑定器吗?

我正在使用ASP.NET MVC,我希望所有用户输入的字符串字段在插入数据库之前进行修剪.由于我有很多数据输入表单,我正在寻找一种优雅的方法来修剪所有字符串,而不是明确地修剪每个用户提供的字符串值.我很想知道人们如何以及何时修剪弦乐.

我想也许创建一个自定义模型绑定器并修剪那里的任何字符串值......这样,我所有的修剪逻辑都包含在一个地方.这是一个好方法吗?是否有任何代码示例执行此操作?

asp.net asp.net-mvc model-binders

169
推荐指数
10
解决办法
4万
查看次数

MVC DateTime绑定具有不正确的日期格式

Asp.net-MVC现在允许隐式绑定DateTime对象.我有一个行动

public ActionResult DoSomething(DateTime startDate) 
{ 
... 
}
Run Code Online (Sandbox Code Playgroud)

这成功地将字符串从ajax调用转换为DateTime.但是,我们使用日期格式dd/MM/yyyy; MVC正在转换为MM/dd/yyyy.例如,使用字符串'09/02/2009'提交对操作的调用会导致DateTime为'02/09/2009 00:00:00',或在我们的本地设置中为9月2日.

我不想为了日期格式而滚动我自己的模型绑定器.但是,如果MVC能够为我执行此操作,则无需更改操作以接受字符串然后使用DateTime.Parse.

有没有办法改变DateTime的默认模型绑定器中使用的日期格式?默认型号绑定器不应该使用您的本地化设置吗?

asp.net-mvc formatting datetime localization model-binders

128
推荐指数
7
解决办法
13万
查看次数

如何在ASP.NET MVC中测试自定义模型绑定器?

我在ASP.NET MVC应用程序中编写了一些自定义模型绑定器(实现IModelBinder).我想知道对它们进行单元测试的好方法(粘合剂)?

asp.net asp.net-mvc unit-testing model-binders

21
推荐指数
2
解决办法
6178
查看次数

ASP.NET MVC - 表单和模型绑定器中的多个模型

我有一个表格需要填充2个模型.通常我在表单post post上使用ModelBinderAttribute,即

    [Authorize]
    [AcceptVerbs("POST")]
    public ActionResult Add([GigBinderAttribute]Gig gig, FormCollection formCollection)
    {
       ///Do stuff
    }
Run Code Online (Sandbox Code Playgroud)

在我的表单中,字段的名称与模型属性相同...

但是在这种情况下,我有2个不同的模型需要填充.

我该怎么做呢?有任何想法吗?可能吗?

asp.net-mvc model-binders

6
推荐指数
2
解决办法
5915
查看次数

使用Backbone.ModelBinder将类添加到元素的值中

我在Backbone.js Marionette项目中使用Backbone.ModelBinder.我有一个场景,我无法弄清楚如何使用ModelBinder自动更新我的模型/ UI.

我的模型有一个'status'字符串属性,有多个状态.在这个例子中,我将展示两个代码:'很快','某天'

在我的UI中,我有一个列表,我使用click事件来设置模型状态,并更新类以突出显示UI中的相关链接.

<dd id="status-soon"><a>Soon</a></dd>
<dd id="status-someday" class="active"><a>Someday</a></dd>

events: {
    'click #status-soon': 'setStatusSoon',
    'click #status-someday': 'setStatusSomeday'
},
setStatusSoon: function () {
    this.model.set('status', 'soon');
    this.$el.find('.status dd').removeClass('active');
    this.$el.find('#status-soon').addClass('active');
},
... etc
Run Code Online (Sandbox Code Playgroud)

感觉就像我这样做是一个冗长而笨重的方式!代码膨胀随着我需要支持的状态数量而增加.使用ModelBinder获得相同结果的最佳方法是什么?

model-binders model-binding backbone.js marionette

1
推荐指数
1
解决办法
7383
查看次数