C# 如何获取具有可选值minOccurs=0的xml元素
您好,我需要筛选具有可选值minOccurs=0的Xml元素 这就是我尝试过的C# 如何获取具有可选值minOccurs=0的xml元素,c#,linq,C#,Linq,您好,我需要筛选具有可选值minOccurs=0的Xml元素 这就是我尝试过的 var XMLDocumentMaster = XDocument.Load(@"D:\Stephen\Documents\Schema\AgileFlow_Import.xsd"); XMLDocumentM = XMLDocumentMaster(); var prefix = XMLDocumentMaster.Root.GetNamespaceOfPrefix("xs"); /
var XMLDocumentMaster = XDocument.Load(@"D:\Stephen\Documents\Schema\AgileFlow_Import.xsd");
XMLDocumentM = XMLDocumentMaster();
var prefix = XMLDocumentMaster.Root.GetNamespaceOfPrefix("xs");
// get Vehicle
var vehicle = XMLDocumentMaster.Root.Element(prefix + "element");
// get sequence for Ford
var sections = vehicle.Element(prefix + "complexType")
.Element(prefix + "sequence")
// the Ford element
.Element(prefix + "element")
.Element(prefix + "complexType")
.Element(prefix + "sequence")
// elements
.Elements(prefix + "element").ToList();
试着这样做:
var XMLDocumentMaster = XElement.Load(@"D:\Stephen\Documents\Schema\AgileFlow_Import.xsd");
IEnumerable<XElement> items =
from el in XMLDocumentMaster.Descendants("minOccurs")
select el;
foreach(XElement Ovaule in items)
if(Ovaule=0)Console.WriteLine(Ovaule.Name + ":" + (string) Ovaule);
var XMLDocumentMaster=XElement.Load(@“D:\Stephen\Documents\Schema\AgileFlow_Import.xsd”);
IEnumerable items=
从XMLDocumentMaster.subjects中的el(“minOccurs”)
选择el;
foreach(项目中的椭圆柱)
if(Ovaule=0)Console.WriteLine(Ovaule.Name+“:”+(string)Ovaule);
私有无效按钮2\u单击(对象发送者,事件参数e)
{
List objdec=新列表();
XmlDocument xmlDoc=新的XmlDocument();
Load(@“D:\Stephen\Documents\Schema\AgileFlow_Import.xsd”);
XmlNamespaceManager nsmgr=新的XmlNamespaceManager(xmlDoc.NameTable);
nsmgr.AddNamespace(“xs”http://www.w3.org/2001/XMLSchema");
XmlNodeList nodes=xmlDoc.SelectNodes(//xs:element[@name='IR_DocumentMaster']//xs:complexType//xs:all//xs:element”,nsmgr);
尝试
{
objdec=nodes.Cast().Where(node=>node.Attributes.GetNamedItem(“minOccurs”)!=null&&node.Attributes.GetNamedItem(“minOccurs”).Value==“0”)
.Select(x=>x.Attributes[“name”].Value).ToList();
private void button2_Click(object sender, EventArgs e)
{
List<string> objdec = new List<string>();
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(@"D:\Stephen\Documents\Schema\AgileFlow_Import.xsd");
XmlNamespaceManager nsmgr = new XmlNamespaceManager(xmlDoc.NameTable);
nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema");
XmlNodeList nodes = xmlDoc.SelectNodes("//xs:element[@name='IR_DocumentMaster']//xs:complexType//xs:all//xs:element", nsmgr);
try
{
objdec = nodes.Cast<XmlNode>().Where(node => node.Attributes.GetNamedItem("minOccurs") != null && node.Attributes.GetNamedItem("minOccurs").Value == "0")
.Select(x => x.Attributes["name"].Value).ToList();