怎么样在xaml的后台代码中 ,从RIA服务的方法中获取的数据集?

liupg_csd 2010-08-13 04:48:18
如题,ria服务绑定到页面很好用,但是我要想把它的数据集合处理下再绑定就获取不到数据,显示为null,
数据时什么时候加载的?我为什么在后台获取不了它的数据呢!请高手指教!!!
...全文
82 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
roamer2005 2010-08-17
  • 打赏
  • 举报
回复
我为什么lo.Entitys.Count()总是0?
liupg_csd 2010-08-14
  • 打赏
  • 举报
回复
非常感谢Jeotao,其实昨天下班前,通过你提示看了你的博客后解决了问题,但是没有及时回复你,
因为昨天我们部门聚餐没有登论坛,呵呵!
Sunpire 2010-08-13
  • 打赏
  • 举报
回复
呵呵,楼主又是一位不理解WCF RIA异步的朋友,好好跟 Jeotao 学习一下。
Joetao 2010-08-13
  • 打赏
  • 举报
回复
参照上面的链接!用LoadOperation就可以解决你的问题!你可以参考下面的代码。
void S_Loaded(object sender, RoutedEventArgs e)
{

//所以用如下方法:
LoadOperation<Student> lo = client.Load(client.GetStudentsQuery());
lo.Completed += new EventHandler(lo_Completed);
}

void lo_Completed(object sender, EventArgs e)
{
//假设你的实体名称 Student
LoadOperation<Student > lo = (LoadOperation<Student>)sender;
if(!lo.HasError)
{
if(lo!=null && lo.Entitys.Count()>0)
{
Student student=lo.Entity.FirstOrDefault(); //找到你要的实体就好办了

}
}

}

Joetao 2010-08-13
  • 打赏
  • 举报
回复
呵呵!你的这样不行的,RIA Service是异步的!下班了!等会跟你解决!
可以先看我的文章
http://blog.csdn.net/Joetao/archive/2010/07/15/5736437.aspx
liupg_csd 2010-08-13
  • 打赏
  • 举报
回复
我可能说的不太清楚,我把代码贴出来请大家给指点下:
CustomerSysDBContext CustSysDbContext = new CustomerSysDBContext();
CustSysDbContext.Load(CustSysDbContext.GetSys_MenusQuery());
treeViewMenu.ItemsSource = CustSysDbContext.Sys_Menus;


treeViewMenu是页面控件,这样没有问题,可以绑定数据,
但是我要是想在后台处理下数据源就会返回null ,比如
 var models = from model in CustSysDbContext.Sys_Menus.ToList()
where model.m_id == rootNodeValue
orderby model.m_power
select new
{
MPower = model.m_power,
MText = model.m_text,
MLevel = model.m_level,
MLInk = model.m_link,
MID = model.m_id
};

这是一部分代码,我跟踪了下 models 返回null,请大家看下我那里写错了,给想个办法,谢谢!
Joetao 2010-08-13
  • 打赏
  • 举报
回复
数据集合处理下,你做了怎么处理的?能不能说具体点呢?

8,738

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧