Arhn - архитектура программирования

С# расширяет MVC MaxLengthAttribute с собственным сообщением об ошибке

class MyMaxLength : MaxLengthAttribute
    {
        public static String MyErrorMessage = "Maksimalna dolžina za polje {0} je {1}";

        public MyMaxLength(int length)
        {
            new MaxLengthAttribute(length);
        }

        public override string FormatErrorMessage(string name)
        {
            if (!String.IsNullOrEmpty(ErrorMessage))
            {
                ErrorMessage = MyErrorMessage;
            }
            return String.Format(CultureInfo.CurrentUICulture, ErrorMessageString, name);
        }
    }

но у меня проблема с конструктором MyMaxLength(int length). Суперкласс никогда не вызывается. Как я могу создать свою собственную проверку длины с предопределенным сообщением.

16.11.2013

Ответы:


1

Ваш синтаксис неверен для конструктора.

Вот как вы вызываете базовый конструктор:

    public MyMaxLength(int length)
            : base(length)           // invoke the base constructor
    {

    }

Еще кое-что, что, возможно, стоит отметить, это то, что если вы расширяете атрибут, хотя это и не является обязательным, настоятельно рекомендуется использовать суффикс Attribute. В некоторых случаях платформа будет искать имена типов, оканчивающиеся на Attribute.

Итак, ваш производный класс может быть назван:

   class MyMaxLengthAttribute : MaxLengthAttribute
   {
        public MyMaxLengthAttribute(int length)
               : base(length)
        {
        }
16.11.2013
Новые материалы

Коллекции публикаций по глубокому обучению
Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

Представляем: Pepita
Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

Советы по коду Laravel #2
1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

3 способа решить квадратное уравнение (3-й мой любимый) -
1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

Создание VR-миров с A-Frame
Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

Демистификация рекурсии
КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..