什么是dataAnnotation属性用于使列具有单个字符

时间:2012-05-07 00:24:51

标签: sql-server-2008 entity-framework code-first

我可以使用什么DataAnnotation属性来使gander列在我的表中只有一个字符

public class Student
 {
      public int ID { get; set; }
      [Required, MaxLength(50)]
      public string Name { get; set; }
      [DataType(DataType.Date)]
      public DateTime Birthday { get; set; }

      public char Gander { get; set; }

 }

2 个答案:

答案 0 :(得分:0)

使用Column属性。

 public class Student
 {
      public int ID { get; set; }
      [Required, MaxLength(50)]
      public string Name { get; set; }
      [DataType(DataType.Date)]
      public DateTime Birthday { get; set; }

      [Column(TypeName = "NVARCHAR(1)")]
      public char Gander { get; set; }

 }

答案 1 :(得分:0)

这应该有效:

[MaxLength(1)]
public string Gender { get; set; }

问题在于char is not supported type在映射中并且没有更改EF核心以直接支持该类型或引入一些simple type mapping or mapped conversions您无法映射此类属性。