0

我正在尝试添加一个自定义 HTTP 验证器,如此处所示。我希望许多站点将此实现共享为外部库。这样,当我发现处理验证的更新/更好的方法时,我可以更新链接的程序集并更新所有相关项目。

当我上课并将其放置在我的网络项目中时,我所要做的就是添加这一行并且一切正常:

<system.web>
   <httpRuntime requestValidationType="SampleRequestValidator"/>

但是...当我尝试引用外部程序集时,IIS 抱怨说它无法加载该类型。

有人
可以告诉我是否需要将自定义类型添加到 web.config 的这一部分:

Line 28:        <compilation debug="false">
Line 29:                <assemblies>
Line 30:                        <add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
Line 31:                        <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>

问题2

有人可以告诉我输入类型字符串的正确方法吗?到目前为止,我正在使用这个

Console.Writeline(typeof(SampleRequestValidator).AssemblyQualifiedName)
4

1 回答 1

1

第一个问题“是”。在我的 ASP.NET MVC 应用程序中,我还必须将命名空间添加到 web.config:

<pages>
  <namespaces>
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Routing" />
    <add namespace="My.Custom.Namespace"/>
  </namespaces>
</pages>

您为问题 2 所做的应该可以工作......您还可以通过右键单击项目并转到属性然后查看“应用程序”选项卡来查看 Visual Studio 中的程序集名称。

于 2011-04-15T16:32:59.453 回答