-3

我正在使用 MVC (Razor) 应用程序。在视图中,我从我的数据库中以不同的格式获取日期,但我只能在我的视图中以“MM/DD/YY”格式显示日期。我该怎么做。你能建议一下,我能用什么。

4

3 回答 3

0

尝试这个,

string NewDate = YourDateObject.ToString("MM/DD/yyyy");
于 2013-10-18T11:01:22.037 回答
0

您可以创建自定义 Data Annotations Model MetadataProvider来实现这一点

  1. 创建自定义Data Annotations Model MetadataProvider购买继承DataAnnotationsModelMetadataProvider如下:

    public class JobMetaDataProvider : DataAnnotationsModelMetadataProvider
    {
    protected override ModelMetadata CreateMetadata(IEnumerable<Attribute> attributes, Type containerType, Func<object> modelAccessor, Type modelType, string propertyName)
    {
        var metadata = base.CreateMetadata(attributes, containerType, modelAccessor, modelType, propertyName);
        if (modelType == typeof(DateTime))
            metadata.EditFormatString = "{0:yyyy/MM/dd}";
    
        return metadata;
    }
    }
    
  2. 然后在你Global.asax指定你的Metadata Provider

        protected void Application_Start()
        {
        AreaRegistration.RegisterAllAreas();
        RegisterGlobalFilters(GlobalFilters.Filters);
        RegisterRoutes(RouteTable.Routes);
        ModelMetadataProviders.Current = new JobMetaDataProvider(); \\specify your Metadata Provider
        }
    
于 2013-10-18T11:28:20.420 回答
0

在您的模型中,您可以使用此属性注释字段

    [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode=true)]

并给它你想要的任何格式字符串。

于 2013-10-18T14:22:47.567 回答