在ASP.NET MVC Razor视图中无法解析Telerik命名空间

时间:2014-08-06 17:15:44

标签: c# asp.net-mvc razor telerik telerik-reporting

我试图在我的ASP.NET MVC 4应用程序(使用.NET 4.5框架)中呈现Telerik Reporting(Q2 2014 SP1 - 试用版),但出于某种原因" Telerik。&# 34;在ASP.NET MVC Razor视图中无法解析命名空间,尽管我可以访问" Telerik。"控制器中的命名空间。

Razor观点:

@using Telerik - error is in here
@Html.TelerikReporting() - error is in here

的Web.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.Routing" />
        <add namespace="Telerik.Reporting" />
        <add namespace="Telerik.ReportViewer.Mvc" />
      </namespaces>
    </pages>
  </system.web.webPages.razor>

我的ASP.NET MVC项目引用的Telerik库:

Telerik.Reporting
Telerik.ReportViewer.Mvc

我的设置可能会出现什么问题?

2 个答案:

答案 0 :(得分:2)

我解决了我的问题。

我一直在拼命尝试以下方法:在VS2012中运行解决方案,删除 bin obj 文件夹,将库从一个路径移动到另一个路径,重新启动计算机和VS无数次,一切都是徒劳的。

但是我注意到 Telerik.Reporting.dll Telerik.ReportViewer.Mvc.dll 没有被复制到我的 bin中文件夹。在Visual Studio中,我展开了&#34;引用&#34;,点击每个dll文件,然后转到每个dll&#34;属性&#34;并切换&#34;复制本地&#34;属于&#34; False&#34; to&#34; True&#34;。

我清理并重建了我的MVC项目,检查了Telerik dll文件是否出现在 bin 文件夹中,转到我的Razor视图并且@Html.TelerikReporting()工作了!

出于好奇,我切换了#34;复制本地&#34;属于&#34; True&#34; to&#34; False&#34;,重复其余的过程,@Html.TelerikReporting()仍然有效。我不知道Visual Studio或我的&#34; Professional&#34;是否存在问题。安装。

答案 1 :(得分:1)

你不应该

@using Telerik 

如果在web.config中导入了适当的名称空间。有时,为了让您的Razer视图在最初添加后获取web.config命名空间,您需要因某种原因重新启动visual studio。

我会验证&#34; Telerik&#34;是您尝试访问的TelerikReporting方法的适当命名空间。

此外,您遇到语法错误:

@Html.TelerikReporting()

应该(可能)

@(Html.TelerikReporting())