Ошибка при вызове статического конструктора статического класса - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Проблема в следующем: Есть класс
public static class 1
    {
        static Point[] arr;
        public static class 2
        {
            public static class ActionWithMask
            {
                static Mask _ActionWithMask;
                static ActionWithMask()
                {
                    _ActionWithMask.Add(+0, +0, "0"); _ActionWithMask.Add(+0, +0, "0");
                }
                public static bool Is()
                {
                    arr = _Snapshot.SearchMask(_ActionWithMask);
                    return (arr[0].X != 1);
                }
            }
    }
Смысл - в 1 статическом классе есть 2 статический класс, который имеет статический конструктор. Проблема: При вызове функции Is,или 1.2.ActionWithMask.Is(), выдается исключение http://msdn.microsoft.com/query/dev1...ATION)&rd=true Вопрос - Что я сделал не так? Проблема заключается именно в статическом конструкторе, до него все работало.
Visual c# выдал: инициализатор типа ActionWithMask выдал исключение В mdsn написано: Разрешение вопросов, связанных с исключениями: System.TypeInitializationException Исключение, которое выбрасывается как оболочка для исключения, выброшенного инициализатором класса. Примечания Если инициализация типа инициализатором класса завершилась сбоем, то будет создан объект TypeInitializationException, которому будет передана ссылка на исключение, созданное инициализатором класса этого типа.Базовое исключение заносится в свойство InnerException объекта TypeInitializationException.

Решение задачи: «Ошибка при вызове статического конструктора статического класса»

textual
Листинг программы
   public static class Game
    {
        static Point[] arr;
        static Snapshot _Snapshot;
        public static class HuntWindow
        {
            public static class ActionGrass
            {
                static Mask _ActionGrass;
                static ActionGrass()
                {
                    _ActionGrass.Add(+0, +2, "0x484E49"); //x16раз
                }
                public static bool Is()
                {
                    arr = _Snapshot.SearchMask(_ActionGrass);
                    return (arr[0].X != 1);
                }
            }
        }
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.25 из 5
Похожие ответы