Carpeta de modelo de fecha y hora personalizada en Asp.net MVC
Me gustaría escribir mi propio modelo de carpeta paraDateTime
tipo. En primer lugar, me gustaría escribir un nuevo atributo que pueda adjuntar a la propiedad de mi modelo como:
[DateTimeFormat("d.M.yyyy")]
public DateTime Birth { get; set,}
Esta es la parte facil. Pero la parte de la carpeta es un poco más difícil. Me gustaría agregar un nuevo modelo de carpeta para el tipoDateTime
. Yo puedo
IModelBinder
interfaz y escribir mi propioBindModel()
métodoheredar deDefaultModelBinder
y anularBindModel()
métodoMi modelo tiene una propiedad como se ve arriba (Birth
) Entonces, cuando el modelo intenta vincular los datos de solicitud a esta propiedad, la carpeta de mi modeloBindModel(controllerContext, bindingContext)
se invoca. Todo bien, pero.¿Cómo obtengo atributos de propiedad de controller / bindingContext para analizar mi fecha correctamente?? Como puedo llegar a laPropertyDesciptor
de propiedadBirth
?
Debido a la separación de inquietudes, mi clase de modelo se define en un ensamblado que no hace referencia (y no debería hacer referencia) al ensamblado System.Web.MVC. Establecer un enlace personalizado (similar aEl ejemplo de Scott Hanselman) atributos es un no-ir aquí.