views:

428

answers:

2

I'm currently following the example at http://msdn.microsoft.com/en-us/library/cc807255.aspx when I add a service reference, that has an ISyncContract contract on my client side, there is a method that is missing some parameters

example: on my contract file:

[OperationContract(IsInitiating = false, IsTerminating = false)]
void GetKnowledge(out uint batchSize, out SyncKnowledge knowledge);

on my client side:

private ISyncContract proxy;
(...)
proxy.GetKnowledge(out batchSize);

has this happened to some one else? what am i doing wrong?

A: 

It is probably related to how you created the proxy, how you share types between client and server, or that someting is marked as private when it should be public.

Have a look at this video to see how to organize your project:

http://www.dnrtv.com/default.aspx?showNum=103

Shiraz Bhaiji
+1  A: 

If you dig a bit deeper you will find that your proxy calls GetKnowledge() of the provider and simply passes null as SyncKnowledge. Looks like the knowledge object does not need to be set at all.

You can't use use the SyncKnowledge in your contract because it is not serializeable.

Flo