Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ DeserializeTableSchema()

void System.Data.DataTable.DeserializeTableSchema ( SerializationInfo info,
StreamingContext context,
bool isSingleTable )
inlinepackageinherited

Definition at line 1316 of file DataTable.cs.

1317 {
1318 _tableName = info.GetString("DataTable.TableName");
1319 _tableNamespace = info.GetString("DataTable.Namespace");
1320 _tablePrefix = info.GetString("DataTable.Prefix");
1321 bool boolean = info.GetBoolean("DataTable.CaseSensitive");
1323 _caseSensitiveUserSet = !info.GetBoolean("DataTable.caseSensitiveAmbient");
1324 int culture = (int)info.GetValue("DataTable.LocaleLCID", typeof(int));
1327 _cultureUserSet = true;
1328 MinimumCapacity = info.GetInt32("DataTable.MinimumCapacity");
1329 _fNestedInDataset = info.GetBoolean("DataTable.NestedInDataSet");
1330 string @string = info.GetString("DataTable.TypeName");
1331 _typeName = new XmlQualifiedName(@string);
1332 _repeatableElement = info.GetBoolean("DataTable.RepeatableElement");
1333 _extendedProperties = (PropertyCollection)info.GetValue("DataTable.ExtendedProperties", typeof(PropertyCollection));
1334 int @int = info.GetInt32("DataTable.Columns.Count");
1335 string[] array = new string[@int];
1337 for (int i = 0; i < @int; i++)
1338 {
1339 DataColumn dataColumn = new DataColumn();
1340 dataColumn.ColumnName = info.GetString(string.Format(invariantCulture, "DataTable.DataColumn_{0}.ColumnName", i));
1341 dataColumn._columnUri = info.GetString(string.Format(invariantCulture, "DataTable.DataColumn_{0}.Namespace", i));
1342 dataColumn.Prefix = info.GetString(string.Format(invariantCulture, "DataTable.DataColumn_{0}.Prefix", i));
1343 string typeName = (string)info.GetValue(string.Format(invariantCulture, "DataTable.DataColumn_{0}.DataType_AssemblyQualifiedName", i), typeof(string));
1344 dataColumn.DataType = Type.GetType(typeName, throwOnError: true);
1345 dataColumn.XmlDataType = (string)info.GetValue(string.Format(invariantCulture, "DataTable.DataColumn_{0}.XmlDataType", i), typeof(string));
1346 dataColumn.SimpleType = (SimpleType)info.GetValue(string.Format(invariantCulture, "DataTable.DataColumn_{0}.SimpleType", i), typeof(SimpleType));
1347 dataColumn.ColumnMapping = (MappingType)info.GetValue(string.Format(invariantCulture, "DataTable.DataColumn_{0}.ColumnMapping", i), typeof(MappingType));
1348 dataColumn.DateTimeMode = (DataSetDateTime)info.GetValue(string.Format(invariantCulture, "DataTable.DataColumn_{0}.DateTimeMode", i), typeof(DataSetDateTime));
1349 dataColumn.AllowDBNull = info.GetBoolean(string.Format(invariantCulture, "DataTable.DataColumn_{0}.AllowDBNull", i));
1350 dataColumn.AutoIncrement = info.GetBoolean(string.Format(invariantCulture, "DataTable.DataColumn_{0}.AutoIncrement", i));
1351 dataColumn.AutoIncrementStep = info.GetInt64(string.Format(invariantCulture, "DataTable.DataColumn_{0}.AutoIncrementStep", i));
1352 dataColumn.AutoIncrementSeed = info.GetInt64(string.Format(invariantCulture, "DataTable.DataColumn_{0}.AutoIncrementSeed", i));
1353 dataColumn.Caption = info.GetString(string.Format(invariantCulture, "DataTable.DataColumn_{0}.Caption", i));
1354 dataColumn.DefaultValue = info.GetValue(string.Format(invariantCulture, "DataTable.DataColumn_{0}.DefaultValue", i), typeof(object));
1355 dataColumn.ReadOnly = info.GetBoolean(string.Format(invariantCulture, "DataTable.DataColumn_{0}.ReadOnly", i));
1356 dataColumn.MaxLength = info.GetInt32(string.Format(invariantCulture, "DataTable.DataColumn_{0}.MaxLength", i));
1357 dataColumn.AutoIncrementCurrent = info.GetValue(string.Format(invariantCulture, "DataTable.DataColumn_{0}.AutoIncrementCurrent", i), typeof(object));
1358 if (isSingleTable)
1359 {
1360 array[i] = info.GetString(string.Format(invariantCulture, "DataTable.DataColumn_{0}.Expression", i));
1361 }
1362 dataColumn._extendedProperties = (PropertyCollection)info.GetValue(string.Format(invariantCulture, "DataTable.DataColumn_{0}.ExtendedProperties", i), typeof(PropertyCollection));
1364 }
1365 if (isSingleTable)
1366 {
1367 for (int j = 0; j < @int; j++)
1368 {
1369 if (array[j] != null)
1370 {
1371 Columns[j].Expression = array[j];
1372 }
1373 }
1374 }
1375 if (isSingleTable)
1376 {
1378 }
1379 }
bool SetCaseSensitiveValue(bool isCaseSensitive, bool userSet, bool resetIndexes)
PropertyCollection _extendedProperties
Definition DataTable.cs:82
DataColumnCollection Columns
Definition DataTable.cs:327
void DeserializeConstraints(SerializationInfo info, StreamingContext context, int serIndex, bool allConstraints)
bool SetLocaleValue(CultureInfo culture, bool userSet, bool resetIndexes)
static CultureInfo InvariantCulture

References System.Data.DataTable._caseSensitiveUserSet, System.Data.DataTable._cultureUserSet, System.Data.DataTable._extendedProperties, System.Data.DataTable._fNestedInDataset, System.Data.DataTable._repeatableElement, System.Data.DataTable._tableName, System.Data.DataTable._tableNamespace, System.Data.DataTable._tablePrefix, System.Data.DataTable._typeName, System.Data.DataColumnCollection.Add(), System.array, System.Data.DataTable.Columns, System.culture, System.Data.DataTable.DeserializeConstraints(), System.Runtime.Serialization.Dictionary, System.Format, System.Type.GetType(), System.info, System.Globalization.CultureInfo.InvariantCulture, System.Data.DataTable.MinimumCapacity, System.Data.DataTable.SetCaseSensitiveValue(), and System.Data.DataTable.SetLocaleValue().

Referenced by System.Data.DataTable.DeserializeDataTable().