使用 BizTalk WCF 服务发布向导的架构中的枚举?

Enumerations in schemas using BizTalk WCF Service Publishing Wizard?

我被要求使用 BizTalk WCF 服务发布向导从 BizTalk 将架构发布为 WCF 服务,并将成员公开为枚举。想法是禁止程序员在特定字段中给出错误的值。 我已将元素类型定义为字符串,具有限制和一组值,如下所示:

<xs:simpleType name="EventTypes">
  <xs:restriction base="xs:string">
    <xs:enumeration value="Created"/>
    <xs:enumeration value="Changed"/>
    <xs:enumeration value="Deleted"/>
  </xs:restriction>
</xs:simpleType>

但是,生成的客户端不会拾取这个,并且不禁止程序员键入其他值,因为它是一个不受限制的字符串变量。

有没有什么方法可以在生成的客户端实际验证输入的地方发布 WCF 服务?

实际上,这行得通,但在此过程中 cached/not 重新生成了一些东西...棘手。我正在使用 Visual Studio 来生成客户端,无论是在它不起作用时还是在后来起作用时。