EntityTypeBuilder 을 포함하지 않습에 대한 정의 ToTable EF Core

이 예제 코드는 다음과 같습니다:

using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using Models;

namespace MySampleNamespace
{
    public class MyDbContext : DbContext
    {
        public MyDbContext(DbContextOptions<MyDbContext> options)
            : base(options)
        {
        }

        public DbSet<User> Users { get; set; }

        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            new UserMap(modelBuilder.Entity<User>());
        }

        public class UserMap
        {
            public UserMap(EntityTypeBuilder<User> entityBuilder)
            {
                entityBuilder.ToTable("User");
                entityBuilder.Property(s => s.Username).HasMaxLength(15).IsRequired();
            }
        }
    }
}

었을 테스트하는 몇 가지 예를 들어 MS 웹사이트,하지만 나는't 찾 ToTable 방법입니다. 이 예에서 확인은 무엇 Using 및만 예를 사용하여했다는 Microsoft.EntityFrameworkCore 고객께서는 클래스 프로젝트를 위한 모델을 사용했다. 이 변경되었나요? 나는 어떻게 이 지?

질문에 대한 의견 (2)

설치Microsoft.EntityFrameworkCore.관계형는 올바른 솔루션으로 이반을 말합니다.

해설 (2)

Ivan&Mardoxx 이 올바른 것입니다.

나는 단지 설치Microsoft.EntityFrameworkCore.툴그런 다음 이 오류가 발생할 수 있습니다.

감지된 패키지 다운 그레이드:Microsoft.EntityFrameworkCore 에서 2.1.4 을 2.1.1. Reference 패키지를 직접 프로젝트에서 선택하는 다른 버전입니다. ->Microsoft.EntityFrameworkCore.Tools2.1.4->Microsoft.EntityFrameworkCore.디자인 2.1.4->Microsoft.EntityFrameworkCore.관계형 2.1.4->Microsoft.EntityFrameworkCore(>=2.1.4)->Microsoft.EntityFrameworkCore(>=2.1.1)

  1. 내가 업그레이드 Microsoft.EntityFrameworkCore 을 통해 nuget
  2. I did 설치 Microsoft.EntityFrameworkCore.도구는't 업을 위한ToTable,알 수 없는 경우에도 필요
  3. 나는 다음을 설치Microsoft.EntityFrameworkCore.관계형그리고 지금 그것을 해결
해설 (1)

이 문제이지만,필요로하지 않았 설치하려면:

Microsoft.EntityFrameworkCore.Relational

나는 단순히 종료한 대 2017 년에 다시 열어 솔루션입니다. 나는 다음과 같은 NuGet 패키지가 설치되어 있:

Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.Tools

다음과 같은 CLI 도구 참고:

Microsoft.EntityFrameworkCore.Tools.DotNet
해설 (0)

포팅에서 EF6 을 EFCore,우리는 이 문제를 해결합니다. 우리의 원인이었다.HasKey지금은 반환하는KeyBuilder.ToTable지 않't 운영습니다. 그래서를 반전하는 일.

Ie. 었:

mp.HasKey(m => m.Id)
  .ToTable("Table")

되었다:

mp.ToTable("Table")
  .HasKey(m => m.Id);
해설 (1)

필요한 추가 패키지를(nuget)Microsoft.EntityFrameworkCore.SqlServer 로 이 MS Sql 방법

해설 (0)

에 따라.순 코어 버전은 사용하고 있습니다. Microsoft.EntityFrameworkCore.도구입니다.DotNet만을 지원합니다.NetStandard>=2.0.

하는 경우.순 코어 버전은 4.6.1,업데이트Microsoft.EntityFrameworkCore을 2.0.0-preview1-최종과 함께 관련 EntityFramework Dll,그 다음 가까운 Visual Studio2017 년에 다시 열려 있습니다.

해설 (0)