我有一个非常简单的问题,因为我对这些OData的新东西很新:
如何在OData中使用BeginSaveChanges方法时传递SaveChangesOptions属性,这是我的代码和模式:
MoviesService.Container _proxy;
在构造函数中初始化_proxy,这是另一个代码:
private async void Save_Click(object sender, RoutedEventArgs e)
{
await SaveAsych();
}
private Task<DataServiceResponse> SaveAsych()
{
return Task.Factory.FromAsync<DataServiceResponse>(_proxy.BeginSaveChanges,
_proxy.EndSaveChanges, null);
}
答案 0 :(得分:2)
使用BeginSaveChanges时如何传递SaveChangesOptions属性 OData中的方法
使用lambdas:
private Task<DataServiceResponse> SaveAsych(SaveChangesOptions options)
{
return Task.Factory.FromAsync<DataServiceResponse>(
(asyncCallback, asyncState) =>
_proxy.BeginSaveChanges(options, asyncCallback, asyncState),
(asyncResult) =>
_proxy.EndSaveChanges(asyncResult), null);
}
答案 1 :(得分:0)
如果您收到委托类型错误,请确保使用正确的命名空间:
private Task<Microsoft.OData.Client.DataServiceResponse> SaveAsych(Microsoft.OData.Client.SaveChangesOptions options)
{
return Task.Factory.FromAsync<Microsoft.OData.Client.DataServiceResponse>(
(asyncCallback, asyncState) =>
c.BeginSaveChanges(options, asyncCallback, asyncState),
(asyncResult) =>
c.EndSaveChanges(asyncResult), null);
}