首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#在XmlType()属性中使用特殊字符转义XmlType名称

C#在XmlType()属性中使用特殊字符转义XmlType名称
EN

Stack Overflow用户
提问于 2016-12-14 13:54:05
回答 1查看 38关注 0票数 0

我需要在不使用WSDL的情况下实现和SOAP服务(因为它坏了,而且不会被修复)。现在im停留在需要为某些类(基类和派生类)设置类型属性的点上。

通常我的DTO都是这样装饰的:

BaseClass:

代码语言:javascript
复制
[XmlInclude(typeof(Person))]
[XmlType("Partner", Namespace = "http://....")]
public abstract class Partner 
{...}

DerivedOne:

代码语言:javascript
复制
 [XmlType("Person")]
public class Person : Partner
{...}

结果如下:

<tar:Partner xsi:type="Person">

但是现在API文档告诉我创建如下所示的请求:

<tar:Partner xsi:type="par:CT_Person">

(在Fiddler和works中测试)如何创建带有typeName前缀(par)的NameSpace集或设置名称如下:

[XmlType("par:CT_Person")]

对我来说,禁用(重写)转义功能是没有选择的。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-14 14:00:57

在测试了一整天然后四处转悠之后..。写完我的问题后,我自己就得到了答案。

当我在baseclass中设置名称空间时,我可以用不同的URL在派生的名称空间中设置名称空间。比它起作用..。

希望这篇文章能帮助其他面临问题的人:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41144363

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档