gpt4 book ai didi

c#:如何传递 linq 对象

转载 作者:太空狗 更新时间:2023-10-29 22:11:39 33 4
gpt4 key购买 nike

当显示我的主窗口时,我列出了来自 linq-to-sql 的对象:

 using (var context = new Data.TVShowDataContext())
{
Shows = new ObservableCollection<Data.Show>(context.Shows);
listShows.ItemsSource = Shows;
}

现在,当我双击列表中的项目时,我想在新的用户控件中使用所选对象:

 ShowEpList epList = new ShowEpList();
epList.DataContext = (Data.Show)listShows.SelectedItem;

现在,这会导致异常:

System.ObjectDisposedException was unhandled
Message="Cannot access a disposed object.\r\nObject name: 'DataContext accessed after Dispose.'."
Source="System.Data.Linq"
ObjectName="DataContext accessed after Dispose."

我想这是将列表绑定(bind)到节目季节列表的结果,并且需要填充季节列表或其他内容:

<ListBox Name="listSeasons" ItemsSource="{Binding Seasons}"/>

现在,我想知道这应该如何完成?我是否需要创建一个新的 DataContext 对象并再次检索所选节目,或者是否可以使用新的数据上下文重新连接我的节目以填充季节列表?

我想我有点迷路了......

最佳答案

不要在数据上下文中使用“using”语句。请引用这个帖子:Disposing DataContext

关于c#:如何传递 linq 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/773856/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com