首页 > 代码库 > mvc问题小记

mvc问题小记

工作中使用到mvcpager插件,在开发环境win7+iis7.5环境下,不需要配置,直接引用即可使用。但是无奈还有网站发布这一项工作,服务器环境server2008+iis7,部署之后出现问题。

当访问到调用mvcpager这个插件时就报如下错误:

Server Error in ‘/‘ Application.The WebResource.axd handler must be registered in the configuration to process this request.

<!-- Web.Config Configuration File -->
<configuration>
   <system.web>
       <httpHandlers>
           <add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="True" />
       </httpHandlers>
   </system.web>

当然按照这个提示,在webconfig中配置一下就行了,需要注意的是在httpHandlers标签内包括多条记录时,他们是有优先级,比如第一条是‘*’匹配的话,之后就不会生效,问题还是得不到解决。


还有一个问题,开发环境和服务器环境同上。

在mvc中view中使用了一个实体类作为Model,vs中能够正确识别到命名空间,然而在对应的webconfig中却没有进行注册该空间。

当发布到服务器之后,iis7则会报出找不到实体类,是否缺少引用的错误提示。

在config中加入该实体类对应的命名空间,问题得到解决。

<system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Optimization"/>
        <add namespace="System.Web.Routing" />
        <add namespace="GFSite.Models"/>
        <add namespace="GFSite.Areas.Mngr.Models"/>
        <add namespace="Webdiyer.WebControls.Mvc"/>
      </namespaces>
    </pages>
  </system.web.webPages.razor>