svcutil,WSDL和生成的接口不足以实现

Dav*_*vid 3 wcf wsdl code-generation interface svcutil.exe

我有一个WSDL文件,定义了我必须在WCF中实现的服务.我已经读过我可以使用WSDL文件中的svcutil生成代理,然后我可以使用生成的接口来实现服务.

不幸的是,我似乎找不到让接口包含正确属性来公开合同的方法.

所有操作都具有"OperationContractAttribute"属性,但看起来好像要公开服务,我需要每个操作"OperationContract"."ServiceContractAttribute"和"ServiceContract"也是如此,我想象DataContract,但我还没有那么远.

我可以手动进行这些更改,但我更喜欢一种可以轻松使用现有代码的技术,或者可以为我的用途生成更好的代码.有什么方法可以做到这一点?

谢谢.

编辑:

Microsoft Connect上的问题

使用的命令:

svcutil ObjectManagerService.wsdl /n:*,Sample  /o:ObjectManagerServiceProxy.cs /nologo
Run Code Online (Sandbox Code Playgroud)

代码示例:

public interface ObjectManagerSyncPortType
{

    // CODEGEN: Generating message contract since the operation createObject is neither RPC nor document wrapped.
    [System.ServiceModel.OperationContractAttribute(Action="http://www.sample.com/createObject", ReplyAction="*")]
    [System.ServiceModel.XmlSerializerFormatAttribute()]
    Sample.createObjectResponse1 createObject(Sample.createObjectRequest1 request);
    // ...
}
Run Code Online (Sandbox Code Playgroud)

尽我所知/看到WSDL文件完全是自包含的,不需要额外的XSD文件.

Dav*_*vid 6

事实证明,这ReplyAction="*"罪魁祸首.谢谢你的帮助.