如何在异步过程中将参数传递给WCF
问题描述:
我对此技术很陌生。我正在尝试使用MVVM(第一次)。在视图中,我有一个日期选择器绑定到ViewModel属性Calendardate(这工作)。 WCF测试客户端验证GetEncounterTimesAsync() - 没有参数 - 工作正常。我已将WCF服务查询更改为使用datetime参数。该模型是作为EntityFramework从数据库创建的。 (使用Telerik数据访问)。如何在异步过程中将参数传递给WCF
我搜索了互联网没有成功。我没有使用任何Web服务(据我所知)。
我在下面做了什么失败。
如何将参数从UI传递给WCF并对实体执行查询?
如果无法完成,如何通过WCF将参数化查询创建为EntityFramerwork?
我很困惑,任何帮助将不胜感激。
(我的系统:Visual Studio 2010中,Telerik的数据访问)
视图模型:
public MaintenanceFormViewModel()
{
this.Calendardate = DateTime.Now;
}
private void RefreshEncountertimes()
{
// manage results when the WCF service returns
this.serviceClient.GetEncounterTimesCompleted += (s, e) =>
{
this.Encountertimes = e.Result;
};
// call the WCF service
this.serviceClient.GetEncounterTimesAsync(Calendardate);
}
private DateTime calendardate;
public DateTime Calendardate
{
get
{
return this.calendardate;
}
set
{
this.calendardate = value;
this.OnPropertyChanged("Calendardate");
this.RefreshEncountertimes();
}
}
我的WCF服务:
[ServiceContract]
public class ChaosService
{
[OperationContract]
public IEnumerable<Encountertime> GetEncounterTimes(DateTime encountertime)
{
using (var context = new ChaosModel())
{
var query = from et in context.Encountertimes
where et.Tencounter.Date == encountertime.Date
select et;
var result = context.CreateDetachedCopy(query.ToList());
return result;
}
}
}
答
展开您的客户端项目的ServiceReferences。 右键点击ChaosService
。 选择更新服务参考。
您是否尝试过更新ServiceReference? – bit
如何更新ServiceReference? –
这是非常基本的,只是Google它 – bit