Umbraco ApplicationContext.当前为空

Umbraco ApplicationContext.当前为空,umbraco,umbraco7,Umbraco,Umbraco7,我有一个MVC网站,我需要从Umbraco数据库中提取一些数据。我不需要任何翁布拉科的景色或任何类似的东西。我是翁布拉科核心图书馆的新手 我所做的是从我的web项目中创建对Umbraco.core dll的引用,并在我的web配置中将连接字符串添加到Umbraco数据库中。然后,我添加了一个方法来尝试检索一些数据 public IContentType GetBenefits() { var contentTypeService = ApplicationContext.Cur

我有一个MVC网站,我需要从Umbraco数据库中提取一些数据。我不需要任何翁布拉科的景色或任何类似的东西。我是翁布拉科核心图书馆的新手

我所做的是从我的web项目中创建对Umbraco.core dll的引用,并在我的web配置中将连接字符串添加到Umbraco数据库中。然后,我添加了一个方法来尝试检索一些数据

public IContentType GetBenefits() {

        var contentTypeService = ApplicationContext.Current.Services.ContentTypeService;
        var benefits = contentTypeService.GetContentType("Benefits");

        return benefits;
}
ApplicationContext.Current始终为空

我正在IIS Express下的本地开发PC上运行


是否需要执行其他操作来实例化Umbraco连接?

ApplicationContext。在这种情况下,Current
将始终为空,因为
ApplicationContext.Current
指的是Umbraco应用程序的当前运行实例。为了让实例运行,您需要配置、引导并运行完整的Umbraco安装

我认为单靠
Umbraco.Core
无法做到这一点,而为了连接到数据库而添加所有这些额外的库无论如何都是过分的

如果需要访问特定于Umbraco的数据库内容,那么最好的选择是向实际的Umbraco实例中添加一个,并使用Web API公开所需的数据

您可以直接连接到数据库,但是数据库已经很好地抽象和规范化了,因此,除非您只需要数据库中非常特定的数据,否则这是不值得的