Umbraco:CS0234类型或命名空间名称“TextPage”不存在。

3

我有一个基于Umbraco CMS的网站。目前该网站在另一个服务器上运行得很好,但是当我试图将其放到另一台服务器上时,它就不能正常工作了。

以下是错误详细信息:

编译错误

描述:在提供此请求所需的资源的编译过程中发生错误。请查看以下特定错误详细信息并相应修改您的源代码。

编译器错误消息:CS0234:命名空间“Umbraco.Web.PublishedContentModels”中不存在类型或命名空间名称“TextPage”(是否缺少程序集引用?)

源错误:

第40行:
第41行:
第42行:public class _Page_Views_TextPage_cshtml : Umbraco.Web.Mvc.UmbracoTemplatePage { 第43行:
第44行: #line hidden

我只是不明白为什么它不能运行,而它们都是相同的。

这是我所做的步骤: 1. 我尝试将 <add key="Umbraco.ModelsBuilder.ModelsMode" value="PureLive" /> 更改为 <add key="Umbraco.ModelsBuilder.ModelsMode" value="Dll" />,但它不起作用。 2. 我已经将应用程序池设置为与之前正在运行的服务器相同的.NET 4.5。

希望你能帮助我解决这个问题。非常感谢。:-)

enter image description here

3个回答

1
尝试前往/umbraco#/developer,并导航到模型生成器选项卡。有时当您单击生成模型时,可能会弹出一个错误提示框,该框可能有助于解释为什么会发生任何错误。
另外还值得检查日志,看看是否有任何与模型生成器相关的错误。

谢谢,但我现在看到问题了。我没有在我的服务器上设置权限,使其可以被公众访问...现在问题已经解决了。谢谢。 - Martin Lloyd Jose

0

看起来这是一个与ModelsBuilder相关的问题。

你的网站是否可能没有名为TextPage的文档类型?

ModelsBuilder会为Umbraco中的每个文档类型创建一个模型,所以如果该文档类型不存在,它就不会为其创建模型!


有一种名为TextPage的文档类型,所有页面类型都无法工作。再次,在以前的服务器上它可以正常工作,但是现在当我试图将其迁移到另一个服务器时,它不再工作。所有服务器端的属性都与旧服务器相同,所以我不明白为什么它不能运行。 - Martin Lloyd Jose

0

这是答案

我没有在我的服务器上设置权限。

你需要做的是右键点击文件夹并将其安全性设置为每个人,尽管这样做可能不太合适。但是为了实验目的,你可以先设置它,稍后再进行管理。

暂时来说,你可以将其设置为每个人都可以访问,现在它应该可以正常工作了。


在这个上下文中,“the folder”是指哪一个文件夹?是那个统治所有文件夹的唯一真正的文件夹吗? - Cowborg
如果你正在使用IIS。找到公共文件夹,然后选择包含所有文件的文件夹,在其上右键单击,进入安全选项卡,点击编辑,点击添加,输入要选择的对象名称:所有人,然后单击确定。将所有权限设置为允许。单击确定,然后关闭。这样就可以正常工作了。那就是我的做法。 - Martin Lloyd Jose
谢谢你的回答。我正在使用 IIS Express,在 app_data 文件夹上设置了权限(Everybody),这样就可以工作了。 - Cowborg
不错,太棒了。 :-) - Martin Lloyd Jose

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接