|
|
@@ -124,8 +124,12 @@ namespace System.ServiceModel.Dispatcher
|
|
|
DispatchRuntime db = this.DispatchRuntime;
|
|
|
if (!isCallback && se.Contract.CallbackContractType != null) {
|
|
|
var ccd = ContractDescriptionGenerator.GetCallbackContract (db.Type, se.Contract.CallbackContractType);
|
|
|
+ // FIXME: remove below line. It does not have to be refilled here. (CallbackBehaviorAttributeTest blocks its removal.)
|
|
|
db.CallbackClientRuntime = ccd.CreateClientRuntime ();
|
|
|
- db.CallbackClientRuntime.CallbackClientType = ccd.ContractType;
|
|
|
+ db.CallbackClientRuntime.CallbackDispatchRuntime = DispatchRuntime;
|
|
|
+ db.CallbackClientRuntime.CallbackClientType = se.Contract.CallbackContractType;
|
|
|
+ // FIXME: enable it. it should be the contract type, not the callback type.
|
|
|
+ // db.CallbackClientRuntime.ContractClientType = se.Contract.ContractType;
|
|
|
}
|
|
|
foreach (OperationDescription od in se.Contract.Operations)
|
|
|
if (!db.Operations.Contains (od.Name))
|