2

SQL Server CE에서 EF 코드를 먼저 사용합니다. 나는 다음과 같은 한 도메인 클래스 :SQL Server CE에서 EF 코드로 첫 번째로 nvarchar 데이터 형식을 사용하십시오.

public class User:BaseEntity 
{ 
    public User() 
    { 
     this.UserForms = new List<UserForm>(); 
     IsAdmin = false; 
     IsActive = true; 
    } 

    public string FirstName { get; set; } 
    public string LastName { get; set; } 
    public string UserName { get; set; } 
    public string Password { get; set; } 
    public bool IsAdmin { get; set; } 
    public bool IsActive { get; set; } 

    public virtual ICollection<UserForm> UserForms { get; set; } 
} 

및 다음 매핑 클래스 :

public class UserMap : EntityTypeConfiguration<User> 
{ 
     public UserMap() 
     { 
      // Primary Key 
      this.HasKey(t => t.Id); 

      // Properties 
      this.Property(t => t.FirstName) 
       .HasMaxLength(25) 
       .IsRequired(); 

      this.Property(t => t.LastName) 
       .HasMaxLength(30) 
       .IsRequired(); 

      this.Property(t => t.UserName) 
       .HasMaxLength(10) 
       .IsRequired(); 

      this.Property(t => t.Password) 
       .HasMaxLength(30) 
       .IsRequired(); 
     } 
    } 

EF 나를 위해 다음 표를 작성

enter image description here

EF하게 ntext 대신 nvarchar의를 사용 테이블 및 내가 다음과 같은 오류가 발생 응용 프로그램을 실행할 때 :

The ntext and image data types cannot be used in WHERE, HAVING, GROUP BY, ON, or IN clauses, except when these data types are used with the LIKE or IS NULL predicates

이 문제는 어떻게 해결할 수 있습니까?

+0

올바른 데이터베이스 파일을 확인하고 있습니까? – ErikEJ

+0

예. 데이터베이스 파일이 비어 있습니다. –

+0

전자 버전은 무엇입니까? 즉 속성으로 시도 했습니까? 최대 길이 (30)? – ErikEJ

답변

0

열 유형을 강제 설정하려고 했습니까?

this.Property(t => t.FirstName) 
.HasColumnType("nvarchar") 
.HasMaxLength(25) 
.IsRequired(); 
+0

나에게 효과가 없으며 EF로 ntext를 다시 만듭니다. –