实体框架5不保存数组字符串

本文关键字:数组 字符串 保存 框架 实体 | 更新日期: 2023-09-27 18:18:58

我有一个简单的数组内部的模型使用实体框架5。数组不会保存在表中。

public class MyModel: IEntity
{
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int Id { get; set; }
    public IList<string> MyArray { get; set; }
}

配置

    DbContext.Configuration.ProxyCreationEnabled = true;
    DbContext.Configuration.LazyLoadingEnabled = true;
    DbContext.Configuration.ValidateOnSaveEnabled = false;
<<p> 初始化/strong>
internal class DatabaseInitializer : DropCreateDatabaseIfModelChanges<DatabaseContext>
{
    protected override void Seed(DatabaseContext context)
    {
        context.MyModels.Add(new MyModel {
           MyArray = new [] { "Value1", "Value2" }
        });
   }
}

任何提示为什么这不起作用。

实体框架5不保存数组字符串

不使用字符串数组,您也可以使用带有某种分隔符的简单字符串列,如';'或'|',任何东西都可以。只要确保在从数据库中检索数据时调用c# String即可。方法,传递与参数相同的分隔符。

例如:

string stringToBePersisted = "First Value|Second Value|Third Value";
string[] stringsRetrieved = columnValue.Split('|');