Вы в одном поле собираетесь хранить целай массив? А потом, чтобы достать одно значение будете читать весь массив из поля?
Это не верный подход, но можно реализовать сериализацией массива в json при записи и при чтении - десериализацией. Например:
public class VmWord
{
public int Id { get; set; }
public string Name { get; set; }
public string Localization { get; set; }
[NotMapped]
public Dictionary<string, string> Localizations
{
get { return JsonConvert.DeseriazeObject<Dictionary<string, string>>(Localization.ToList()); }
set { Localization = JsonConvert.SerializeObject(value); }
}
}
Но верный подход будет по другому:
public class VmWord
{
public int Id { get; set; }
public string Name { get; set; }
public virtual List<string> Localizations { get; set; }
}
public class Localization
{
public int Id { get; set; }
public string Key { get; set; }
public string Value { get; set; }
public virtual VmWord VmWord { get; set; }
}
И достать по ключу потом:
context.VmWord.Localizations.FirstOrDefault(x => x.Key == key)?.Value;