gpt4 book ai didi

vb.net - DataContract WCF 中的命名空间

转载 作者:行者123 更新时间:2023-12-04 16:52:03 25 4
gpt4 key购买 nike

我正在 VB 中处理 WCF 服务。有人问我我的 DTO 是否在 différentas 命名空间中。这是一个包含两个类的示例:

第一课:

Namespace DTO
Namespace SaveContext

<DataContract(Namespace:="MyProject/DTO", Name:="Reply")> _
Public Class Reply

'Members and methods of my first class

End Class

End Namespace
End Namespace

第二类:
Namespace DTO
Namespace ClearContext

<DataContract(Namespace:="MyProject/DTO", Name:="Reply")> _
Public Class Reply

'Members and methods of my second class

End Class

End Namespace
End Namespace

当我来创建一个对象时,一切都很好。下面是一个例子:
Dim saveReply As New DTO.SaveContext.Reply
Dim clearReply As New DTO.ClearContext.Reply

但是当我来做一个测试项目来测试我的服务时,没有命名空间没有出现,而且我的两个类都是一样的。 Intellisence 进入我的第一个名为 Reply 的类,以及名为 Reply1 的第二个类,而我希望我的类具有相同的层次结构。所以我想知道是否可以这样做?我期待着您的回复。预先感谢您的关注。

最佳答案

WCF 正在为您自动解决类“命名冲突”。您将两个单独的 C# 类定义到同一个 XML 命名空间中,以便 WCF WSDL 生成器正确地将它们标记为单独的 XML 架构。您所看到的行为就像 Microsoft 喜欢说的“按设计”。也许你真正需要做的是使用继承和KnownTypes对于您的场景。

关于vb.net - DataContract WCF 中的命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9534496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com