internal DataColumn FindField(DataTable table, string field)
{
bool attribute = false;
string colName = field;
if (field.StartsWith("@", StringComparison.Ordinal))
{
attribute = true;
colName = field.Substring(1);
}
string[] split = colName.Split(':');
colName = split[split.Length - 1];
colName = XmlConvert.DecodeName(colName);
DataColumn col = table.Columns[colName];
if (col == null)
throw ExceptionBuilder.InvalidField(field);
bool _attribute = (col.ColumnMapping == MappingType.Attribute) || (col.ColumnMapping == MappingType.Hidden);
if (_attribute != attribute)
throw ExceptionBuilder.InvalidField(field);
return col;
}