Author: atsushi
Date: 2008-02-14 09:11:54 -0500 (Thu, 14 Feb 2008)
New Revision: 95631
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel/ChangeLog
trunk/olive/class/System.ServiceModel/System.ServiceModel/ChannelFactory_1.cs
Log:
2008-02-14 Atsushi Enomoto <[EMAIL PROTECTED]>
* ChannelFactory_1.cs : populate ClientOperations before applying
IEndpointBehavior and IContractBehavior so that they can access to
ClientOperations.
Modified: trunk/olive/class/System.ServiceModel/System.ServiceModel/ChangeLog
===================================================================
--- trunk/olive/class/System.ServiceModel/System.ServiceModel/ChangeLog
2008-02-14 14:05:07 UTC (rev 95630)
+++ trunk/olive/class/System.ServiceModel/System.ServiceModel/ChangeLog
2008-02-14 14:11:54 UTC (rev 95631)
@@ -1,3 +1,9 @@
+2008-02-14 Atsushi Enomoto <[EMAIL PROTECTED]>
+
+ * ChannelFactory_1.cs : populate ClientOperations before applying
+ IEndpointBehavior and IContractBehavior so that they can access to
+ ClientOperations.
+
2008-02-14 Igor Zelmanovich <[EMAIL PROTECTED]>
* ServiceContractAttribute.cs: fixed public API
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel/ChannelFactory_1.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel/ChannelFactory_1.cs
2008-02-14 14:05:07 UTC (rev 95630)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel/ChannelFactory_1.cs
2008-02-14 14:11:54 UTC (rev 95631)
@@ -139,17 +139,18 @@
ClientRuntime proxy = new ClientRuntime (se);
proxy.ContractClientType = typeof (TChannel);
+ foreach (OperationDescription od in
se.Contract.Operations)
+ if (!proxy.Operations.Contains (od.Name))
+ PopulateClientOperation (proxy, od);
+
foreach (IEndpointBehavior b in se.Behaviors)
b.ApplyClientBehavior (se, proxy);
foreach (IContractBehavior b in se.Contract.Behaviors)
b.ApplyClientBehavior (se.Contract, se, proxy);
- foreach (OperationDescription od in
se.Contract.Operations) {
- if (!proxy.Operations.Contains (od.Name))
- PopulateClientOperation (proxy, od);
+ foreach (OperationDescription od in
se.Contract.Operations)
foreach (IOperationBehavior ob in od.Behaviors)
ob.ApplyClientBehavior (od,
proxy.Operations [od.Name]);
- }
return proxy;
}
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches