Silverlight访问WCF服务时SoapHeader信息丢失

时间:2022-11-27 19:36:13

1. 为将ObservableCollection<Order> 初始化造成, 修改办法:

public void GetNoPagerAsync<TReturnType>(TMethodEnum methodEnum, EventHandler<ServiceAsyncCompletedEventArgs<TReturnType>> onCompletedCallBack, ObservableCollection<NCondition> whereCodition, ObservableCollection<NOrder> orderCondition, object userState)
{
//base.InvokeAsync(
// new BeginOperationDelegate((object[] inValues, System.AsyncCallback callback, object asyncState) => { return Channel.MethodBeginInvoke(ServiceMethodNames[methodEnum], inValues, callback, asyncState); }),
// new object[] { whereCodition, orderCondition },
// new EndOperationDelegate((System.IAsyncResult result) => { return new object[] { Channel.MethodEndInvoke<TReturnType>(ServiceMethodNames[methodEnum], result) }; }),
// new SendOrPostCallback((object state) => { if ((onCompletedCallBack != null)) { var e = state as InvokeAsyncCompletedEventArgs; onCompletedCallBack(this, new ServiceAsyncCompletedEventArgs<TReturnType>(e.Results, e.Error, e.Cancelled, e.UserState)); } }),
// userState);
if (orderCondition == null) orderCondition = new ObservableCollection<NOrder>();
AsyncMethod<TReturnType>(methodEnum, onCompletedCallBack, new object[] { whereCodition, orderCondition }, userState);
}

2. 程序未完全编译项目, 也会造成此问题.