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

标签 c# asp.net linq

我有一个在 Page_Load 上填充 GridView 的 linq 查询。我为字母表制作了一个 for 字符循环。在填充 LinkBut​​tonLinkBut​​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 Id 和 Name 的列表,并从输出中绑定(bind)该列表 像这样。

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

关于c# - 匿名类型出现在两个错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15226973/

相关文章:

c# - 如何编写更复杂的 LINQ 查询

c# - 枚举比手动检查不同的变化更便宜时,是否在比较期间将 1,000 多个字符串转换为小写?

c# - 读取excel表的问题

c# - 用于 concat 的 FFmpeg 管道输入

c# - HttpContext.Current.Request.Url.Host 返回不正确的值

c# - 指定的包含路径无效。 EntityType 'SpiceShop.Models.Product' 未声明名称为 'Products' 的导航属性

c# - PLinq 的存储库模式

asp.net - 在同一请求中调用PasswordSignIn和SendTwoFactorCode

javascript - JQuery .on ("mouseover") 方法不适用于 IE

c# - 扩展 IDictionary<Key, IEnumerable<Value>>