从非Umbraco ASP.NET MVC站点

时间:2017-05-16 12:37:56

标签: asp.net-mvc umbraco

我维护一个复杂的ASP.NET MVC网站。我想添加显示帮助文本的能力。需要由非开发人员内容编写者输入和维护帮助文本。

我的计划是在我们的一台服务器上安装Umbraco,并给内容编写者登录,以便他们可以输入和维护帮助项目(每个帮助项目都是一个文档)。

然后当MVC站点获得特定位帮助文本的请求时,我希望它直接从Umbraco数据库中检索相应的文档,而不通过Umbraco站点。

我对Umbraco来说是全新的。是否有我可以在我的MVC站点中安装的dll或NuGet包,它允许它从Umbraco数据库中检索文档?

2 个答案:

答案 0 :(得分:2)

您可以通过不同方式执行此操作。

我可能会为Umbraco实现一个以异步方式返回内容的webapicontroller。

另一种可行的方法是将Umbraco.Core安装为MVC项目的nuget依赖项,并使用UmbracoHelper从Umbraco中检索内容。我之前从未尝试过这种方法,因此我不确定这是否有效。

答案 1 :(得分:2)

您真的不想直接与Umbraco数据库交谈。 Umbraco将数据库内容转换为可用于呈现页面的内容的快速缓存版本。

如果您只是尝试从数据库中获取内容,则会失去所有速度奖励。如果这是我,我要么在网站上创建一个Umbraco Web API控制器(如上面Mark建议的那样),你可以调用它来获取帮助,或者为你可以用AJAX调用的帮助页面创建模板来获取HTML。

你当然可以把它转过头来。 Umbraco有你可以加入的活动,所以如果你不希望你的其他网站直接与Umbraco网站对话,你可以挂钩发布活动并以某种方式将帮助内容推回到你的其他网站(你可以放例如,它进入你的主站点DB。