powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET MVC 3 - нужна помощь...
18 сообщений из 18, страница 1 из 1
ASP.NET MVC 3 - нужна помощь...
    #38698249
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Совсем немного работал с ASP.NET MVC 3 - поэтому нужна помощь.
Ситуация следующая. Нужно было добавить на форму одно поле для
сохранения определенной информации в БД (MS SQL).
Добавил поле в таблицу БД , параметр в хранимые процедуры ,
которые пишут в БД , обновил модель из БД ,
вручную добавил в один из Complex Types это поле .
Доработал соотв. контроллеры , представления и DAL.
Сейчас на форме после моей доработки не выводится одна область с набором
полей (в том числе и то, которое я добавлял ).
Внимание , вопрос !
Как мне протестировать - проверить , почему на определеном этапе
элементы перестают добавляться в форму (часть элементов есть).
Как мне воспользоваться средством тестирования , встроенным в Chrome ?
Вообщем , как можно отловить ошибку ?
Спасибо большое !
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38698256
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
надо просто посмотреть на результирующий html
возможно просто забыли какой-то тэг закрыть
можно прогнать результирующую страничку через какой-нибудь html-валидатор
NIon Как мне воспользоваться средством тестирования , встроенным в Chrome Ctrl+Shift+I, дальше гулять по дереву документа, смотреть в том месте, где вы ожидаете увидеть свой контрол
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38698257
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если нужна еще какая-то инф. - я напишу...
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38698341
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Proнадо просто посмотреть на результирующий html
возможно просто забыли какой-то тэг закрыть
можно прогнать результирующую страничку через какой-нибудь html-валидатор
NIon Как мне воспользоваться средством тестирования , встроенным в Chrome Ctrl+Shift+I, дальше гулять по дереву документа, смотреть в том месте, где вы ожидаете увидеть свой контрол

Спасибо. Пробовал сделать валидацию на http://validator.w3.org/ - выдал около 90 ошибок , что-то не то ...
По дереву документа гулял - там где ожидал увидеть контролы - их просто нет.
Можно мне как-то отловить то событие, когда они туда добавляются и собственно посмотреть , что же все таки происходит ???
спасибо
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38698345
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Контролы подгружаются аяксом или присутствуют в представлении, получаемом GET?

Если не находите контролов через просмотр модели документа в отладчике, смотрите "сырой" html-текст (на стороне клиента). Если и там их нет, будем думать дальше, если есть - ошибка в тэгах скорее всего.

NIonвыдал около 90 ошибок , что-то не то ...да, что-то не то, когда у вас файл с таким количеством ошибок. Надо выполнить работу над ошибками.
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38698819
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.ProКонтролы подгружаются аяксом или присутствуют в представлении, получаемом GET?

Если не находите контролов через просмотр модели документа в отладчике, смотрите "сырой" html-текст (на стороне клиента). Если и там их нет, будем думать дальше, если есть - ошибка в тэгах скорее всего.

NIonвыдал около 90 ошибок , что-то не то ...да, что-то не то, когда у вас файл с таким количеством ошибок. Надо выполнить работу над ошибками.

Насчет того ,как подгружаются контролы - попробую описать все подробно. Смотрю сейчас две страницы - рабочую , там где контролы есть , и частично нерабочую - где их нет . Смотрю в Chrome - через Инструменты-->Посмотреть исходный код.
1) Самих контролов в исходном коде нет ни там , ни там - насколько понимаю , подгружаются они динамически из файла ShopWorkEdit.ascx .
Когда смотрю страницу , где контролов нет , через Инструменты разработчика-->Elements , то в том месте, где по идее должны быть контролы (они должны быть в div=ShopWorkEdit ) ничего нет - div пустой.
Когда же смотрю страницу , где контролы есть , также через Инструменты разработчика-->Elements , то в том месте, где стоит начало div=ShopWorkEdit идет буквально следующий текст :
<form action ="/AppName/Manager/ShopWorkEdit?shopid=906&cuurdate=16.07.2014&1405581402832" method="post"> (***)
и потом после этого идут недостающие в проблемной форме элементы.
В ManagerController.cs есть данный метод public ActionResult ShopWorkEdit(int shopId,string currdate )
Вот насколько я понимаю , код (***) почему то не вызывается в исправленной форме . Почему ?
=====
Валидатор html выдал те же 90 ошибок , когда я дал ему код нормально работающей страницы , где контролы есть (Инструменты-->Посмотреть исходный код) - почему так ?
Спасибо большое всем заранее
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38698835
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIonнасколько понимаю , подгружаются они динамически из файла ShopWorkEdit.ascx .то есть вы пытаете что-то изменить даже толком не зная как это работает? По какому событию подгружаются контролы (вы нажимаете на кнопку на форме, при загрузке документа и т.п.)?

Логи приложения смотрели? Точку останова на экшне контроллера, который предположительно подгружает контролы, ставили?
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38698839
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIonВалидатор html выдал те же 90 ошибок , когда я дал ему код нормально работающей страницы , где контролы есть (Инструменты-->Посмотреть исходный код) - почему так ?валидатор подробно по каждой ошибке говорит, почему так, со ссылками на соответствующую документацию.

Впрочем, если подгрузка контролов осуществляется аяксом, то дело, конечно, не в этом.
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38698941
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.ProNIonнасколько понимаю , подгружаются они динамически из файла ShopWorkEdit.ascx .то есть вы пытаете что-то изменить даже толком не зная как это работает? По какому событию подгружаются контролы (вы нажимаете на кнопку на форме, при загрузке документа и т.п.)?

Логи приложения смотрели? Точку останова на экшне контроллера, который предположительно подгружает контролы, ставили?
Спасибо. Я не веб разработчик - занимаюсь совсем другим. У нас стоит это веб приложение - 1 раз в год просят что-то по мелочи добавить , вот по необходимости и приходится... В основном я примерно (ключевое слово примерно :)) ) понимаю, как это все функционирует - просто так выразился . Контролы все подгружаются при загрузке документа , насколько понимаю вот здесь
$(document).ready(...
Лог приложения Вы имеете ввиду в системном журнале ? Точку останова на экшене конроллера сейчас буду ставить и тестировать.
Спасибо еще раз большое за помощь.
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38698955
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIonКонтролы все подгружаются при загрузке документа , насколько понимаю вот здесь
$(document).ready(...уже лучше, по крайней мере, вы знаете точку, от которой отталкиваться.

скорее всего, вы вносите ошибку, которая привозит к незагрузке нужного блока данных. В каком браузере вы запускаете отладку, в хроме? Переключитесь на IE и вам будет доступна отладка JS прямо в студии, по крайней мере, вы сможете видеть возникшую ошибку, если она возникла в JS и трассировать ее прямо в студии, не заморачиваясь с отладчиком хрома.
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38699008
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поставил в контроллере точку останова , на первую строку попало управление
(1) if (ManagerDAL.GetShopWork(ShopId, DateTime.Parse(currdate)).ToList().Count > 0 || ManagerDAL.GetShopWorkItems(ShopId, DateTime.Parse(currdate)).ToList().Count > 0)
{
(2) return RedirectToAction("ShopWorkEditExist", new { ShopId = ShopId, currdate = currdate });
}
(3) var Shop = ShopDAL.Get(ShopId, false, null).First();
...
когда управление попало на первую строку - вроде ничего подозрительного не заметил , по F11 походил по коду ,
потом выставил точки останова на строке (2) и (3) и нажал "Продолжить" ,
и вот здесь управление почему то не попало ни на строку (2) ни на (3) , что мне кажется странным ну и страница , соответсвенно отобразилась без нужных контролов.
VS 2010 , Win XP , IE 8.0.6001 - с таким IE то , что Вы говорили про отладку js в нем будет работать ?
Сейчас буду пробовать..
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38699112
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) освойте тэги оформления кода - FAQ

2) сложно что-то говорить, не видя картины. По идее, с помощью отладки вы должны найти место, где выгружаются контролы в неисправленном варианте, затем посмотреть исправленный вариант. Ну для определения причин произошедшего или не произошедшего ветвления и т.п. в студии существует масса инструментов.

3) ну или ошибка при выполнении JS (это просто мое предположение). Насчет восьмерки - не знаю, у меня стоит 11-й, в любом случае, что мешает обновиться? Отладчик в IE вызывается по F12 и кажется мне более удобным, чем хромовский, хотя в сложных случаях я пользуюсь аж тремя - ИЕ, Хром и старая Опера - во всех есть свои особенности, нужные в конкретных случаях.
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38699286
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro1) освойте тэги оформления кода - FAQ

2) сложно что-то говорить, не видя картины. По идее, с помощью отладки вы должны найти место, где выгружаются контролы в неисправленном варианте, затем посмотреть исправленный вариант. Ну для определения причин произошедшего или не произошедшего ветвления и т.п. в студии существует масса инструментов.

3) ну или ошибка при выполнении JS (это просто мое предположение). Насчет восьмерки - не знаю, у меня стоит 11-й, в любом случае, что мешает обновиться? Отладчик в IE вызывается по F12 и кажется мне более удобным, чем хромовский, хотя в сложных случаях я пользуюсь аж тремя - ИЕ, Хром и старая Опера - во всех есть свои особенности, нужные в конкретных случаях.

Спасибо большое. Как оформлять код посмотрел. Обновить IE не получится , т.к. на XP выше 8 IE не хочет ставиться.
Сейчас я прошел с отладчиком по контроллеру весь путь. Я так понял , что контроллер просто не отработал.
В конце код пришел вот сюда (т.е. файл .NET , где описан класс Controller ):
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
namespace System.Web.Mvc 
 ...
 class Controller
 ...
            PossiblyLoadTempData();
            try {
                string actionName = RouteData.GetRequiredString("action");
                if (!ActionInvoker.InvokeAction(ControllerContext, actionName)) { 
                    HandleUnknownAction(actionName);
                } 
            } 
            finally {
                PossiblySaveTempData(); 
            }


и выполнилось ветка finally , т.е. насколько понимаю сам контроллер не отработал. По ходу тестирования постоянно вылетали вот такие странные сообщения об ошибке (раз 20 ошибка появлялась , связанная с разными файлами NET *.cs) : (прикрепил принтскрин ошибки)
===
Как можно в VS+IE протестировать исполнение JS ? Как мне на JS выйти и поставить точку останова - никогда js не приходилось тестировать.
Спасибо большое
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38699349
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NIon,

Либо конкретный пост доходит до контроллера и глюк надо искать в экшне контроллера. Именно в том экшне, который отвечает конкретно за загрузку того блока, который у вас не грузится. Прохождение экшна должно заканчиваться что-то типа return PartialView(...). Как работает контроллер внутри, вас не должно волновать, интересует только нужный экшн.

Либо конкретный экшн НЕ вызывается (то есть захода в него нет вообще), тогда есть смысл искать на стороне JS.
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38699423
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.ProNIon,

Либо конкретный пост доходит до контроллера и глюк надо искать в экшне контроллера. Именно в том экшне, который отвечает конкретно за загрузку того блока, который у вас не грузится. Прохождение экшна должно заканчиваться что-то типа return PartialView(...). Как работает контроллер внутри, вас не должно волновать, интересует только нужный экшн.

Либо конкретный экшн НЕ вызывается (то есть захода в него нет вообще), тогда есть смысл искать на стороне JS.

Спасибо. Заход в экшн контроллера есть - ведь на точке останова останавливается на строке (1) , как я уже писал - а дальше уже на строку (2) или (3) не проходит (хотя на (2) или (3) при нормальном выполнении обязательно управление должно передаться) :
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
[OutputCache(NoStore = true, Duration = 0)]
public ActionResult ShopWorkEdit(int shopId,string currdate )
{

    (1) if (ManagerDAL.GetShopWork(ShopId, DateTime.Parse(currdate)).ToList().Count > 0 || ManagerDAL.GetShopWorkItems(ShopId, DateTime.Parse(currdate)).ToList().Count > 0)
    {
          (2) return RedirectToAction("ShopWorkEditExist", new { ShopId = ShopId, currdate = currdate });
    }
   (3) var Shop = ShopDAL.Get(ShopId, false, null).First();
...


На основании того , что управление не передается на строки (2) или (3) я делаю вывод , что ошибка какая-то в выполнении кода строки (1) :
Код: c#
1.
2.
(1) if (ManagerDAL.GetShopWork(ShopId, DateTime.Parse(currdate)).ToList().Count > 0 || ManagerDAL.GetShopWorkItems(ShopId, DateTime.Parse(currdate)).ToList().Count > 0)
    {


правильно ? (т.е. ошибка не в JS)
Я обновлял модель из базы данных - может модель некорректно обновилась ?
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38699436
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разбейте if на элементарные части и выполните их по одной в окне Immediate Window, когда выполнение остановилось на точке останова на первой строке (можно попробовать просто наводить мышь на разные части выражения условия)
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38699460
NIon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ура !!! Заработало ! Я такой редиска в одну хранимую процедуру не добавил выходной параметр.
Shocker.Pro, Спасибо огромное , чтобы я без Вас делал. Начало все нормально выводиться , сейчас еще проверю на сохранение.

( Shocker.Pro) Ответьте пожалуйста на такой вопрос , если возможно. Хочу в свободное время глубже изучать ASP/NET MVC - и в перспективе хочу сайтик какой-нибудь сделать на этом деле , может чтобы можно было в шахматы на нем играть (заодно и продвинуться на этом в знаниях по WEB-разработке).
Данная технология ASP/NET MVC подойдет для того, чтобы шахматный сайт на ней сделать или есть для этого что-то более лучшее ?
...
Рейтинг: 0 / 0
ASP.NET MVC 3 - нужна помощь...
    #38699469
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сойдет, это современный тренд для разработки веб-приложений.
Только уже MVC5
сегодняшнее обсуждение Стоит ли изучать Asp.net (MVC) ?
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET MVC 3 - нужна помощь...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]