1

有没有人能够从 XACML2 模式文件成功生成 C# 实体类?我收到“无法在架构的顶层使用通配符”。我认为这与 xs:any 元素有关。我尝试更改 processContents="skip"(从“lax”)但无济于事。我使用WSCF Bluexsd.exe得到这个。

4

2 回答 2

1

使用 VS 2010 附带的 xsd.exe 版本对我来说非常适合。

于 2010-07-31T21:54:48.467 回答
1

我通过 VS2010 XSD.exe 运行 Xacml3 架构没有问题,但是在尝试使用 XSD 处理 Xacml2 架构时,我确实看到了“无法在架构的顶层使用通配符”错误。

XSD 无错误地处理 Xacml2 策略架构。

XSD 在处理 Xacml2 上下文架构时报告此通配符错误。

问题似乎是架构定义中的##anymixed="true"的组合。Xacml2 策略模式和 Xacml3 中的xacml-context:AttributeValueType其他定义使用扩展的包装器,而扩展又包含和定义。Xacml2不包含此包装器。AttributeValueTypexs:complexContentExpressionTypexs:anyxs:anyAttributecontext:AttributeValueType

解决方案:mixed="true"从 Xacml2定义中删除xacml-context:AttributeValueType,XSD 将为模式生成正确的类类型。生成的AttributeValueType类将具有元素列表和属性列表的属性,涵盖所有基础。

于 2011-11-22T23:04:50.280 回答