System.Web.Mvc.HtmlHelper <dynamic>不包含'Syncfusion'错误的定义

Yea*_*Stu 9 razor asp.net-mvc-3

我正在使用带有Razor引擎的ASP.Net MVC 3和SyncFusion mvc控件套件的9.104.0.20版本.

在这个控件的文档中,我将在我的母版页中添加类似于下面的代码行:

@Html.Syncfusion().ScriptManager()
Run Code Online (Sandbox Code Playgroud)

根据Syncfusion文档和此Stack Overflow建议,我确保将命名空间添加到元素下的web.config文件中.

   <add namespace="Syncfusion.Mvc.Schedule"/>
Run Code Online (Sandbox Code Playgroud)

解决方案构建但运行时出现以下错误:

'System.Web.Mvc.HtmlHelper'不包含'Syncfusion'的定义,并且没有扩展方法'Syncfusion'可以找到接受类型'System.Web.Mvc.HtmlHelper'的第一个参数(你是否缺少using指令)或汇编参考?)

我不认为这个问题与Syncfusion有关,而是因为我无法正确引用它们的程序集.

我该如何解决这个问题?

Yea*_*Stu 18

通过在元素中添加命名空间引用解决了该问题.

我必须在web.config的顶部添加以下configSection信息:

<configSections>
    <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
      <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
      <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    </sectionGroup>
  </configSections>
Run Code Online (Sandbox Code Playgroud)

然后我必须在该定义的部分中添加SyncFusion名称空间:

<system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.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.Routing" />
        <add namespace="System.Collections" />
        <add namespace="Syncfusion.Mvc.Shared"/>
        <add namespace="Syncfusion.Mvc.Schedule"/>
        <add namespace="Syncfusion.Mvc.Tools"/>
      </namespaces>
    </pages>
  </system.web.webPages.razor>
Run Code Online (Sandbox Code Playgroud)