是否可以在 WCF wsdl 中包含 DataContract class 而 class 不是任何 OperationContract 的一部分?
Is it possible to include a DataContract class in WCF wsdl without that class being part of any OperationContract?
我有一个带有 PostData 操作合同的 WCF 服务。此方法接受一个字符串。该字符串应该是序列化的 3 个对象之一。我为这些对象创建了 2 个 类 并用 [DataContract] 和 [DataMembers] 装饰它们。
因为我没有在 PostData Operation 契约中引用这些 类,所以它们没有出现在 WSDl 中。希望客户端能够创建其中一个 类 的实例,然后在 PostData 中传递序列化对象。这将使我免于创建 3 个不同的 OperationContracts。
这可能吗?
谢谢
所以我在这里决定了。
客户端可以序列化并传递给单个 Web 方法的类型有 3 种。
我在共享 dll 中提供了这 3 种类型。
客户端创建这些类型之一的对象,序列化并将其与枚举参数一起传递给 Web 服务。
此枚举允许 Web 服务将字符串反序列化回适当的类型并继续处理。
这减少了 Web 服务端的工作量,因为我不必为每种类型编写一个 Web 方法,我可以只需要一个方法。
这可能会对希望解决类似问题的其他人有所帮助。
我有一个带有 PostData 操作合同的 WCF 服务。此方法接受一个字符串。该字符串应该是序列化的 3 个对象之一。我为这些对象创建了 2 个 类 并用 [DataContract] 和 [DataMembers] 装饰它们。
因为我没有在 PostData Operation 契约中引用这些 类,所以它们没有出现在 WSDl 中。希望客户端能够创建其中一个 类 的实例,然后在 PostData 中传递序列化对象。这将使我免于创建 3 个不同的 OperationContracts。
这可能吗?
谢谢
所以我在这里决定了。
客户端可以序列化并传递给单个 Web 方法的类型有 3 种。 我在共享 dll 中提供了这 3 种类型。 客户端创建这些类型之一的对象,序列化并将其与枚举参数一起传递给 Web 服务。 此枚举允许 Web 服务将字符串反序列化回适当的类型并继续处理。
这减少了 Web 服务端的工作量,因为我不必为每种类型编写一个 Web 方法,我可以只需要一个方法。
这可能会对希望解决类似问题的其他人有所帮助。