當前位置: 首頁>>代碼示例>>C#>>正文


C# XmlSchemaObjectTable.Set方法代碼示例

本文整理匯總了C#中System.Xml.Schema.XmlSchemaObjectTable.Set方法的典型用法代碼示例。如果您正苦於以下問題:C# XmlSchemaObjectTable.Set方法的具體用法?C# XmlSchemaObjectTable.Set怎麽用?C# XmlSchemaObjectTable.Set使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在System.Xml.Schema.XmlSchemaObjectTable的用法示例。


在下文中一共展示了XmlSchemaObjectTable.Set方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: AddToTable

		public static void AddToTable (XmlSchemaObjectTable table, XmlSchemaObject obj,
			XmlQualifiedName qname, ValidationEventHandler h)
		{
			if (table.Contains (qname)) {
				// FIXME: This logic unexpectedly allows 
				// one redefining item and two or more redefining items.
				// FIXME: redefining item is not simple replacement,
				// but much more complex stuff.
				if (obj.isRedefineChild) {	// take precedence.
					if (obj.redefinedObject != null)
						obj.error (h, String.Format ("Named item {0} was already contained in the schema object table.", qname));
					else
						obj.redefinedObject = table [qname];
					table.Set (qname, obj);
				}
				else if (table [qname].isRedefineChild) {
					if (table [qname].redefinedObject != null)
						obj.error (h, String.Format ("Named item {0} was already contained in the schema object table.", qname));
					else
						table [qname].redefinedObject = obj;
					return;	// never add to the table.
				}
				else if (StrictMsCompliant) {
					table.Set (qname, obj);
				}
				else
					obj.error (h, String.Format ("Named item {0} was already contained in the schema object table. {1}",
					                             qname, "Consider setting MONO_STRICT_MS_COMPLIANT to 'yes' to mimic MS implementation."));
			}
			else
				table.Set (qname, obj);
		}
開發者ID:carrie901,項目名稱:mono,代碼行數:32,代碼來源:XmlSchemaUtil.cs

示例2: ValidateUPAOnItems

		void ValidateUPAOnItems (XmlSchemaObjectTable qnames, ArrayList nsNames,
			ValidationEventHandler h, XmlSchema schema)
		{
			// non-optional components
			XmlSchemaObjectTable elems = new XmlSchemaObjectTable ();
			ArrayList wildcards = new ArrayList ();
			XmlSchemaObjectTable tmpElems = new XmlSchemaObjectTable ();
			ArrayList tmpWildcards = new ArrayList ();
			for (int i=0; i<Items.Count; i++) {
				XmlSchemaParticle p1 = Items [i] as XmlSchemaParticle;
				p1.ValidateUniqueParticleAttribution (elems, wildcards, h, schema);
				if (p1.ValidatedMinOccurs == p1.ValidatedMaxOccurs) {
					elems.Clear ();
					wildcards.Clear ();
				}
				else {
					if (p1.ValidatedMinOccurs != 0) {
						foreach (XmlQualifiedName n in tmpElems.Names)
							elems.Set (n, null); // remove
						foreach (object o in tmpWildcards)
							wildcards.Remove (o);
					}
					foreach (XmlQualifiedName n in elems.Names)
						tmpElems.Set (n, elems [n]);
					tmpWildcards.Clear ();
					tmpWildcards.AddRange (wildcards);
				}
			}
		}
開發者ID:nobled,項目名稱:mono,代碼行數:29,代碼來源:XmlSchemaSequence.cs


注:本文中的System.Xml.Schema.XmlSchemaObjectTable.Set方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。