none
请问DomainSerivices什么时候加载成功啊! RRS feed

  • 问题

  • 我给DomainServices起的名字是EquityDomainServices

    请问一下在Silverlight里面用的时候 EquityDomainContext 加载成功的事件是什么啊!

    EquityDomainContext   container = new EquityDomainContext();

    我找了半天只有一个事件

    container.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(equity_PropertyChanged);

     

     

     

     


    Static
    2010年5月21日 9:05

答案

全部回复

  • DomainService是Server端的类,DomainContext是Client端的类.

    DomainContext不是UI element,为什么会存在"加载"的问题呢? 你new的时候就建立了一个Instance阿.没明白你要找什么事件.

    2010年5月21日 18:39
  • EquityDomainContext equity=new EquityDomainContext;
    当我想要连接多张表查询的时候!应该如何写查询语句啊!
    var equity=from tp1 in this.equity.OperationTable from tp2 in this.equity.StaticUser where tp2.Id==tp1.Id select tp1;
    直接这么写会提示指定集合没有任何序列存在!


    像下面这样写就可以查询,不过这是为什么呢!

     EquityDomainContext equity=new EquityDomainContext;
    LoadOperation<OperationTable> loadOp = this.equity.Load(this.equity.GetOperationTableQuery());
    LoadOperation<StaticUser> loadOp1 = this.equity.Load(this.equity.GetStaticUsersQuery());
    loadOp.Completed += new EventHandler(loadOp_Completed);
    loadOp1.Completed += new EventHandler(loadOp1_Completed);
    void loadOp_Completed(object sender, EventArgs e) {
                l1 = true;
                JiaZai();
    }
    void loadOp1_Completed(object sender, EventArgs e)
     {
                l2 = true;
                JiaZai();
    }
     void JIaZai()

    {    

           if(l1==true && l2==true)
            {

                 var equity=from tp1 in this.equity.OperationTable from tp2 in this.equity.StaticUser where tp2.Id==tp1.Id select tp1;  

            }

     }  


    Static
    2010年5月24日 5:35
  • "为什么"? ....

    这个就是这么设计的啊....

    RiaService的数据都需要通过Load的方法从Server端获取,并在Client端进行cache,

    你如果不Load,client端当然没有数据,Load以后就有咯...

    建议您多看些文档和例子,了解一下基本的机制.

    2010年5月24日 6:34
  • 刚才上边的就是在我看了文档之后写的!但是太费劲了!

    有没有一个属性表示我前面定义的几个load都加在成功的事件啊!


    Static
    2010年5月24日 8:42
  • em.. 没有.

    在client端,最好考虑使用DataBinding,这样Load结束后可以自动更新UI.

    象上一个例子, 你的Join操作为什么不在Server端做呢? 那样效率会更高些吧.

    需要再考虑一下如何充分利用Linq以及IQueryable

    2010年5月24日 21:00
  • 谢谢!  我在接着看资料学习区
    Static
    • 已标记为答案 StaticYu 2010年5月25日 8:09
    2010年5月25日 8:09