我试图在我的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
我的设置可能会出现什么问题?
答案 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())