Cómo realizar esta validación en ASP.NET MVC: si el campo FromDate tiene un valor, solo entonces, el campo EndDate también debe tener un valor

Realmente aprecio tu entusiasmo por aprender y practicar escribir código. Por favor continúe de esta manera.

Aquí está su código, pero únase a StackOverflow y pregunte allí. No me escala responder estas preguntas.

clase EndDateAttribute: ValidationAttribute
{
cadena privada _startDatePropertyName = nulo;

public EndDateAttribute (string startDatePropertyName): base ()
{
_startDatePropertyName = startDatePropertyName;
}

invalidación protegida ValidationResult IsValid (valor del objeto, ValidationContext validationContext)
{
var startDateProperty = validationContext.ObjectType.GetProperty (_startDatePropertyName);

if (startDateProperty == null)
{
return new ValidationResult ($ “No existe ninguna propiedad llamada {_startDatePropertyName} en su modelo”);
}

var startDateValue = (DateTime?) startDateProperty.GetValue (validationContext.ObjectInstance);
var endDateValue = (DateTime?) valor;

if (startDateValue.HasValue &&! endDateValue.HasValue)
{
return new ValidationResult ($ “El campo {validationContext.MemberName} debe tener un valor”);
}

volver nulo;
}
}

Luego, aplica solo EndDateAttribute a alguna propiedad del modelo de esta manera:

clase MyModel
{
fecha y hora pública? StartDate {get; conjunto; }

[EndDate (“StartDate”)]
fecha y hora pública? EndDate {get; conjunto; }
}

Para el escenario que desea, debe usar la Validación personalizada en ASP.NET, y se puede implementar tanto en el lado del cliente usando JavaScript como en el lado del servidor usando los controles de servidor C # y ASP.NET.
Para más detalles, consulte estos enlaces:
Validación personalizada de ASP.NET La validación del lado del cliente y del lado del servidor no se activa
Control de Validación Personalizado

More Interesting

Tengo una idea de inicio, pero estoy debatiendo si comenzar en la web o como una aplicación.

¿Puedo hacer una carrera como desarrollador web? Tengo 29 años y tengo un título de PG irrelevante en ciencias. He creado mi propio sitio web en PHP por experiencia, tengo conocimiento del marco MVC y he diseñado plantillas receptivas en Bootstrap.

¿Qué idiomas, API y marcos necesito aprender para convertirme en un desarrollador web de Full Stack?

Soy competente con Python y Java, y tengo conocimiento práctico de Django. Estoy tratando de tener una idea para mi primer gran proyecto (algo que será útil para las personas y se verá bien en mi currículum). ¿Hay alguna idea?

Estoy tratando de seguir una carrera en desarrollo web front-end. Ya estudié HTML y CSS. ¿Es un buen camino para aprender Dreamweaver y WordPress?

Estoy interesado en crear un sitio donde revise películas nuevas y viejas, bloguee sobre tendencias en el cine mundial y responda preguntas sobre películas. ¿Cuál es la mejor plataforma para alguien que no es increíblemente experto en tecnología?

Tengo una idea para crear una red social de nicho. ¿Cómo empezar?

Mi entrevista es originalmente en blogtalkradio.com.¿Cómo publicar una entrevista de audio en el blog de WordPress?

Estoy trabajando en un sitio porno. ¿Cómo obtengo contenido para agregar al sitio?

Conozco los conceptos básicos de JS, jQuery, PHP y HTML / CSS. Necesito crear un sitio web interactivo, para preguntas y respuestas para el público. ¿Cuáles son los siguientes pasos?

Estoy interesado en JavaScript del lado del servidor, pero tengo más experiencia en PHP. ¿Vale la pena invertir tiempo para convertirse en un experto en PHP?

Estoy subcontratando el desarrollo de mi MVP, ¿cómo audito la calidad del código?

Necesito construir una API REST, pero debería implementar un patrón MVC. Estoy confundido sobre lo que debería ir en la sección de vista. Alguien puede explicar?

He construido mi sitio usando CodeIgniter. ¿Qué tan difícil sería convertirlo a ExpressionEngine?

Necesito crear una página web propia. ¿Cuál es la mejor manera de hacerlo?