Orchardcms 如何以编程方式禁用Orchard模块?
在Migrations.cs中,我想禁用一个模块(如果已启用),并启用另一个模块(如果尚未启用)。我该怎么做 我认为您应该看看Orchard工具:您可以启用和禁用功能,并获得已启用功能的列表。查看Orchard.Modules项目中的FeatureCommands.cs。希望这对您有所帮助。好的,我通过查看Orchard.Modules中的控制器和命令类了解到了这一点。首先,我必须向Orchard.Modules添加一个项目引用,然后在Migrations.cs中:Orchardcms 如何以编程方式禁用Orchard模块?,orchardcms,Orchardcms,在Migrations.cs中,我想禁用一个模块(如果已启用),并启用另一个模块(如果尚未启用)。我该怎么做 我认为您应该看看Orchard工具:您可以启用和禁用功能,并获得已启用功能的列表。查看Orchard.Modules项目中的FeatureCommands.cs。希望这对您有所帮助。好的,我通过查看Orchard.Modules中的控制器和命令类了解到了这一点。首先,我必须向Orchard.Modules添加一个项目引用,然后在Migrations.cs中: public int
public int UpdateFrom2() {
var features = _moduleService.GetAvailableFeatures().ToDictionary(m=>m.Descriptor.Id, m=>m);
if (features.ContainsKey("TinyMce") && features["TinyMce"].IsEnabled) {
_moduleService.DisableFeatures(new string[] { "TinyMce" });
}
if (features.ContainsKey("TinyMceDeluxe") && !features["TinyMceDeluxe"].IsEnabled) {
_moduleService.EnableFeatures(new string[] { "TinyMceDeluxe" });
}
return 3;
}
谢谢,这正是我最后要做的。只是想知道你是如何解决迁移中的_moduleService?在Orchard 1.9中似乎不起作用。当我尝试启用Orchard.Taxonomies时,它会在DB中进入状态
Rising
,从这时起,该功能将不再启用,也无法在Admin中启用。我需要重新启动Web服务器,以使模块进入状态Up
。奇怪。