C# Slsvcutil生成不完整的代理
一段时间以来,我一直在使用Slsvcutil为我的WCF服务生成代理,这将与Xamarin.ios兼容。我从来没有遇到过问题。然而,今天,我试图更新我的代理,结果合同不完整 以前我会使用命令行:C# Slsvcutil生成不完整的代理,c#,wcf,slsvcutil,C#,Wcf,Slsvcutil,一段时间以来,我一直在使用Slsvcutil为我的WCF服务生成代理,这将与Xamarin.ios兼容。我从来没有遇到过问题。然而,今天,我试图更新我的代理,结果合同不完整 以前我会使用命令行: “C:\Program Files(x86)\Microsoft SDK\Silverlight\v5.0\Tools\\slsvcuti.exe” http://localhost/Service.svc /输出:Service.cs 它将生成一个数据合约服务。现在它生成了一个只包含XmlSerial
“C:\Program Files(x86)\Microsoft
SDK\Silverlight\v5.0\Tools\\slsvcuti.exe”
http://localhost/Service.svc /输出:Service.cs
它将生成一个数据合约服务。现在它生成了一个只包含XmlSerialization属性的服务文件——这显然对我不起作用
因此,我修改了命令行参数以强制DataContract序列化:
“C:\Program Files(x86)\Microsoft
SDK\Silverlight\v5.0\Tools\\slsvcuti.exe”
http://localhost/Service.svc /mc/序列化程序:DataContractSerializer
/输出:Service.cs
这正确地导致了DataContract序列化,但是,我的C#代理完全忽略了所有消息契约(我认为/mc
应该修复这些契约)。所有的方法签名都接受“object”作为参数,在以前它们是正确的,完全契约,描述所有参数成员
我能看到的唯一区别是运行时的版本已更改。。。(如生成的代理文件标题中所标记):
以前
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.18449
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//
//这段代码是由一个工具生成的。
//运行时版本:4.0.30319.18449
//
//对此文件的更改可能会导致不正确的行为,如果
//重新生成代码。
//
//------------------------------------------------------------------------------
之后
//------------------------------------------------------------------------------
//
//这段代码是由一个工具生成的。
//运行时版本:4.0.30319.34014
//
//对此文件的更改可能会导致不正确的行为,如果
//重新生成代码。
//
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.34014
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------