Contains() public method

Checks whether the collection contains a column with the specified name.
public Contains ( string name ) : bool
name string
return bool
Exemplo n.º 1
0
 public CourseRubricObject(DataColumnCollection columns, DataRow row)
 {
     this.id = columns.Contains("id") ? Convert.ToInt32(row["id"]) : -1;
     this.courseId = columns.Contains("course_id") ? Convert.ToInt32(row["course_id"]) : -1;
     this.courseName = columns.Contains("course_name") ? Convert.ToString(row["course_name"]) : "-";
     this.rubricName = columns.Contains("rubric_name") ? Convert.ToString(row["rubric_name"]) : "-";
 }
Exemplo n.º 2
0
 /// <summary>
 /// Checks if the columnList names are included in columns names.
 /// </summary>
 /// <param name="columnList">column list names</param>
 /// <param name="columns">DataColumn collection</param>
 /// <returns>True if all are included, otherwise false</returns>
 public static bool ExistColumn(string[] columnList, DataColumnCollection columns)
 {
     foreach (string column in columnList)
     {
         if (!columns.Contains(column))
         {
             return false;
         }
     }
     return true;
 }
Exemplo n.º 3
0
 /// <summary>
 /// 动态给控件绑定数据源
 /// </summary>
 /// <param name="lcGroup"></param>
 /// <param name="modelSource"></param>
 /// <param name="dataColumnCollection"></param>
 public static void VoucherDataBindings(LayoutControlGroup lcGroup, BindingSource modelSource, System.Data.DataColumnCollection dataColumnCollection)
 {
     foreach (BaseLayoutItem baseItem in lcGroup.Items)
     {
         LayoutControlItem item = baseItem as LayoutControlItem;
         if (item.Control != null && dataColumnCollection.Contains(item.CustomizationFormText))
         {
             item.Control.DataBindings.Add(new Binding("EditValue", modelSource, item.CustomizationFormText, true));
         }
     }
 }
Exemplo n.º 4
0
        //public static Int32 ToInt32(this DataRow dr,DataColumnCollection dc, string field)
        //{
        //    if (dc.Contains(field))
        //    {
        //        return ToInt32(dr[field].ToString());
        //    }
        //    else
        //    {
        //        return 0;
        //    }
        //}

        public static string ToString(this DataRow dr, DataColumnCollection dc, string field)
        {
            if (dc.Contains(field))
            {
                return dr[field].ToString();
            }
            else
            {
                return "";
            }
        }
Exemplo n.º 5
0
 public ClassInSchoolObject(DataColumnCollection columns, DataRow row)
 {
     this.id = columns.Contains("id") ? Convert.ToInt32(row["id"]) : -1;
     this.classId = (columns.Contains("class_id") && !row.IsNull("class_id")) ? Convert.ToInt32(row["class_id"]) : -1;
     this.schoolId = (columns.Contains("school_id") && !row.IsNull("school_id")) ? Convert.ToInt32(row["school_id"]) : -1;
     this.teacherId = (columns.Contains("teacher_id") && !row.IsNull("teacher_id")) ? Convert.ToInt32(row["teacher_id"]) : -1;
     this.className = (columns.Contains("class_name") && !row.IsNull("class_name")) ? Convert.ToString(row["class_name"]) : "-";
     this.schoolName = (columns.Contains("school_name") && !row.IsNull("school_name")) ? Convert.ToString(row["school_name"]) : "-";
     this.teacherName = (columns.Contains("teacher") && !row.IsNull("teacher")) ? Convert.ToString(row["teacher"]) : "-";
 }
Exemplo n.º 6
0
        public UserObject(DataColumnCollection columns, DataRow row)
        {
            this.id = columns.Contains("id") ? Convert.ToInt32(row["id"]) : -1;
            this.classId = (columns.Contains("class_id") && !row.IsNull("class_id")) ? Convert.ToInt32(row["class_id"]) : -1;
            this.userTypeId = columns.Contains("user_type_id") ? Convert.ToInt32(row["user_type_id"]) : -1;
            this.worksIn = (columns.Contains("works_in") && !row.IsNull("works_in")) ? Convert.ToInt32(row["works_in"]) : -1;

            this.name = columns.Contains("name") ? Convert.ToString(row["name"]) : "-";
            this.lastname = columns.Contains("lastname") ? Convert.ToString(row["lastname"]) : "-";
            this.username = columns.Contains("username") ? Convert.ToString(row["username"]) : "-";
            this.password = columns.Contains("password") ? Convert.ToString(row["password"]) : "-";

            String userType = columns.Contains("user_type_name") ? Convert.ToString(row["user_type_name"]) : "-";
            if (userType.ToLower().Contains("admin"))
                this.userType = UserType.Admin;
            else
                this.userType = (userType.Contains("student") ? UserType.Student : UserType.Teacher);
        }
Exemplo n.º 7
0
        public GradeObject(DataColumnCollection columns, DataRow row)
        {
            this.grade = columns.Contains("grade") ? Convert.ToInt32(row["grade"]) : -1;
            this.rubricId = columns.Contains("rubric_id") ? Convert.ToInt32(row["rubric_id"]) : -1;
            this.studentId = columns.Contains("student_id") ? Convert.ToInt32(row["student_id"]) : -1;
            this.teacherId = columns.Contains("teacher_id") ? Convert.ToInt32(row["teacher_id"]) : -1;
            this.date = (columns.Contains("date") && !row.IsNull("date")) ? Convert.ToString(row["date"]) : "-";
            this.note = (columns.Contains("note") && !row.IsNull("note")) ? Convert.ToString(row["note"]) : "-";

            if (!this.date.Equals("-"))
                this.date = this.date.Substring(0, this.date.IndexOf(' ') + 1);
        }
Exemplo n.º 8
0
        public void InsertAfter(DataColumnCollection columns, DataColumn currentColumn, DataColumn newColumn)
        {
            if (columns.Contains(currentColumn.ColumnName))
            {
                columns.Add(newColumn);
                //add the new column after the current one 
                columns[newColumn.ColumnName].SetOrdinal(currentColumn.Ordinal + 1);
            }
            else
            {

            }
        }
        /// <summary>
        /// 检查并显示是否支持继续分析的功能
        /// </summary>
        /// <param name="columns"></param>
        private void CheckAndShowSupportContinuer(DataColumnCollection columns)
        {
            string msg = "";
            //↓判断是否有上次分析日期
            if (!columns.Contains("上次分析日期"))
                msg += "[上次分析日期]";
            if (!columns.Contains("是否完成"))
                if (string.IsNullOrEmpty(msg))
                    msg += "[是否完成]";
                else
                    msg += ",[是否完成]";

            m_SupportContinute = string.IsNullOrEmpty(msg);

            if (!m_SupportContinute)
                MsgBox.Show(1, string.Format("检测到Excel文件中缺少{0}列,将不支持断点分析。\r\n如果需要支持断点分析,请手动添加{0}列。", msg));
        }
        /// <summary>
        /// Adds a new <c>DataColumn</c> to the given collection.
        /// </summary>
        /// <remarks>
        /// The new <c>DataColumn</c> is contructed from the remaining
        /// arguments.
        /// </remarks>
        /// <param name="columns">
        /// The collection to which to add the new column.
        /// </param>
        /// <param name="defaultValue">
        /// The new column's default value
        /// </param>
        /// <param name="name">
        /// The name of the new column.  If a column with the same name
        /// pre-exists in the collection, this operation does nothing.
        /// </param>
        /// <param name="type">
        /// The System.Type of the new column's values.
        /// </param>
        internal static void AddColumn(
            DataColumnCollection columns,
            object defaultValue,
            string name,
            Type type)
        {
            if (columns.Contains(name))
            {
                return;
            }

            DataColumn column = new DataColumn(name, type);

            if (defaultValue != null)
            {
                column.DefaultValue = defaultValue;
            }

            columns.Add(column);
        }
Exemplo n.º 11
0
        private static void ConvertColumnNames(DataColumnCollection AColumns)
        {
            foreach (DataColumn col in AColumns)
            {
                string colName = StringHelper.UpperCamelCase(col.ColumnName, true, true);

                if (AColumns.Contains(colName))
                {
                    // this column is not unique. happens in p_recent_partner, columns p_when_d and p_when_t
                    colName = StringHelper.UpperCamelCase(col.ColumnName, true, false);
                }

                col.ColumnName = colName;
            }
        }
Exemplo n.º 12
0
        private static StatusMessage ImportRow(DataRow row, LocationType LocType, int GeocodeCount, DataColumnCollection ImportColumns, out int geocodeCountReturn)
        {
            string locName = row.Field<string>("LocationName");

            var ReturnMsg = new StatusMessage();
            ReturnMsg.ObjectName = locName;
            ReturnMsg.Success = true;
            var Msg = new StringBuilder();
            var geocodeCountNew = GeocodeCount;

            //Create new Location for row
            var newLoc = new Location(locName, LocType.Key);
            Repositories.LocationRepo.Insert(newLoc);

            try
            {
                //Default Props
                var locationTypeService = new LocationTypeService();
                var defaultLocType = locationTypeService.GetLocationType(Constants.DefaultLocationTypeKey);
                foreach (var prop in defaultLocType.Properties)
                {
                    string colName = prop.Alias;
                    if (ImportColumns.Contains(colName))
                    {
                        newLoc.AddPropertyData(colName, row.Field<object>(colName));
                    }
                    else
                    {
                        newLoc.AddPropertyData(colName, null);
                        Msg.AppendLine(string.Concat("Data for '", colName, "' was not included in the import file."));
                    }
                }

                //Custom Props
                if (LocType.Key != defaultLocType.Key)
                {
                    foreach (var prop in LocType.Properties)
                    {
                        string colName = prop.Alias;

                        if (ImportColumns.Contains(colName))
                        {
                            newLoc.AddPropertyData(colName, row.Field<object>(colName));
                        }
                        else
                        {
                            newLoc.AddPropertyData(colName, null);
                            Msg.AppendLine(string.Concat("Data for '", colName, "' was not included in the import file."));
                        }
                    }
                }

                // SAVE properties of new location to db
                try
                {
                    Repositories.LocationRepo.Update(newLoc);
                }
                catch (Exception eSave)
                {
                    ReturnMsg.Success = false;
                    ReturnMsg.RelatedException = eSave;
                    ReturnMsg.Code = ReturnMsg.Code != "" ? ReturnMsg.Code + ",InsertError" : "InsertError";
                    Msg.AppendLine("There was a problem saving the new location data.");
                }

                //Check for Lat/Long values - import if present
                if (ImportColumns.Contains("Latitude"))
                {
                    int convertedInt = 0;
                    Int32.TryParse(row.Field<string>("Latitude"), out convertedInt);
                    newLoc.Latitude = convertedInt;
                }

                if (ImportColumns.Contains("Longitude"))
                {
                    int convertedInt = 0;
                    Int32.TryParse(row.Field<string>("Longitude"), out convertedInt);
                    newLoc.Longitude = convertedInt;
                }

                //If Lat/Long are both 0... attempt geocoding
                if (newLoc.Latitude == 0 && newLoc.Longitude == 0)
                {
                    //TODO: make dynamic based on provider limit
                    if (GeocodeCount >= MAX_GEOCODE)
                    {
                        ReturnMsg.Success = true;
                        ReturnMsg.Code = "GeocodingProblem";
                        Msg.AppendLine(
                            "This address exceeded the limits for geo-coding in a batch. Please run maintenance to update geo-codes later.");
                    }
                    else
                    {
                        try
                        {
                            var newCoordinate = DoGeocoding.GetCoordinateForAddress(newLoc.Address);
                            newLoc.Latitude = newCoordinate.Latitude;
                            newLoc.Longitude = newCoordinate.Longitude;

                            geocodeCountNew++;
                        }
                        catch (Exception e1)
                        {
                            ReturnMsg.Success = true;
                            ReturnMsg.RelatedException = e1;
                            ReturnMsg.Code = "GeocodingProblem";
                            Msg.AppendLine(
                                "There was a problem geo-coding the address. Please run maintenance to update geo-codes later.");
                            LogHelper.Error(
                                typeof(Import),
                                string.Format("Geo-coding error while importing '{0}'", ReturnMsg.ObjectName),
                                e1);
                        }
                    }
                }

                // SAVE properties of new location to db again
                try
                {
                    Repositories.LocationRepo.Update(newLoc);
                }
                catch (Exception eSave)
                {
                    ReturnMsg.Success = false;
                    ReturnMsg.RelatedException = eSave;
                    ReturnMsg.Code = ReturnMsg.Code != "" ? ReturnMsg.Code + ",InsertError" : "InsertError";
                    Msg.AppendLine("There was a problem saving the new location data.");
                }

                // UPDATE Geography DB field using Lat/Long
                try
                {
                    if (newLoc.Latitude != 0 && newLoc.Longitude != 0)
                    {
                        Repositories.LocationRepo.UpdateDbGeography(newLoc);
                    }
                    else
                    {
                        newLoc.DbGeogNeedsUpdated = true;
                        Repositories.LocationRepo.Update(newLoc);
                    }
                }
                catch (Exception eGeoDB)
                {
                    ReturnMsg.Success = true;
                    ReturnMsg.RelatedException = eGeoDB;
                    ReturnMsg.Code = ReturnMsg.Code != "" ? ReturnMsg.Code + ",UnableToUpdateDBGeography" : "UnableToUpdateDBGeography";
                    Msg.AppendLine("Unable to update the coordinates in the database.");
                }

            }
            catch (Exception ex)
            {
                ReturnMsg.Success = false;
                ReturnMsg.RelatedException = ex;
                ReturnMsg.Code = ReturnMsg.Code != "" ? ReturnMsg.Code + ",UnknownException" : "UnknownException";
                Msg.AppendLine(ex.Message);
                LogHelper.Error(typeof(Import), string.Format("ImportRow: Error importing location '{0}'", locName), ex);
            }

            ReturnMsg.Message = Msg.ToString();

            geocodeCountReturn = geocodeCountNew;

            return ReturnMsg;
        }
Exemplo n.º 13
0
 public ClassObject(DataColumnCollection columns, DataRow row)
 {
     this.id = columns.Contains("id") ? Convert.ToInt32(row["id"]) : -1;
     this.className = columns.Contains("class_name") ? Convert.ToString(row["class_name"]) : "-";
 }
Exemplo n.º 14
0
 static String GetColumnName(DataColumnCollection cols, string colName, int deep = 0)
 {
     string tem = colName;
     tem = colName + (deep == 0 ? "" : deep.ToString());
     if (cols.Contains(tem))
     {
         return GetColumnName(cols, colName, ++deep);
     }
     return tem;
 }