将 Umbraco 7 集成到现有的 MVC 4 Web 应用程序中

Koj*_*oja 3 c# asp.net-mvc umbraco asp.net-mvc-4

这个回答表明应该在现有的 MVC 应用程序旁边为 Umbraco 内容管理创建一个新项目。我按照建议创建了新项目,并通过 NuGet 将 Umbraco 安装到其中。

所以现在我有 2 个项目,一个用于我的 MVC 应用程序,一个用于 CMS。两者都按预期工作,这意味着我可以在构建新创建的 Umbraco 项目后通过 Umbraco UI 添加内容。

我的问题是,如何从 MVC 应用程序内部查询内容以便在我的视图中显示可管理的内容?似乎可以通过Umbraco REST API 完成,但是由于两个数据库(用于 MVC 应用程序和 CMS 应用程序)将驻留在同一服务器上,这似乎效率不高。

csh*_*ore 5

传统上,Umbraco 的问题之一是它不是纯 MVC 架构。这意味着人们有时会相信他们将能够实施 100% MVC 解决方案,然后只需通过 Umbraco 管理他们的内容。

坏消息是,到目前为止,您已经发现了 Umbraco 的主要问题。也就是说,它不使用标准的 MVC 渲染引擎来渲染东西。它必须使用自定义控制器来检索视图模型,例如SurfaceControllers或 UmbracoApiControllers(如使用 REST 服务返回页面数据的示例所述)。

好消息是情况正在好转。7.3.0 版将是第一个与 MVC 5 作为标准捆绑在一起的版本。在此处查看测试版,看看它是否更适合您的需求。当然,您可能也需要将 MVC 项目升级到 MVC 5。

希望 7.3.0 你会很好。