有没有人能够成功地从XACML2模式文件生成C#实体类?我得到的是“不能在架构的顶层使用通配符”。我认为这与xs:any element有关。我已经尝试更改processContents=的“跳过”(从"lax"),但没有用。我使用WSCF Blue和xsd.exe得到了这一点。
发布于 2010-08-01 05:54:48
使用w/ vs2010附带的xsd.exe版本非常适合我。
发布于 2011-11-23 07:04:50
我通过VS2010 XSD.exe运行Xacml3模式没有任何问题,但是在尝试使用XSD处理Xacml2模式时,我确实看到了这个错误:“无法在模式的顶层使用通配符”。
XSD可以无错误地处理Xacml2策略架构。
在处理Xacml2上下文架构时,XSD会报告这个通配符错误。
问题似乎出在xacml-context:AttributeValueType模式定义中##any和mixed="true"的组合上。Xacml2策略架构和Xacml3中的其他AttributeValueType定义在ExpressionType扩展周围使用xs:complexContent包装器,该包装器包含xs:any和xs:anyAttribute定义。Xacml2 context:AttributeValueType不包含此包装。
解决方案:将mixed="true"从Xacml2 xacml-context:AttributeValueType定义中删除,XSD将为模式生成正确的类类型。生成的AttributeValueType类将具有一个元素列表和一个属性列表的属性,该列表涵盖了所有的基础。
https://stackoverflow.com/questions/3206863
复制相似问题