我被困住了。我想在数据网格中显示查询结果。
我有LinqToSQL类,名为:linq_to_sql.dbml
我有我的datagrid:
<DataGrid x:Name="list_clients"></DataGrid>
这是我的代码:
linq_to_sqlDataContext db = new linq_to_sqlDataContext();
var query = (from c in db.CLIENT select c);
list_clients.ItemsSource = query;
但是每次运行我的应用程序时,它都不起作用:System.InvalidCastException错误
答案 0 :(得分:2)
目前 echo '<tr>'.
'<td><input id="services" name="services[]" type="checkbox" value="$ser"' .($ser==1?'checked="on"':"").'/>'.
'<label for="services">'.$ser.'</label><br>'.
'</td></tr>';
不包含您的查询结果,它仍然以sql格式提供您的查询(您可以在此行放置一个断点并查看var query
的值),直到您转换此查询进入一些集合或数据表。要绑定网格,您需要集合类型或数据表。改变这一行:
query
到
list_clients.ItemsSource = query;
答案 1 :(得分:1)
我能够通过这样做填充你的DataGrid:
public WindowDemo01()
{
InitializeComponent(); // Make sure this occurs first so that your Datagrid is built before your ItemsSource is set.
var query = (from c in db.CLIENT select new { Name = c.Name });
list_clients.ItemsSource = query.ToList();
}
我使用了fieldname =&#34; Name&#34;因为这就是我的桌子。你可以用别的东西。您还可以返回多个字段。
确保数据库中的CLIENT表与datacontext设置的相同。您可能必须使用服务器资源管理器来获取所需内容。
我无法获得您遇到的System.InvalidCastException错误。我怀疑你的应用程序中可能还会发生其他事情。