Does the DataAnnotations.DisplayAttribute.Order property not work with ASP.NET MVC 2?

给你一囗甜甜゛ 提交于 2019-12-20 03:15:18

问题


I set values for the Order property of the Display attribute in my model metadata.

[MetadataType(typeof(OccasionMetadata))]
public partial class Occasion
{
    private class OccasionMetadata
    {
        [ScaffoldColumn(false)]
        public object Id { get; set; }

        [Required]
        [Display(Name = "Title", Order = 0)]
        public object Designation { get; set; }

        [Required]
        [DataType(DataType.MultilineText)]
        [Display(Order = 3)]
        public object Summary { get; set; }

        [Required]
        [DataType(DataType.DateTime)]
        [Display(Order = 1)]
        public object Start { get; set; }

        [Required]
        [DataType(DataType.DateTime)]
        [Display(Order = 2)]
        public object Finish { get; set; }
    }
}

I present my models in strongly-typed views using the DisplayForModel and EditorForModel methods.

<%= Html.DisplayForModel() %>

and

<%= Html.EditorForModel() %>

But, ASP.NET MVC 2 displays the fields out of order! What might I have wrong?


回答1:


.NET 4 DataAnnotations comes with a new Display attribute that has several properties including specifying the value that is used for display in the UI and a ResourceType. Unfortunately, this attribute is new and is not supported in MVC 2 RTM.

The good news is it will be supported and is currently available in the MVC Futures release.

The steps to get this working are shown below...

from Localization in ASP.NET MVC 2 using ModelMetadata by Raj Kaimal




回答2:


Brad Wilson said November 2009:

There is no support for order in MVC 2, and it's not likely to be there until MVC 3. One major reason is that DataAnnotations in .NET 4 have added ordering support, but since we rely on 3.5, we cannot do it yet.

from comment on "ASP.NET MVC 2 Templates, Part 5: Master Page Templates"



来源:https://stackoverflow.com/questions/2837952/does-the-dataannotations-displayattribute-order-property-not-work-with-asp-net-m

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!