我的数据库中有一个名为Impacts的表,它有两个名为的foring键 组件表中的cmpt_name和cmpt_reference。
我希望将一些数据添加到我使用Impact表创建的ObservableCollection中。 但我不能添加cmpt_name和cmpt_reference吗?
public ObservableCollection<Impact> ModelListe { get; set; }
private Impact model;
public Project_Questions_Window()
{
InitializeComponent();
ModelListe = new ObservableCollection<Impact>();
DataContext = this;
}
public void addData()
{
model = new Impact();
**model.Component.cmpt_name = comboBoxComponents.Text;**
model.impt_name = textBoxQuestion.Text;
**model.Component.cmpt_reference = comboBoxComponents.SelectedValuePath;**
ModelListe.Add(model);
}
我在突出显示的行中收到错误:
对象引用未设置为对象的实例。
任何人都可以告诉我如何解决它吗? 我正在使用实体模型数据库。
答案 0 :(得分:1)
当你新建Impact
个实例时,我很确定它还不包含Component
。所以model.Component
是这里的空对象。
我不知道您的业务逻辑,但我认为补救措施是从数据库中获取Component
并使用这些预先存在的组件填充组合框。现在,当您创建新的Impact
时,您没有设置其组件的名称,但是您设置了它的Compenent
属性:
model.Component = comboBoxComponents.SelectedValue;