ViewModel属性的自定义解析值(自定义绑定)

时间:2016-10-08 20:19:38

标签: c# asp.net asp.net-mvc bind

我有以下结构:

public struct DataRange
{
    public DateTime BeginDate {get;set;}
    public DateTime EndDate {get;set;}
}

这个结构用于我的asp.net mvc 5应用程序的许多操作。

我正在使用自定义输入(daterangepicker),我想将输入的自定义字符串值绑定到我的自定义数据类型一次,并在我的应用程序中使用它。

E.g:

public class FindSalesByDateViewModel
{
    public DateRange Interval {get; set;}
}

public class SalesController : Controller
{
    public ActionResult Index(FindSalesByDateViewModel model)
    {
        //Access the model.Interval without parse the string value always.
    }
}

我是mvc开发的初学者。 我发现以下解决方案不是很有吸引力,还有其他方法可以实现吗?

Solution 1

Solution 2

修改

来自视图的自定义输入值为:“2016/10/10 - 15/10/2016”

1 个答案:

答案 0 :(得分:1)

您可以在Application_Start注册自定义模型资料夹:

ModelBinders.Binders[typeof(DateTime)] = new YourCustomModelBinder();