基本上,我有一个带有成员X和Y的服务器端类型“Foo”。每当我使用Visual Studio的“添加服务器引用”时,我会看到WSDL和生成的代理都向所有成员添加单词“Field”并更改第一个字母的外壳。 IE,“X”和“Y”被重命名为“xField”和“yField”。任何想法为什么发生这种情况?我无法弄清楚这种模式。为什么WCF有时会将“字段”添加到生成的代理类型的结尾?
详细信息 - 我有一个传统的ASMX Web服务,它暴露了“Foo”类型。我创建了一个新的WCF服务,它是旧Web服务的一个包装 - 新服务只是包装这些方法,并可能更新几个字段的值,但它暴露了完全相同的方法并返回完全相同的类型。我尝试了多次重新创建引用,并且每次都会重新命名我的字段:变量“STUFF”在wsdl和proxy中显示为“sTUFFField”。变量“X”暴露为“xField”等
有趣的是我无法弄清楚模式 - 然后。所以我无法弄清WCF为什么/何时重命名变量的模式。
有人知道吗?
重要吗?如果是这样,_how_是否重要? – 2009-07-22 13:13:31
它确实很重要。我有两个用例(对于内部用户和外部用户)。内部用户可以绕过我的包装服务并直接转到底层的传统服务(从而绕过登录需求)。外部用户必须通过包装服务并给它一个密码等。但是由于内部和外部服务现在给这些字段赋予不同的名称,所以我不能共享相同的代码来与这两种服务通信。我需要为每个服务编写不同版本的代码。 – tavistmorph 2009-07-22 14:07:07