Entity Framework에서 다음과 같은 오류가 발생하며 그 원인을 파악할 수 없습니다.Entity Framework 4.1 잘못된 개체 이름
잘못된 개체 이름 'dbo.User'
데이터베이스의 실제 테이블 이름은 사용자라고 나는 마우스 오른쪽 버튼으로 클릭하고 선택 '데이터베이스에서 업데이트 모델'내가 주위에 다른 여섯이에 의해 내 엔터티 모델에 추가 모델은 복수형 테이블 이름을 갖고 동일한 문제없이 동일한 방식으로 업데이트되는 동일한 데이터베이스에 모두 연결되는 프로젝트입니다. 어떤 이유로 EF는 업데이트를 수행 할 때 테이블 이름에서 's'을 제거합니다. 아래의 코드에서 볼 수 있듯이 문제없이 작동하는 업데이트 전에 선택을 수행합니다.
또한 엔티티를 삭제하고 '생성 된 객체 이름을 Pluralize or singularize'를 선택 취소하여 다시 만들려고했습니다. 그러나 문제는 여전히 남아 있습니다.
어떤 아이디어라도 좋을 것입니다.
public void Update(User updatedUser)
{
using (var context = CreateUserContext())
{
var entity = context.UserEntities
.Where(u => u.UserId == updatedUser.UserId)
.SingleOrDefault();
if (entity != null)
{
entity.Name = updatedUser.Name;
entity.Description = updatedUser.Description;
entity.LastModifiedById = updatedUser.LastModifiedById;
entity.IsDeleted = updatedUser.IsDeleted;
context.UserEntities.ApplyCurrentValues(entity);
context.SaveChanges();
}
}
}
대단히 감사합니다. 나는 SQL 프로파일 러를 사용했고 업데이트로 모든 것이 잘 어울렸다. 다음 작업을 볼 수 있었고, 마지막 수정 시간 인 derrr !!을 업데이트하기 위해 테이블을 트리거했는지 잊어 버렸습니다 !! 다시 한번 감사드립니다. – Cragly
@Cragly, 도움이 되었기 때문에 기쁘게 생각합니다. 특히 애플리케이션의 다른 부분에 집중할 때 트리거에서 코드를 잊어 버리는 것이 쉽다는 것을 알고 있습니다. –