我刚开始学silverlight,想从silverlight应用中获得数据库表中的数据。
我按MSDN上的方法
http://msdn.microsoft.com/zh-cn/library/ee707376%28v=vs.91%29.aspx
这个应该是同步的吧,我运行后,datagrid中列名已经显示出来了,但是没数据
然后我上网又找的异步的方法,就是类似这样的
private SysUserDomainContext _sysuserContext = new SysUserDomainContext();
LoadOperation<SysUser> loadOp = this._sysuserContext.Load(this._sysuserContext.GetSysUserQuery());
loadOp.Completed += new EventHandler(loadOp_Completed);
然后我附加进程调试,断点进loadOp_Completed了,
void loadOp_Completed(object sender, EventArgs e)
{
LoadOperation<SysUser> lo = (LoadOperation<SysUser>)sender;
CustomerGrid.ItemsSource = lo.Entities.ToList();
}
lo.Entities的Count也是0
但是我表里确实有1条记录,不知道为什么查不出来。
还有Web那个项目,我不知道怎么断点跟踪,我应该怎么排查
------解决方案--------------------------------------------------------
CustomerGrid.ItemsSource = lo.Entities.ToList();
记忆中好像是不用+“ToList”的。
还有要看看那个GetSysUserQuery()里面有没有写错之类
------解决方案--------------------------------------------------------
LoadOperation<SysUser> lo = (LoadOperation<SysUser>)sender;
CustomerGrid.ItemsSource = lo.Entities.ToList();
这个改成CustomerGrid.ItemsSource = this._sysuserContext.SysUser 试试.