Orchardcms 如何删除或重命名Orchard中的内容部分?
我给内容部分起了一个错误的名字,我想重新命名它。我尝试在解决方案中重命名这些类和所有调用,但没有成功。我甚至尝试从ShellFeatures表和迁移本身生成的表中删除条目,但这只会让事情变得更糟。现在,整个模块的功能无法识别。以前有人试过吗?我知道这是一个老问题,但我必须解决这个问题,这是我从谷歌得到的第一个结果 您可以删除Orchardcms 如何删除或重命名Orchard中的内容部分?,orchardcms,Orchardcms,我给内容部分起了一个错误的名字,我想重新命名它。我尝试在解决方案中重命名这些类和所有调用,但没有成功。我甚至尝试从ShellFeatures表和迁移本身生成的表中删除条目,但这只会让事情变得更糟。现在,整个模块的功能无法识别。以前有人试过吗?我知道这是一个老问题,但我必须解决这个问题,这是我从谷歌得到的第一个结果 您可以删除ContentPart,然后使用迁移重新添加它,例如: public int UpdateFrom3() { // remove the Accred
ContentPart
,然后使用迁移重新添加它,例如:
public int UpdateFrom3() {
// remove the AccreditationsPart part cleanly
ContentDefinitionManager.DeletePartDefinition(typeof (AccreditationsPart).Name);
enter code here
// re-add the AccreditationsPart again
ContentDefinitionManager.AlterPartDefinition(typeof (AccreditationsPart).Name,
cfg = > cfg
.Attachable()
.WithDescription("Adds a row of configurable accreditations to the content type"));
return 4;
}
您需要自定义更新编号以适应当前的migrations.cs
,还需要更改AlterPartDefinition
以匹配您想要的内容
警告:这仅用于解决您立即发现的问题。在迁移的第一部分中删除零件时,将丢失所有关联数据。如果您的代码已经在生产中运行,那么您将不得不使用另一种方法。如果您清除App_数据文件夹并启动一个新站点,它是否有效?我对清除App_数据文件夹犹豫不决。然后我必须从头开始我的网站。我已经把它的大部分设置好了,你可以把它剪下来粘贴到某个地方。只是看看它是否有效。然后可能使用导入/导出模块将数据拉入新安装。我想这只是一个尝试。如果您保留Sites\DefaultSite\SiteSettings.txt文件,您将不必重新设置您的站点,尽管从App_数据文件夹中删除所有其他内容是清除缓存设置并重新映射部件的一种方法。AlterPartDefinition之前的DeletePartDefinition似乎对我起到了作用,但这不会删除生产站点中的任何现有数据吗?是的,你是对的。我只是在想一个场景,在这个场景中,由于模块不工作,您会立即捕获它。我应该在主要答覆中指出这点。