System.Data.XmlSchemaWriter.WriteTableTypeParticles C# (CSharp) Метод

WriteTableTypeParticles() приватный Метод

private WriteTableTypeParticles ( DataColumn col ) : void
col DataColumn
Результат void
		private void WriteTableTypeParticles (DataColumn col)
		{
			w.WriteStartElement ("xs", "element", xmlnsxs);
			w.WriteAttributeString ("name", XmlHelper.Encode (col.ColumnName));

			if (col.ColumnName != col.Caption && col.Caption != String.Empty)
				w.WriteAttributeString (
					XmlConstants.MsdataPrefix,
					XmlConstants.Caption, 
					XmlConstants.MsdataNamespace,
					col.Caption);

			if (col.AutoIncrement == true)
				w.WriteAttributeString (
					XmlConstants.MsdataPrefix,
					XmlConstants.AutoIncrement,
					XmlConstants.MsdataNamespace,
					"true");

			if (col.AutoIncrementSeed != 0) {
				w.WriteAttributeString (

					XmlConstants.MsdataPrefix,
					XmlConstants.AutoIncrementSeed,
					XmlConstants.MsdataNamespace,
					XmlConvert.ToString (col.AutoIncrementSeed));
			}

			if (col.AutoIncrementStep != 1) {
				w.WriteAttributeString (

					XmlConstants.MsdataPrefix,
					XmlConstants.AutoIncrementStep,
					XmlConstants.MsdataNamespace,
					XmlConvert.ToString (col.AutoIncrementStep));
			}

			if (!DataColumn.GetDefaultValueForType (col.DataType).Equals (col.DefaultValue))
				w.WriteAttributeString ("default",
					DataSet.WriteObjectXml (col.DefaultValue));

			if (col.ReadOnly)
				w.WriteAttributeString (
					XmlConstants.MsdataPrefix,
					XmlConstants.ReadOnly,
					XmlConstants.MsdataNamespace,
					"true");

			XmlQualifiedName typeQName = null;
			if (col.MaxLength < 0) {
				w.WriteStartAttribute ("type", String.Empty);
				typeQName = MapType (col.DataType);
				WriteQName (typeQName);
				w.WriteEndAttribute ();
			}

			if (typeQName == XmlConstants.QnString
				&& col.DataType != typeof (string)
				&& col.DataType != typeof (char)) {
				w.WriteStartAttribute (
					XmlConstants.MsdataPrefix,
					XmlConstants.DataType,
					XmlConstants.MsdataNamespace);
				string runtimeName = col.DataType.AssemblyQualifiedName;
				w.WriteString (runtimeName);
				w.WriteEndAttribute ();
			}

			if (col.AllowDBNull)
				w.WriteAttributeString ("minOccurs", "0");

			//writer.WriteAttributeString (XmlConstants.MsdataPrefix, 
			//                            XmlConstants.Ordinal, 
			//                            XmlConstants.MsdataNamespace, 
			//                            col.Ordinal.ToString ());

			AddExtendedPropertyAttributes (col.ExtendedProperties);
			
			// Write SimpleType if column have MaxLength
			if (col.MaxLength > -1)
				WriteSimpleType (col);

			w.WriteEndElement (); // sequence
		}