我有一个安装了剃刀引擎包的项目(https://github.com/Antaris/RazorEngine)。我有多个模板,我无法编译其中的一些。错误总是一样的:
类型或命名空间名称' X'命名空间中不存在' Y'
我的项目不使用MVC。只有RazorEngine用于模板编译。不包含引用X的模板按预期工作。所有其他人都有这个问题。
如果我查看项目引用,我可以看到引用位于标记Copy Local to true。此外,在bin文件夹中,我还可以看到正在复制dll。由于某种原因,它没有被编译。
此RazorEngine库的情况类似吗?
最诚挚的问候。
答案 0 :(得分:0)
您必须在web.config中添加名称空间:
<system.web.webPages.razor>
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="My Namespace" />
</namespaces>
</pages>
</system.web.webPages.razor>
答案 1 :(得分:0)
发生的事情是RazorEngine无法找到某些命名空间(即使已引用)。在我的特定情况下,我有一些模板具有:
@using System.Linq
由于某些原因,此特定的RazorEngine程序包无法解释Linq命名空间。我要解决的问题是删除Linq引用,并将所有Linq表达式替换为正常的代码表达式。
此外,在其他一些视图中,我对项目引用存在一些问题,其中包括不支持的其他引用。这意味着System.Linq可能不是唯一不受支持的名称空间。