我正在使用ASP.NET MVC 6和Entity Framework 7。
我的模特:
public class Contact {
public int[] SelectedEstimator { set; get; }
}
我收到以下错误:
System.InvalidOperationException: The property 'SelectedEstimator'
on entity type 'ContactsManagerV3.Models.Contact'
has not been added to the model or ignored.
如果我将SelectedEstimator属性更改为int,则它可以正常工作。我如何让int []工作?
答案 0 :(得分:2)
您无法创建int[]
类型的列(实际上不能是任何类型的数组),这是您尝试使用SelectedEstimator
属性执行的操作。您可以按照这个答案(How to store double[] array to database with Entity Framework Code-First approach)将数组转换为字符串以保存数组,然后从字符串转换为数组以获取它,或者您可以执行以下操作:
public class Estimator{
public int EstimatorId {get;set;}
public int Value {get;set;}
public int ContactId {get;set;}
public Contact Contact {get;set;}
}
public class Contact {
public int ContactId {get;set;}
public ICollection<Estimator> SelectedEstimator { set; get; }
}
现在,您可以选择Estimator.Value
来完成所需的操作。希望它有所帮助