我在ViewModel中从我的DataService调用方法时遇到问题。 问题是,我在DataServicd-Implementation中创建的每个方法都在我的ViewModel中获取Async,因此我无法从中获取任何数据。 我对WCF不太熟悉,所以我无法自己解决问题。
这是DataService-Interface:
[ServiceContract]
public interface IDataService
{
[OperationContract]
ObservableCollection<object> GetStartPageKPIObjects();
[OperationContract]
Object DoSomething();
}
这是我的DataService实施
public class DataService : IDataService
{
public ObservableCollection<object> GetStartPageKPIObjects()
{
ObservableCollection<object> tempItems = new ObservableCollection<object>();
.........tempItems.add(...)
.........tempItems.add(...)
return tempItems;
}
public object DoSomething()
{
return new Object();
}
}
这就是我获取DataService的对象引用的方法:
******.ServiceReference.DataServiceClient dataClient = new ******.ServiceReference.DataServiceClient();
现在,我想访问我的服务中的数据:
dataClient.GetStartPageKPIObjectsAsync();
dataClient.DoSomethingAsync();
但两人都返回(awaitable) Task<object>
!我现在如何从服务中获取数据?
答案 0 :(得分:0)
也有非异步方法,也许你没有看到它们。您可以在服务引用设置中关闭异步方法的生成。然后他们完全消失了。