Проверка модели в ASP.Net MVC2 - PullRequest
0 голосов
/ 13 августа 2010

У меня есть следующая таблица базы данных:

alt text

А вот код, который я использую для проверки модели, созданной Entity Framework:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;

namespace UTEPSA.Models
{
    [MetadataType(typeof(Area_Validation))]
    public partial class Area
    {

    }

    public class Area_Validation
    {
        [Required(ErrorMessage = "Campo requerido: Debe elegir un Jefe valido.")]        
        public int IDJefe { get; set; }

        [Required(ErrorMessage = "Campo requerido: Nombre")]
        public string Nombre { get; set; }
    }
}

Поле идентификатора находится в первичном ключе int и является идентификатором, поэтому оно автоинкрементно, и мне не нужно вводить поле.

Однако, когда я пытаюсь сохранить форму для редактирования, мне НУЖНО написать любое число, чтобы оно прошло.

When I leave the field blank:
Validation fails.

When I type in a string:
Validation fails.

When I type in ANY number:
Validation passes.

Любое предложение о том, как игнорировать это поле?

Визуализированный HTML-код:

<form action="/area/create" method="post"> 

        <fieldset> 
            <legend>Fields</legend> 

            <div class="editor-label"> 
                <label for="ID">ID</label> 
            </div> 
            <div class="editor-field"> 
                <input id="ID" name="ID" type="text" value="0" /> 

            </div> 

            <div class="editor-label"> 
                <label for="IDJefe">IDJefe</label> 
            </div> 
            <div class="editor-field"> 
                <input id="IDJefe" name="IDJefe" type="text" value="" /> 

            </div> 

            <div class="editor-label"> 
                <label for="Nombre">Nombre</label> 
            </div> 
            <div class="editor-field"> 
                <input id="Nombre" name="Nombre" type="text" value="" /> 

            </div> 

            <p> 
                <input type="submit" value="Create" /> 
            </p> 
        </fieldset> 

    </form>

1 Ответ

0 голосов
/ 13 августа 2010

Тогда не следует устанавливать значение «Требуется», поскольку оно не требуется для вставки.

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