c# - 为什么我不能在我的 global.asax 文件夹中添加我的自定义模型联编程序?

标签 c# asp.net-mvc global-asax custom-model-binder

我在网上看到人们像这样设置他们的自定义模型 Binder 的示例:

// global.asax
protected void Application_Start()
{
    ModelBinders.Binders.Add(typeof(YourModel), new YourBinder());
}

但是当我尝试这样做时,它无法编译(.Binders 未找到)。给了什么?

最佳答案

事实证明这只是一个命名冲突,因为我将我的自定义模型 Binder 放在一个名为“ModelBinders”的文件夹/命名空间中。您可以通过以下两种方式之一解决此问题:

  1. 将命名空间/文件夹重命名为其他名称,例如CustomModelBinders
  2. 像这样使用对 ModelBinders 的完全限定引用:

    System.Web.Mvc.ModelBinders.Binders.Add(/* ... */);

关于c# - 为什么我不能在我的 global.asax 文件夹中添加我的自定义模型联编程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12111979/

相关文章:

c# - 给定具有相同基类的不同类型对象列表,一个完全独立的类如何在没有 if/else 逻辑的情况下操作每个对象?

c# - 如何在现有 MVC 3 项目中添加/集成 SqlMembershipProvider?

.net - 在全局Application_Error中清除 session

asp.net-mvc - MVC/Unity - 如何将依赖项注入(inject)自定义 FilterAttributes?

asp.net - 我可以通过通用的 try/catch 优雅地运行 Controller 中的每个 ContentResult 吗?

c# - 上传后文件上传 Controller 不工作 - global.asax 上传后不触发

c# - Entity Framework 中的多对多关系 - 结果为 “An entity object cannot be referenced by multiple instances of IEntityChangeTracker”

c# - 格式化 C# 输出

asp.net-mvc - mvc [DataType(DataType.EmailAddress)无需验证

jquery - Ajax.BeginForm 返回未定义的 JSON(开发工具显示正在返回 JSON)