簡體   English   中英

Silverlight WCF / RIA MVVM屬性

[英]Silverlight WCF/RIA MVVM Property

我有一個內置在ViewModels中的Property,它是一個整數與一個集合。

    private int _formTypeID;
    public int FormTypeID
    {
        get { return _formTypeID; }

        set
        {
            if (_formTypeID == value)
            {
                return;
            }
            _formTypeID = value;
            RaisePropertyChanged("FormTypeID");
        }
    }

我想做的是從我的DomainContext查詢中加載它。 查詢如下所示:

    public int GetFormTypeByForm(int Formid)
    {
        var p = (from i in this.ObjectContext.Forms
                where i.FormID == Formid
                select i.FormType).FirstOrDefault();

        return p;
    }

但我似乎無法弄清楚該如何做。 我將使用此屬性加載特定於表單的數據,還將自定義列定義加載到XAML中。

有人知道怎么做嗎?

謝謝,

尼爾

集合中有父表格嗎? 如果是,您的查詢應該可以使用,只需改用SingleOrDefault

否則,您必須將表單加載到DomainContext:

private int _FormType;
public int FormType
{
  get { return _FormType; }
  set
  {
    if (_FormType == value) return;
    _FormType = value;
    RaisePropertyChanged("FormType");
  }
}

public void LoadFormTypeByForm(int Formid)
{
  var query = (from f in this.ObjectContext.Forms
               where f.FormID == Formid
               select f.FormType);

  var action = new Action<LoadOperation<Form>>((op) =>
    {
      if (op.HasError && !op.IsErrorHandled)
      {
        op.MarkErrorAsHandled();
        return;
      }
      var form = ObjectContext.Forms.SingleOrDefault(f => f.FormID == FormID);
      if (form != null)
        FormType = form.FormType;
    });
  Context.Load(query, action, null);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM