IndexOf() public method

Returns the index of a specified .
public IndexOf ( DataColumn column ) : int
column DataColumn
return int
示例#1
0
 private static bool CompareColumn(System.Data.DataColumnCollection dcA, System.Data.DataColumnCollection dcB)
 {
     if (dcA.Count == dcB.Count)
     {
         foreach (DataColumn dc in dcA)
         {
             //找相同字段名称
             if (dcB.IndexOf(dc.ColumnName) > -1)
             {
                 //测试数据类型
                 if (dc.DataType != dcB[dcB.IndexOf(dc.ColumnName)].DataType)
                 {
                     return(false);
                 }
             }
             else
             {
                 return(false);
             }
         }
         return(true);
     }
     else
     {
         return(false);
     }
 }
        /// <summary>
        /// Builds the column name to index map.
        /// </summary>
        /// <param name="dlCols">The dl cols.</param>
        /// <param name="dtCols">The dt cols.</param>
        /// <param name="defs">Defs to use</param>
        /// <returns></returns>
        // ReSharper disable ParameterTypeCanBeEnumerable.Local
        private IDictionary<int, string> BuildColumnNameToIndexMap(IEnumerable<Dev2Column> dlCols, DataColumnCollection dtCols, IList<IDev2Definition> defs)
        // ReSharper restore ParameterTypeCanBeEnumerable.Local
        {
            Dictionary<int, string> result = new Dictionary<int, string>();


            foreach(var dlC in dlCols)
            {
                var idx = dtCols.IndexOf(dlC.ColumnName);

                if(idx != -1)
                {
                    result.Add(idx, dlC.ColumnName);
                }
            }

            if(result.Count == 0 && defs != null)
            {
                // use positional adjustment
                foreach(var def in defs)
                {
                    var idx = dtCols.IndexOf(def.Name);

                    if(idx != -1)
                    {
                        result.Add(idx, def.Name);
                    }
                }
            }

            return result;
        }