1 / 1 / 1
Регистрация: 13.12.2011
Сообщений: 40
1

Валидация не проходит ни клиентская ни серверная

20.08.2012, 20:58. Показов 2882. Ответов 6
Метки нет (Все метки)

Добрый день, уважаемые форумчане , Подскажите пожалуйста в чем может быть проблема. Есть клас который лежит в отдельной сборке

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
public class SomeClass
    {
        public Guid Index { get; set; }
 
        [DisplayName("Название программы")]
        [DataType(DataType.Text)]
        [Required(ErrorMessage = "Поле имя обязательное для заполнения")]
        public string Name { get; set; }
 
        [Range(16,200)]
        [DisplayName("Количество часов")]
        public int Hours { get; set; }        
    }
Также есть две страницы Create & Edit не строго типизированные данные сюда передаю через ViewBag.Model = InstaceOfSomeClass , а вот на самих страницах я уже передаю данные на строго типизированный PartialView
C#
1
@Html.Partial("_Program",@ViewBag.Model as Foo.Bar.FooBar.SomeClass)
тут
HTML5
1
2
3
4
@model Foo.Bar.FooBar.SomeClass
<script src="../../Scripts/libs/jquery-1.7.2.min.js" type="text/javascript"></script>
<script src="../../Scripts/libs/jquery.validate.unobtrusive.min.js" type="text/javascript"></script>
<script src="../../Scripts/libs/jquery.validate.min.js" type="text/javascript"></script>
и что то типа
C#
1
2
3
4
5
6
7
8
9
10
11
12
@using (Html.BeginForm())
{
    @Html.ValidationSummary(true)    
    
                @Html.LabelFor(model => model.Name)
                @Html.EditorFor(model => model.Name)
                @Html.ValidationMessageFor(model => model.Name)
 
                @Html.LabelFor(model => model.Hours)
                @Html.EditorFor(model => model.Hours)
                @Html.ValidationMessageFor(model => model.Hours)
}
Но проблема в том , что хоть что введи в поля , валидация не проходит(получается ни клиентская ни серверная), помогите пожалуйста, проблема может быть уже кем то решалась но я уже ни про что другое и думать не могу, уже пол дня на это потратил. Буду ОЧЕНЬ благодарен за совет !!

P.S в WebConfig все норм вроде бы
XML
1
2
3
4
<appSettings>
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.08.2012, 20:58
Ответы с готовыми решениями:

Клиентская и серверная части
Доброе время суток, требуется написать программу, у которой есть клиент и сервер. Сервер должен...

Разделитель у decimal не принимает ни клиентская, ни серверная часть
И опять эти пляски с разделителем. Разбираюсь по книжке Сандерсона. В таблице ms sql есть поле...

Клиентская валидация
Доброго времени суток. Пишу приложение &quot;Библиотека&quot;. Нужно реализовать серверную и клиентскую...

Клиентская валидация Input поля
есть Input поле, в которое нужно ограничить ввод ненужных символов, причем сделать это нужно без...

6
68 / 66 / 3
Регистрация: 23.08.2010
Сообщений: 195
20.08.2012, 22:41 2
Вы пробовали вместо
C#
1
  public Guid Index { get; set; }
использовать
C#
1
  public Guid ID{ get; set; }
либо
C#
1
  public Guid SomeClassID { get; set; }
?
0
1 / 1 / 1
Регистрация: 13.12.2011
Сообщений: 40
21.08.2012, 00:24  [ТС] 3
А что от того что я поменяю Index на ID валидация страницы заработает ?)
0
68 / 66 / 3
Регистрация: 23.08.2010
Сообщений: 195
21.08.2012, 00:33 4
Цитата Сообщение от ZingZing Посмотреть сообщение
А что от того что я поменяю Index на ID валидация страницы заработает ?)
Была следующая мысль. Entity Framework генеря на основе класса таблицу создает primary key (с счетчиком) для полей с наименованиями ID, ClassID. Я предположил что для вашего поля Index - primary key (+ счетчик) не формируется, с учетом того что вы это поле не заполняете в форме оно остается пустым. Отсюда и ошибка валидации.

P.s. Возможно я ошибаюсь и с вашим Index'ом все Ок.
P.s.s. Да, вы еще используете GUID...
0
4 / 4 / 2
Регистрация: 06.07.2012
Сообщений: 95
21.08.2012, 02:23 5
Создайте стандартное приложение и запустите его. В запущеном приложении посмотрите исходный код сформировавшейся странички Registration (там точно все работает). А теперь посмотрите в исходный код вашей странички где не проходит влидация и сравните их

Эт как вариант.
0
1 / 1 / 1
Регистрация: 13.12.2011
Сообщений: 40
21.08.2012, 11:13  [ТС] 6
Идентично, это первое что я сделал.

Добавлено через 1 час 23 минуты
Всем спасибо, проблема решена ...
0
64 / 19 / 2
Регистрация: 12.06.2011
Сообщений: 92
21.08.2012, 17:49 7
Теперь я понимаю, почему у вас отрицательная репутация: вы начинаете топик и заканчиваете его фразой "Всем спасибо, проблема решена ... "
4
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.08.2012, 17:49
Помогаю со студенческими работами здесь

Как запустить сразу два проекта в решении (серверная часть и клиентская)
Я не силен пока в терминологии... так что если что извиняйте... но вообщем суть такая есть есть...

Клиентская валидация при изменении DOM
Когда пишу во вьюшке просто &lt;select data-val=&quot;true&quot; data-val-required=&quot;Выберете&quot; значение=&quot;&quot; ...

Валидация не проходит
Всем привет! Ребят подскажите как заставить работать это: У меня в базе поля типа decimal...

Не проходит валидация
Пишу страницу index.php, на данный момент имеет следующий вид: &lt;!DOCTYPE html&gt; &lt;html lang=&quot;en&quot;&gt;...

Не проходит валидация формы
Доброе время суток! Делаю первые шаги в ASP.NET MVC 4. Есть форма ввода документа: @model...

Вирус vk.com, не проходит валидация номера телефона
Добрый день. Не заходит в акк. вконтакте, после ввода пароля просит ввести номер, но валидация не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru