【问题标题】:Filling dataGrid with LINQ returned IEnumerable?用LINQ填充dataGrid返回IEnumerable?
【发布时间】:2012-01-04 03:09:38
【问题描述】:

我正在尝试用我的数据库中的数据填充数据网格(称为 dgDeelnemers),我使用以下 LINQ 方法获得这些数据。

[OperationContract]
public IEnumerable<Inschrijvingen> getInschrijvingen()
{
    var query = (from p in dc.Inschrijvingens select p);

    IEnumerable<Inschrijvingen> i = query;

    return i;
}

然后我使用以下代码将数据分配给视图中的数据网格。

  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(对象 发件人,getInschrijvingenCompletedEventArgs e) 在 OndernemersAward.InschrijvingenServiceReference.InschrijvingenServiceClient.OngetInschrijvingenCompleted(对象 州)

我不确定是什么原因造成的,但我认为 'i' 的返回值是正确的。

感谢您花时间阅读并帮助我,非常感谢! 托马斯

【问题讨论】:

  • 您尝试将用户控件上方的代码放入另一个用户控件(即 SL 页面)还是页面本身?
  • 是的,它是一个用户控件,我正试图将其放入我的 Silverlight 主页面。 (我使用 urimapper 导航到它)
  • 我没有看到 InitializeComponent()
  • 谢谢,我确实错过了我的 InitializeComponent()。我一直在犯这些非常愚蠢的错误,人们一定认为我真的很愚蠢!再次谢谢你:)

标签: sql silverlight linq datagrid return


【解决方案1】:

你没有 InitializeComponent()

(取自我的评论):)

【讨论】:

    【解决方案2】:

    你确定你的控件在事件到来时已经渲染了吗?看起来 lblDeelnemersdgDeelnemers 为空。也许在控件完成加载之前不要调用client.getInschrijvingenAsync();

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-11
      相关资源
      最近更新 更多