微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 匿名类型出现在两个错误

我有一个 linq查询,填充Page_Load上的GridView.我为字母表做了一个循环的字符.在填充LinkBut​​ton的LinkBut​​ton的.Command中,我使用查询中相同的参数运行一个非常相似的查询,并得到以下错误.

The type ‘<>f__AnonymousType2’ exists in both ‘ConcernContracts.dll’ and ‘System.Web.WebPages.Deployment.dll’

void lnkCharacter_Command(object sender,CommandEventArgs e)
{
    try
    {
        var lbtn = (LinkButton)lbl_Alphabet.FindControl("lnkCharacter" + e.CommandArgument);
        var id = lbtn.Text;

        using (var db = new dbDataContext())
        {
            var query = from n in db.tbl_Providers
                        where ((n.provider_Name.StartsWith(id)) && (n.provider_Deleted == false))
                        select new
                        {
                            n.ProviderId,n.provider_Name
                        };

            Grd_Provider.DataSource = null;
            Grd_Provider.DataSource = query;
            Grd_Provider.DataBind();
        }
    }
    catch (SystemException ex) { }
}

LoadGrid()是一样的,但它不使用.StartsWith()条件.
你有什么想法如何解决错误

错误不会引发异常,但不会为任一查询填充网格.错误在以下行中被发现:Grd_Provider.DataSource = query;

解决方法

更改网格数据源
Grd_Provider.DataSource = query.ToList();
Grd_Provider.DataBind();

或者创建具有两个属性Provider List和Name的List,并从输出绑定该列表
喜欢这个.

List<Entities> abc=query.ToList();
 Grd_Provider.DataSource =abc;
 Grd_Provider.DataBind();

原文地址:https://www.jb51.cc/csharp/95400.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐