System.Data.DataColumn.IsMaxLengthViolated C# (CSharp) Method

IsMaxLengthViolated() private method

private IsMaxLengthViolated ( ) : bool
return bool
        internal bool IsMaxLengthViolated()
        {
            if (MaxLength < 0)
                return true;

            bool error = false;
            object value;
            string errorText = null;

            foreach (DataRow dr in Table.Rows)
            {
                if (dr.HasVersion(DataRowVersion.Current))
                {
                    value = dr[this];
                    if (!_isSqlType)
                    {
                        if (value != null && value != DBNull.Value && ((string)value).Length > MaxLength)
                        {
                            if (errorText == null)
                            {
                                errorText = ExceptionBuilder.MaxLengthViolationText(ColumnName);
                            }
                            dr.RowError = errorText;
                            dr.SetColumnError(this, errorText);
                            error = true;
                        }
                    }
                    else
                    {
                        if (!DataStorage.IsObjectNull(value) && ((SqlString)value).Value.Length > MaxLength)
                        {
                            if (errorText == null)
                            {
                                errorText = ExceptionBuilder.MaxLengthViolationText(ColumnName);
                            }
                            dr.RowError = errorText;
                            dr.SetColumnError(this, errorText);
                            error = true;
                        }
                    }
                }
            }
            return error;
        }