我有一个列表框,当我从此列表框中选择一个名为 ListofKBrands1 的项目时,我收到以下错误消息:
ObjectContext 实例已被释放,不能再用于需要连接的操作。
在代码隐藏中,此错误的位置:
if (co.Company != null)
我的代码:
private void ListofKBrands1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
RSPDbContext c = new RSPDbContext();
if (ListofKBrands1.SelectedItem != null)
{
ListBoxItem item = ListofKBrands1.SelectedItem as ListBoxItem;
KBrand co = item.Tag as KBrand;
if (ListofKBrands1.SelectedItem != null)
txtNewKBrand.Text = co.Name;
else
txtNewKBrand.Text = "";
int count = 0;
if (co.Company != null)
{
foreach (string a in cbCompany.Items)
{
if (a == co.Company.Name)
cbCompany.SelectedIndex = count;
count++;
}
}
else
cbCompany.SelectedIndex = 0;
}
}
错误前:
我的 KBrand.cs:
public class KBrand {
[Key]
public int Id { get; set; }
public String Name { get; set; }
public virtual Company Company { get; set; }
public override string ToString() {
return Name;
}
}
公司.cs:
public class Company
{
[Key]
public int Id { get; set; }
public String Name { get; set; }
public override string ToString() {
return Name;
}
}
如果所选 KBrand 的公司为空,则不会出现此错误。但如果所选 KBrand 的公司不为空,我会出现此错误。我该如何解决此错误?提前致谢。