我有一个内置在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);
}
关于silverlight - Silverlight WCF/RIA MVVM属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8896238/