inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

해외취업 ASP.NET Core 웹개발 기본 강좌

Seed 데이타베이스

개체 이름 'Teachers'이(가) 유효하지 않습니다.

해결된 질문

362

은하수

작성한 질문수 11

0

예외가 발생했는데 잡을 수가 없습니다.

예외 내용입니다. ===

System.AggregateException

HResult=0x80131500

메시지=One or more errors occurred. (개체 이름 'Teachers'이(가) 유효하지 않습니다.)

소스=System.Private.CoreLib

StackTrace:

at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)

at System.Threading.Tasks.Task.Wait()

at FirstApp.Startup.Configure(IApplicationBuilder app, IHostingEnvironment env, DbSeeder seeder) in X:1.Git1.SourceUTILFirstAppFirstAppStartup.cs:line 51

내부 예외 1:

SqlException: 개체 이름 'Teachers'이(가) 유효하지 않습니다.

다음은 에외가 발생한 소스 코드입니다. ===

namespace FirstApp.Data

{

public class DbSeeder

{

private FirstAppContext _context;

public DbSeeder(FirstAppContext context)

{

_context = context;

}

public async Task SeedDatabase()

{

if(!_context.Teachers.Any()) ===> 에러 발생 위치

{

List<Teacher> teachers = new List<Teacher>()

{

new Teacher(){Name = "세종대왕", Class="한글"},

new Teacher(){Name = "이순신", Class="해상전략"},

new Teacher(){Name = "제갈량", Class="지략"},

new Teacher(){Name = "을지문덕", Class="지상전략"},

};

await _context.AddRangeAsync(teachers);

// await _context.AddAsync(new Teacher() {Name = "세종대왕", Class = "한글"});

await _context.SaveChangesAsync();

}

}

}

}

namespace FirstApp.Data

{

public class FirstAppContext : DbContext

{

public FirstAppContext(DbContextOptions options) : base(options){}

public DbSet<Student> Students { get; set; }

public DbSet<Teacher> Teachers { get; set; }

}

}

강좌를 돌려보며 몇번을 확인했지만 다른 부분을 찾을 수가 없습니다.

if(!_context.Teachers.Any())

부분에서 에러가 발생하고 호출한 위치로 이동합니다.

ASP.NET-Core

답변 1

1

SEJONG IT EDU

https://drive.google.com/file/d/1Goz0LT28FiPJvPZZliqXhc8Ks4xD9yYv/view

여기서 완성된 프로젝트 다운받으셔서 실행시키시고 기존에 있는 DB 삭제하시기 바랍니다.

그리고 다운받은 프로젝트의 Startup.cs에서

seeder.SeedDatabase().Wait();

이 부분 잠시 주석처리하시구요. // seeder.SeedDatabase().Wait();

cmd 여셔서 업데이트 마이그레이션 커맨드 실행합니다.

dotnet ef database update

그 후 다시 Startup.cs파일로 가셔서 주석처리한 부분 다시 복구시키고 앱 실행해보세요.

마이그레이션 오류

0

329

0

Identity 관련 질문

0

278

0

net core 2.1 버전에는 없는건가요

0

299

0

Identity 계정 생성 로직 강의에서 Register() 함수 호출 오류 문의

0

395

1

DbContext 상속

0

292

0

razor syntax 질문

0

341

0

마이그레이션 문제 질문

0

355

1

강의할때 코드 크게 보여주실수 있나요 ...

0

332

1

윈도우 10에서 배포하는 방법 문의

0

263

0

UseSqlServer 오류

0

1047

5

[Authorize] 헤더

0

257

1

dotnet ef database update 문제

0

224

0

MVC 패턴 순서

0

298

0

폴더명은 항상 정해져있나요?

0

215

0

HTTP Error 500.30 - ANCM In-Process Start Failure

0

1199

2

Add 함수와 Save를 따로 만드는 이유가 있을까요?

0

291

1

UseMvc 안됨(core 3.0)

0

410

4

값이 넘어왔는지 찍어보는 거요..

1

329

3

널참조 에러

0

371

1

ValidateAntiForgeryToken를 쓰는 이유

0

865

3

아무리 해도 안되네요.

0

312

3

sqlserver가 MSSQLLocalDB가 없어요

0

253

1

AddScoped, AddTransient, AddSingleton 차이점

0

701

1

엔티티 프레임워크를 아마존 rds랑 연동하고 싶습니다.

0

187

1