C# 查询LINQ-找不到查询模式的实现

C# 查询LINQ-找不到查询模式的实现,c#,linq,C#,Linq,我在designer视图中创建了一个包含4列的表。我想手动添加其他列,因为它将根据数据库中存储的数据进行添加。 我想在DB的数据和表之间创建链接,所以我这样做了: private void LoadSiteDataSource() { CVaultDataSource.Rows.Clear(); if (this.Site != null) { var sitesDB = from sites in this.Site

我在designer视图中创建了一个包含4列的表。我想手动添加其他列,因为它将根据数据库中存储的数据进行添加。 我想在DB的数据和表之间创建链接,所以我这样做了:

private void LoadSiteDataSource()
{
    CVaultDataSource.Rows.Clear();

    if (this.Site != null)
    {
         var sitesDB = from sites in this.Site
                       select sites.KEY;

         foreach (var item in sitesDB)
         {
             CVaultDataSource.Rows.Add(item);
         }
    }
}
但我有一个错误:

找不到源类型System.ComponentModel.ISite的查询模式的实现。'选择“未找到”

我已经查看了有关此错误的不同主题,但找不到修复它的方法

我已经在使用这个功能,它可以工作:

private void LoadDataSource()
{
    CVaultDataSource.Rows.Clear();

    if (this.BaseFilters != null)
    {
        var filters = from filterBase in this.BaseFilters
                        orderby filterBase.EVPTCODE
                        select new object[] { filterBase.CVAULTCODE, filterBase.EVPTCODE, filterBase.EVPTDESIGNATION, filterBase.DURATION, filterBase.ETDTIME };

        foreach (var item in filters)
        {
            CVaultDataSource.Rows.Add(item);
        }
    }
}

有人知道它为什么不起作用吗?

我只是忘了声明:

public List<SITE> Sites { get; private set; } 

这就是它不起作用的原因。

删除这个现在已经解决的问题,或者在下面列出一个答案,详细描述你做错了什么以及解决方案是什么。对于新用户来说,第二种方法更可取,因为它不太可能与自动驾驶仪相提并论。有关更多信息,请访问。