Entity Framework | Code First | Mapping of sub property from CultureInfo.Name

前端 未结 1 1570
醉梦人生
醉梦人生 2020-12-17 05:41

I\'ve got an entity like this :

public class Course {
    public CultureInfo Culture {get; set;}
    :
}

And I want to map just the N

相关标签:
1条回答
  • 2020-12-17 06:40

    Unfrotunatelly EF can't do it this way. The workaround is defining separate property with the Name which will be mapped to the database and marking your Culture property as not mapped.

    public class Course
    {
        public CultureInfo Culture { get; set; }
        public string CultureName 
        {
            get 
            {
                if (Cuture != null)
                {
                    return Culture.Name;
                }
    
                return null;
            }
            set
            {
                // same check for value can be placed here
    
                Culture = new CultureInfo(value);
            }
        }
    }
    

    And in mapping you will define:

    modelBuilder.Entity<Course>()
                .Ignore(c => c.Culture);
    
    0 讨论(0)
提交回复
热议问题