«Указанный аргумент находится вне диапазона допустимых значений.» В процессе Postback с использованием Infragistics WebDialogWindow - PullRequest
0 голосов
/ 27 октября 2009

У меня действительно странная проблема на веб-странице при обработке поста назад. Вот ошибка, будет следовать объяснение:

Ошибка: Указанный аргумент находится вне диапазона допустимых значений. Имя параметра: значение Описание: во время выполнения текущего веб-запроса произошло необработанное исключение. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.

Сведения об исключении: System.ArgumentOutOfRangeException: указанный аргумент находится вне диапазона допустимых значений. Имя параметра: значение

Ошибка источника:

Во время выполнения текущего веб-запроса было сгенерировано необработанное исключение. Информация о происхождении и местонахождении исключения может быть идентифицирована с помощью приведенной ниже трассировки стека исключений.

Трассировка стека:

[ArgumentOutOfRangeException: Указанный аргумент был вне диапазон допустимых значений. Имя параметра: значение]
System.Web.UI.WebControls.Unit..ctor (String значение, CultureInfo culture, UnitType defaultType) + 8670188
System.Web.UI.WebControls.Unit.Parse (String s, КультураИнфо культуры) + 31
Infragistics.Web.UI.Framework.ControlObject.ConvertToUnit (Объект obj, единица измерения, логическое значение allowNegative) +399 Infragistics.Web.UI.LayoutControls.WebDialogWindow.get_Top () +74 Infragistics.Web.UI.LayoutControls.DialogWindowBot.LoadClientPropsTransactionList (Dictionary`2 список) + 350
Infragistics.Web.UI.Framework.ObjectBase.LoadTransactionList (Boolean deferLoadPostDataProcessing) + 57
Infragistics.Web.UI.Framework.RunBot.LoadClientData () +57 Infragistics.Web.UI.Framework.RunBot.HandleLoadPostData (String postDataKey, NameValueCollection postCollection) + 14
Infragistics.Web.UI.Framework.ControlMain.LoadPostData (String postDataKey, NameValueCollection postCollection) + 19
System.Web.UI.Page.ProcessPostData (NameValueCollection postData, Boolean fBeforeLoad) + 693
System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) + 1743

Экспликация

Если вы посмотрите на трассировку стека, мы легко увидим, что .NET по-прежнему не проходит через мой код, поэтому я не могу поставить точку останова. Что-то более странное в том, что точно такой же процесс, но с разными данными (на моей странице), он прекрасно работает. Пожалуйста, помогите мне, я на это около 3 часов!

UPDATE

Я должен сказать, что когда он терпит неудачу (пока только 2 объекта на что-то вроде 30 протестированных), он терпит неудачу ТОЛЬКО на обратной передаче. Это делается на странице, которая использует: Infragistics webdialogwindow и webcontrol, чтобы обрабатывать «видимое» свойство типа (скрытое или обычное, а не размер). Но, как кто-то сказал ниже (извините, не помню, как вас зовут), это наверняка относится к окну webdialogwindow, но я просто НЕ ОБРАЩАЮСЬ с его позицией ...

ОБНОВЛЕНИЕ 2

Мы попытались удалить значение столбца varchar (max) из базы данных, и теперь оно работает !! Вау, мы не знаем, что думать, потому что все выглядит нормально. Проблема в том, что мы ДОЛЖНЫ сохранить значение этого столбца !!! Кто-нибудь знает, что об этом думать? Этот varchar (max) отображается как Eval ("DescriptionMemo") в списке данных.

Ответы [ 5 ]

1 голос
/ 28 октября 2009

Учитывая ваше обновление, вот обоснованное предположение.

Я не знаю много о компоненте Infragistics WebDialog, но большинство диалогов центрировано на странице. Если ваш столбец имеет какое-либо отношение к позиционированию диалога, он может вычислять позицию диалога на основе размера отображаемых данных.

Если данные слишком велики для отображения, это может поставить диалог в положение, которое теоретически находится за пределами допустимого диапазона значений класса Unit.

Если столбец скрыт, все в порядке, потому что диалоговое окно помещается в окне, а координаты (в частности, координата Top, как показано на трассе стека) будут отрицательными. Если он отображается, диалоговое окно не отображается, поскольку оно выходит за пределы окна браузера.

Это всего лишь теория и предположение, но оно основано на том, что мы видим здесь.

1 голос
/ 27 октября 2009

Я предполагаю, что вы отправляете что-то, что не может разобрать:

System.Web.UI.WebControls.Unit..ctor ( Строковое значение , CultureInfo culture, UnitType defaultType)

Как: настроить свойства блока управления веб-сервером

1 голос
/ 27 октября 2009

Вы вызываете конструктор для System.Web.UI.WebControls.Unit с неверным набором параметров или как-то неправильно его инициализируете.

Вы устанавливаете модуль где-то в WebControl на своей странице aspx?

0 голосов
/ 27 октября 2009

Wowwwww! Все нормально! Все, что я могу сказать, это: Если вы используете Infradistics webdialogwindow с IntialLocation, установленным в «Центрированный». Поместите его в верхней части страницы (в любом случае это «всплывающее окно», чтобы оно «поверх» содержимого вашей страницы). Потому что моя проблема заключалась в том, что, когда страница имела, говорит, что всплывающее окно длиной 32000 пикселей (не знаю точную длину) не могло правильно найти окно, потому что оно не может поместить его в int32 ... вау. Что за ошибка

0 голосов
/ 27 октября 2009

Согласно MSDN , ArgumentOutOfRangeException вызывается конструктором класса Unit, когда аргумент значения выходит за пределы диапазона (не между -32768 и 32767). Каким-то образом это значение передается этому элементу на странице.

Теперь вы сказали, что передаете разные значения в разных запросах и эти запросы работают. Какие ценности вы передаете этой работе? Какие значения, которые вы передаете, терпят неудачу?

РЕДАКТИРОВАТЬ: я вижу, что вы используете Infragistics WebDialogWindow, и что вы пытаетесь получить верхнюю координату диалога. Это координата, которая выключена. Это вне допустимого диапазона значений для класса Unit. Большой вопрос сейчас почему это так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...