此平台不支持 LocalDB
Posted
技术标签:
【中文标题】此平台不支持 LocalDB【英文标题】:LocalDB is not supported on this Platform 【发布时间】:2018-02-02 06:59:08 【问题描述】:我正在尝试在Ubuntu 17.04
上启动.Net Core 2.0
应用程序。我之前在 Windows 10 上开发过它,它运行良好。问题是当我运行dotnet ef database update
时,我得到了下一个异常:
System.PlatformNotSupportedException: LocalDB is not supported on this Platform.
这是我的DbContext
:
public class NutritionContext : DbContext
public DbSet<User> Users get; set;
public DbSet<Meal> Meals get; set;
public DbSet<Dish> Dishes get; set;
public DbSet<Product> Products get; set;
public DbSet<Plan> Plans get; set;
public DbSet<MealDish> MealDishes get; set;
public DbSet<Ingredient> Ingredients get; set;
public DbSet<PlanDetail> PlanDetails get; set;
public DbSet<UserPlan> UserPlans get; set;
public DbSet<AuthUser> AuthUsers get; set;
public NutritionContext()
public NutritionContext(DbContextOptions options) : base(options)
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
optionsBuilder.UseSqlServer(
"Server=(localdb)\\mssqllocaldb;Database=NutritionDatabaseNew;Trusted_Connection=True;MultipleActiveResultSets=true");
你知道这可能是什么原因吗?
【问题讨论】:
原因:“本平台不支持LocalDB。” 它是not possible。谁告诉你可以在 Ubuntu 上使用 localDB? 解决方法,不要在该平台上使用 LocalDB。请改用其他数据库提供程序。对此没有什么可以说或做的(你加入 Microsoft db 开发团队并添加功能以使 LocalDB 与该平台兼容) 好的,谢谢,我不知道我不能在 ubuntu 上使用 LocalDB 对不起?这怎么跑题了?当然,这是一个描述性错误,但在dotnet
等多平台工具上,该错误应该如何直观?我们应该如何知道没有缺少依赖项?
【参考方案1】:
LocalDb 是 SQL Server Express Edition 的一种打包机制,仅适用于 Windows。在 Ubuntu 上,您可以安装常规 SQL Server Express Edition。
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-overview
这里是Ubuntu、Red Hat 和SUSE 的安装脚本。
或者使用 Docker 镜像:
https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-docker
【讨论】:
对不起@david-browne-microsoft,你的意思是说“在 Ubuntu 上,你可以安装常规的 SQL Server E̶x̶p̶r̶e̶s̶s 版本。” ? LocalDb 是 Express Edition 的一种,但您可以使用 Linux 安装程序或 docker 映像安装任何版本。【参考方案2】:我从 Windows 机器切换到 MacBook Pro 时遇到了这个问题。正如其他人指出的那样,LocalDB 用于 SQL Server Express Edition。
要解决此问题,您需要安装 SQL Server 并使用 localhost 而不是 LocalDB。
【讨论】:
【参考方案3】:对于基于 Arch 的 Linux 系统,mssql-server 包似乎是要走的路。
【讨论】:
以上是关于此平台不支持 LocalDB的主要内容,如果未能解决你的问题,请参考以下文章