我正在尝试用我的数据库中的数据填充数据网格(称为dgDeelnemers),我使用以下LINQ方法。
[OperationContract]
public IEnumerable<Inschrijvingen> getInschrijvingen()
{
var query = (from p in dc.Inschrijvingens select p);
IEnumerable<Inschrijvingen> i = query;
return i;
}
然后我使用以下代码将数据分配给视图中的datagrid。
public partial class Deelnemers : UserControl
{
public Deelnemers()
{
InschrijvingenServiceClient client = new InschrijvingenServiceClient();
client.getInschrijvingenCompleted += new EventHandler<getInschrijvingenCompletedEventArgs>(client_getInschrijvingenCompleted);
client.getInschrijvingenAsync();
}
void client_getInschrijvingenCompleted(object sender, getInschrijvingenCompletedEventArgs e)
{
if (e.Error != null)
lblDeelnemers.Content = e.Error.ToString();
else
dgDeelnemers.ItemsSource = e.Result;
}
}
但是当我导航到该页面时,我收到以下错误:
对象引用未设置为对象的实例。在 OndernemersAward.Views.Deelnemers.client_getInschrijvingenCompleted(对象 sender,getInschrijvingenCompletedEventArgs e)at OndernemersAward.InschrijvingenServiceReference.InschrijvingenServiceClient.OngetInschrijvingenCompleted(对象 状态)
我不确定是什么造成了这种情况,但我认为“我”的回报值是正确的。
感谢您抽出宝贵时间阅读并帮助我,我非常感谢! 托马斯
答案 0 :(得分:1)
您没有InitializeComponent()
(取自我的评论):)
答案 1 :(得分:0)
您确定在事件发生时您的控件已呈现?看起来lblDeelnemers
或dgDeelnemers
为空。也许在控件加载完成之前不要调用client.getInschrijvingenAsync();
。