相关疑难解决方法(0)

更改asp.net MVC中的默认模型绑定器

有什么办法可以将默认的ModelBinder设置为我自己的吗?

asp.net-mvc

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

ASP.Net MVC自定义模型绑定说明

有谁知道我在哪里可以找到构建自定义模型绑定器的教程.

我发现使用默认模型绑定器和EntitySets的几个问题(在创建新对象时没有填充并在编辑对象上创建重复项)并且发现我的UI与我的模型完全不匹配(例如时间字段格式化为"hh:mm am"与时间跨度不匹配).因此,我想看看创建自定义模型绑定器是否是更好的解决方案.我找到了几个例子:这里这里.第一个是我认为已经过时了,第二个并没有真正解释发生了什么.

我的主要问题是我不完全理解BindModel方法的ControllerContext和ModelBindingContext究竟是什么,即它们与控制器和模型的关系.

如果有人指点我的教程或者看看dave hayden的帖子并告诉我它如何看待当前MVC的实现,我将不胜感激.

asp.net-mvc

34
推荐指数
1
解决办法
4万
查看次数

ASP.NET MVC控制器动作与自定义参数转换?

我想设置一个ASP.NET MVC路由,如下所示:

routes.MapRoute(
  "Default", // Route name
  "{controller}/{action}/{idl}", // URL with parameters
  new { controller = "Home", action = "Index", idl = UrlParameter.Optional } // Parameter defaults
);
Run Code Online (Sandbox Code Playgroud)

路由请求看起来像这样......

Example/GetItems/1,2,3
Run Code Online (Sandbox Code Playgroud)

...到我的控制器动作:

public class ExampleController : Controller
{
    public ActionResult GetItems(List<int> id_list)
    {
        return View();
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是,我如何设置将idlurl参数从stringinto转换为List<int>并调用适当的控制器操作?

我在这里看到了一个相关的问题,用于OnActionExecuting预处理字符串,但没有改变类型.我不认为这对我有用,因为当我OnActionExecuting在我的控制器中覆盖并检查ActionExecutingContext参数时,我看到ActionParameters字典已经有idl一个空值的键 - 大概是从字符串尝试转换为List<int>...这个是我想要控制的路由的一部分.

这可能吗?

c# asp.net asp.net-mvc iis-7 onactionexecuting

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

标签 统计

asp.net-mvc ×3

asp.net ×1

c# ×1

iis-7 ×1

onactionexecuting ×1