mirror of
https://gitlab.com/buildfeed/BuildFeed.git
synced 2024-03-22 21:10:34 +08:00
26 lines
866 B
C#
26 lines
866 B
C#
using System;
|
|
using System.Globalization;
|
|
using System.Web.Mvc;
|
|
|
|
namespace BuildFeed.Code
|
|
{
|
|
public class DateTimeModelBinder : DefaultModelBinder
|
|
{
|
|
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
|
|
{
|
|
ValueProviderResult value = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);
|
|
|
|
DateTime retValue;
|
|
bool success = DateTime.TryParse(value.AttemptedValue, CultureInfo.CurrentUICulture.DateTimeFormat, DateTimeStyles.AllowWhiteSpaces, out retValue);
|
|
|
|
if (!success)
|
|
{
|
|
success = DateTime.TryParseExact(value.AttemptedValue, "yyMMdd-HHmm", CultureInfo.InvariantCulture, DateTimeStyles.AllowWhiteSpaces, out retValue);
|
|
}
|
|
|
|
return success
|
|
? retValue as DateTime?
|
|
: null;
|
|
}
|
|
}
|
|
} |