Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> входная строка имеет неверный формат 
V
    Опции темы
A5uKa
  Дата 12.1.2010, 10:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



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

Сведения об исключении: System.FormatException: Входная строка имела неверный формат.

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

Цитата

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


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

Код

[FormatException: Входная строка имела неверный формат.]
   System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) +7467367
   System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +119
   SqlCatalogProvider.GetChildCategories(String parentCategoryId) +380
   Catalog.GetChildCategories(String parentCategoryId) +24
   Items.populateCategoryNode(TreeNode n) +50
   Items.Page_Load() +259
   System.Web.Util.CalliHelper.ArglessFunctionCaller(IntPtr fp, Object o) +8
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +8664611
   System.Web.UI.Control.OnLoad(EventArgs e) +99
   System.Web.UI.Control.LoadRecursive() +50
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627


Код

Код

           else
            {
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.CommandText="GetNonRootCategories";
                cmd.Connection = con;
                cmd.Connection.Open();

                cmd.Parameters.AddWithValue("@UserID", Auth.User.GetUser());

                cmd.Parameters.Add("@ParentID", SqlDbType.Int);// NVarChar);
                cmd.Parameters["@ParentID"].Value = Int32.Parse(parentCategoryId);
                // ??
            }

            SqlDataReader r = cmd.ExecuteReader();


процедура
Код

ALTER PROCEDURE [dbo].[GetNonRootCategories]
(@ParentID int, @UserID int)
AS           
BEGIN

    SET NOCOUNT OFF;

    SELECT [ID_Izmerit]
      ,[ID_GISFolder]
      ,[Name]
    FROM [FlowServer].[dbo].[CfgIzmeritel]
    WHERE ID_Izmerit in
    (SELECT [ID_Izmerit]
    FROM [FlowServer].[dbo].[TbUserIzmerit]
    WHERE ID_User=@UserID)    
    AND
    ID_GISFolder in
    (SELECT ID_GISFolder
    From [FlowServer].[dbo].[CfgFolderGIS]
    WHERE ID_GIS = @ParentID) 

END


явно что-то получает не то, что хочет но вот, что и где не так не могу найти...

PM   Вверх
tol05
Дата 12.1.2010, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1632
Регистрация: 21.12.2006
Где: Харьков

Репутация: 34
Всего: 170



Цитата(A5uKa @  12.1.2010,  09:21 Найти цитируемый пост)
 cmd.Parameters["@ParentID"].Value = Int32.Parse(parentCategoryId);

какое значение имеет parentCategoryId?
Цитата(A5uKa @  12.1.2010,  09:21 Найти цитируемый пост)
System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) +7467367
   System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +119

явно видно что Int32.Parse не работает


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
A5uKa
Дата 12.1.2010, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



ок...

сначала я беру root категории

Код

List<Category> rootCategories = Catalog.GetChildCategories(String.Empty); 

тут я более менее понимаю, потом есть такая строка

Код

string categoryId = Request.QueryString["catId"];


мне пока ещё очень смутно понятна .нет магия как это работает и куда посылается Request ?


PM   Вверх
tol05
Дата 12.1.2010, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1632
Регистрация: 21.12.2006
Где: Харьков

Репутация: 34
Всего: 170



ничего не понял.

программа очевидно падает в строке
Цитата(A5uKa @  12.1.2010,  09:21 Найти цитируемый пост)
cmd.Parameters["@ParentID"].Value = Int32.Parse(parentCategoryId);

потому что Int32.Parse не может распарсить в int строку, представленную переменной parentCategoryId

вопрос: чему равно значение parentCategoryId? Брейкпоинт можно на эту сроку поставить и посмотреть?

Цитата(A5uKa @  12.1.2010,  11:27 Найти цитируемый пост)
string categoryId = Request.QueryString["catId"];

опять же, чему равно значение categoryId после выполнения этой строки?


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
A5uKa
Дата 12.1.2010, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



Вопрос был 
Цитата

куда посылается Request ?


Каким-то магическим путём он посылается в тот класс который надо и берёт от туда id  smile ,
Проблема решена ) 
Спасибо за помощь.
Перехожу к следующей в новой теме  smile 
PM   Вверх
tol05
Дата 12.1.2010, 14:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1632
Регистрация: 21.12.2006
Где: Харьков

Репутация: 34
Всего: 170



Цитата(A5uKa @  12.1.2010,  12:50 Найти цитируемый пост)
Вопрос был 
Цитата

куда посылается Request ?


Каким-то магическим путём он посылается в тот класс который надо и берёт от туда id  smile ,


тут так сразу не ответишь... В очень грубом приближении:

Request - это объект запроса к серверу. Он "приходит" на сервер, а "посылается" Response (ответ)

оба эти объекта - поля объекта HttpContext (контекста обработки запроса). HttpContext содержит почти все, что может понадобиться для обработки данного конкретного запроса. В том числе:
- входные данные запроса клиента (queryString, если исп. метод Get или Forms, если исп. метод Post)
- выходной поток, куда пишется ответ. Это Response и его стрим
- данные сессии, кеша, приложения
- данные о юзере
и т.п.

HttpContext.Current представляет данный текущий контекст запроса.

Контекст инициализируется средой ASP.NET автоматически, до того, как запрос попадет в обработку на страницу. И к этому моменту HttpContext.Current будет содержать все данные, относящиеся именно к данному запросу. 

В том числе, HttpContext.Current.Request.QueryString будет содержать коллекцию пар имя-значение из строки запроса клиента (http://www.blablabla.com/page.aspx?catId=10&categoryId=5)

Это сообщение отредактировал(а) tol05 - 12.1.2010, 14:41


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
A5uKa
Дата 12.1.2010, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



Познавательно  smile 
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0931 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.