Установите столбец строки в значение nullable в EF6

у меня есть модель, которую я создал bu EF6:

public partial class Comment
{
    [DisplayName("شناسه نظر")]
    public int Id { get; set; }

    [Required(ErrorMessage = "متن نظر را وارد کنید")]
    [DisplayName("متن نظر")]
    public string CommentText { get; set; }

    [DisplayName("تعداد پسندیدن ")]
    public long LikeCount { get; set; }

    [DisplayName("تعداد نپسندیدن")]
    public long DisLikeCount { get; set; }

    [DisplayName("تاریخ انتشار ")]
    public System.DateTime PublishDate { get; set; }

    [DisplayName("وضعیت نمایش ")]
    public string Visible { get; set; }

    [DisplayName("نام کاربری ")]
    public Nullable<string> AutherUserName { get; set; }

    [DisplayName("شناسه نظراصلی")]
    public Nullable<int> CommentFKId { get; set; }

    [DisplayName("شناسه کاربر")]
    public Nullable<int> StudentId { get; set; }

    [DisplayName("شناسه محتوا ")]
    public Nullable<int> ContentId { get; set; }

    public virtual Comment Comments { get; set; }
    public virtual Comment Comment1 { get; set; }
    public virtual Student Student { get; set; }
    public virtual Content Content { get; set; }
}

Как вы можете видеть у меня есть несколько тип nullable int столбцы в моей модели, но я не могу установить столбец строки в null:

public Nullable<string> AutherUserName { get; set; }

и я получил эту ошибку :

тип "string" должен быть ненулевым типом значения, чтобы использовать его в качестве параметра " T " в системе универсального типа или метода.Допускающий значение null,'

Я работаю с MVC4

1 ответов


строки являются ссылочными типами, поэтому уже "nullable". Только типы значений (например, int) могут быть nullable, поскольку иначе они не могут быть null.