【发布时间】:2015-02-12 18:11:51
【问题描述】:
试图让 ASP.NET 5 网站与 MongoDB C# 驱动程序集成,但遇到了一些问题。
首先,此处列出的示例http://docs.mongodb.org/ecosystem/drivers/csharp/ 都被标记为已过时。
其次,当我尝试构建时,我遇到了非常奇怪的编译错误(找不到类型或命名空间),即使在 IDE 中看起来一切正常。
这是我非常基本的 HomeController.cs
using Microsoft.Framework.DependencyInjection;
using Microsoft.AspNet.Mvc;
using MongoDB.Driver;
using System;
namespace Docker.Web.Controllers
{
public class HomeController : Controller
{
private AppSettings _appSettings;
public HomeController(IServiceProvider serviceProvider)
{
_appSettings = serviceProvider.GetService<AppSettings>();
}
public IActionResult Index()
{
var server = new MongoClient(_appSettings.MongoConnection).GetServer();
var database = server.GetDatabase(_appSettings.MongoDatabase);
return View();
}
}
}
主要问题是我可以在 ASP.NET 5 中使用 C# MongoDB 驱动程序吗?
使用 Visual Studio 2015 预览版并针对 KRE 版本KRE-CoreCLR-x86.1.0.0-beta2
非常感谢任何帮助!
【问题讨论】:
-
请查看重复的问题,我认为您遇到了同样的问题 - MongoDB 仅适用于桌面 CLR (
aspnet50)。基本上,您的代码对于 DesktopCLR 构建良好,而对于 CoreCLR 则失败。 -
你不能从 coreclr 引用它,除非这个包是用 coreclr 支持构建的。我相信随着 aspnet5 越来越接近 RTM,我们会看到这种情况。但是,您仍然可以将它与 aspnet5 一起使用。
标签: mongodb-.net-driver asp.net-core