我有一个在 Page_Load
上填充 GridView
的 linq 查询。我为字母表制作了一个 for
字符循环。在填充 LinkButton
的 LinkButton
的 .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/