我试着做了以下几点:Product
型号:
public class Product : BaseEntity
{
public string Name { get; set; }
public string Description { get; set; }
private string _PictureUrls;
[NotMapped]
public string[] PictureUrls
{
get { return _PictureUrls.Split(','); }
set { _PictureUrls = string.Join(',', value); }
}
}
以及:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder
.Entity<Product>()
.Property(props => props.PictureUrls)
.HasField("_PictureUrls")
.UsePropertyAccessMode(PropertyAccessMode.PreferFieldDuringConstruction);
}
我一直收到错误:
类型为"string"的指定字段"_PictureUrls"不能用于类型为"string []"的属性"Product.PictureUrls"。只能使用类型与该属性类型兼容的支持字段。
我明白为什么,但不知道如何解决这个问题,请帮助。
1条答案
按热度按时间yvfmudvl1#
请考虑将PictureUrl设置为实体,但您所尝试的方法将有效。
字符串需要是字符串类型的影子属性,而不是Map到数组属性