Orchardcms 来自不同模块的Orchard自定义模块返回视图

Orchardcms 来自不同模块的Orchard自定义模块返回视图,orchardcms,Orchardcms,我最近浏览了Pluralsight上的Advanced Orchard教程,它向我展示了扩展Orchard所能做的很多事情。也就是说,我想知道是否有一种方法可以让一个模块从另一个模块返回视图 这种情况下,我正在为我的客户机构建自定义模块,这些模块具有专有功能,因此我希望使用API密钥保护它们,类似于oForms的工作方式。我的和他们的唯一区别是,无论激活如何,它们都允许功能,而我的根本不起作用,因此我希望有一个基本模块,我的所有自定义模块都可以从中派生,每个模块都可以执行以下操作: if (th

我最近浏览了Pluralsight上的Advanced Orchard教程,它向我展示了扩展Orchard所能做的很多事情。也就是说,我想知道是否有一种方法可以让一个模块从另一个模块返回视图

这种情况下,我正在为我的客户机构建自定义模块,这些模块具有专有功能,因此我希望使用API密钥保护它们,类似于oForms的工作方式。我的和他们的唯一区别是,无论激活如何,它们都允许功能,而我的根本不起作用,因此我希望有一个基本模块,我的所有自定义模块都可以从中派生,每个模块都可以执行以下操作:

if (this.IsActivated())
    return View("ViewFromThisModule")
else
    return View("NotActivatedViewFromBaseModule")

这背后的真正目的是,我不必将基本模块中使用的视图复制到每个自定义视图中,例如模块是否被激活。

根据Betrand的建议,我将使用单个模块来代替多模块路线。然后我不需要分享任何东西,因为整个事情都是独立的。

我认为即使是在区域之间的常规MVC上,你也无法做到这一点,而且这听起来并不是一个好主意。那么,从基本模块复制视图是最好的,还是你会如何实现这一点?我是MVC世界的新手(我做webforms已经8年了),所以我想确保我实现的任何模式都是合乎逻辑的,这样我就不会错误地学习这些东西了。是的。如果视图真的在这两种情况下都可用,人们会想,为什么会有两个模块?最终的目标是我自己的模块库,有20多个模块,所以我只是尽量减少重复。在这个目标中,为所有共享特性建立一个基本库似乎是合乎逻辑的。为什么不将特性放在单个模块中呢?