【发布时间】:2016-01-19 19:53:57
【问题描述】:
我的视图模型绑定到来自 WCF 服务的对象。使用ObservableObject.Set<> 时。我收到以下错误:
// Error: A property or indexer may not be passed as an out or ref parameter.
public string SomeProperty
{
get { return _wcfObject.SomeProperty; }
set { Set(nameof(SomeProperty), ref _wcfObject.SomeProperty, value); }
}
现在显然我不能这样做,而且这些尝试的变通办法也不起作用。
// Error: } expected
public string SomeProperty
{
get { return _wcfObject.SomeProperty; }
set {
ref string v = _wcfObject.SomeProperty;
Set(nameof(SomeProperty), ref v, value);
}
}
// Compiles, but property not updated.
public string SomeProperty
{
get { return _wcfObject.SomeProperty; }
set {
var v = _wcfObject.SomeProperty;
Set(nameof(SomeProperty), ref v, value);
}
}
如何在不从 WCF 服务包装对象的情况下使用 MVVMLight 进行这项工作?
【问题讨论】:
-
你的属性确实是一个方法。这就是为什么你不能将它作为
ref传递。 -
你可能会觉得这个question (and answer)很有启发性。
标签: c# wcf mvvm-light