CS1061 “HtmlHelper”未包含“Partial”的定义,并且找不到可接受第一个“HtmlHelper”类型参数的可访问扩展方法“Partial”

严重性 代码 说明 项目 文件 行 禁止显示状态

错误 CS1061 "HtmlHelper"未包含"Partial"的定义,并且找不到可接受第一个"HtmlHelper"类型参数的可访问扩展方法"Partial"(是否缺少 using 指令或程序集引用?) 14_Views_Message_Edit.cshtml

解决:

已经提示Html.Partial()这个Partial方法不存在,说明项目引用的System.Web.Mvc这个dll中肯定没有。因此需要升级System.Web.Mvc.dll这个框架,最好升级到5.0以后;即可解决,异常版本低的System.Web.Mvc.dll,相关的web.config的配置版本也要改;下图,两个位置的版本都要改

Views里面的Web.config

XML 复制代码
<?xml version="1.0" encoding="utf-8"?>

<configuration>
  <configSections>
	  <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
		  <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
		  <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
	  </sectionGroup>
  </configSections>

  <system.web.webPages.razor>
	  <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.9.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" />
      </namespaces>
    </pages>
  </system.web.webPages.razor>

  <appSettings>
    <add key="webpages:Enabled" value="false" />
  </appSettings>

  <system.web>
    <httpHandlers>
      <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
    </httpHandlers>
	  
	  <compilation>
		  <assemblies>
			  <add assembly="System.Web.Mvc, Version=5.2.9.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
		  </assemblies>
	  </compilation>
  </system.web>

  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />

    <handlers>
      <remove name="BlockViewHandler"/>
      <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
    </handlers>
  </system.webServer>
</configuration>

外部的Web.config

XML 复制代码
     <dependentAssembly>
       <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
       <bindingRedirect oldVersion="0.0.0.0-5.2.9.0" newVersion="5.2.9.0" />
     </dependentAssembly>
相关推荐
棉晗榜6 个月前
asp.net mvc使用IHttpModule拦截所有请求,包括资源文件
后端·asp.net·mvc·asp.net mvc·ihttpmodule
可均可可1 年前
Net 高级调试之十二:垃圾回收机制以及终结器队列、对象固定
sos·net 高级调试·clr·asp.net mvc