Используя Rider
Я пытаюсь выполнить любой вид миграции.Я попытался использовать консоль, потому что Rider не определяет контекст модели.
<package id="Microsoft.EntityFrameworkCore.Sqlite" version="2.2.2" targetFramework="net472" />
<package id="Microsoft.EntityFrameworkCore.Sqlite.Core" version="2.2.2" targetFramework="net472" />
<package id="Microsoft.EntityFrameworkCore.Sqlite.Design" version="1.1.6" targetFramework="net472" />
<package id="Microsoft.EntityFrameworkCore.Tools" version="2.2.2" targetFramework="net472" developmentDependency="true" />
using System.Collections.Generic;
using Microsoft.Data.Sqlite;
using Microsoft.EntityFrameworkCore;
namespace WebApplication1.Models
{
public class Data : DbContext
{
public DbSet<Blog> Blogs { get; set; }
public DbSet<Post> Posts { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlite("Data Source=db.db");
}
}
Я открыл проект в VS и могу легко перенести и обновить базу данных.Проблема возникает, когда я пытаюсь вызвать любую команду на терминале в Rider
.Пробовал dotnet ef add
, dotnet ef migrations add AddProductReviews
, dotnet ef list
.Каждая попытка заканчивается ошибкой.
D: \ riderproject \ WebApplication1 \ WebApplication1 \ obj \ WebApplication1.csproj.EntityFrameworkCore.targets (4,5): ошибка MSB4006: существует циклическая зависимость вцелевой граф зависимостей, включающий цель "GetEFProjectMetadata".[D: \ rider project \ WebApplication1 \ Web Application1 \ WebApplication1.csproj] Невозможно получить метаданные проекта.Убедитесь, что это основанный на MSBuild проект .NET Core.Если вы используете пользовательские значения BaseIntermediateOutputPath или MSBuildProjectExtensionsPath, используйте параметр --msbuildprojectextensionspath.
Я удивлен, что могу легко мигрировать с помощью Visual Studio
, а не с консоли в Rider
.