如何订购本地化文本列表

时间:2012-11-27 19:52:48

标签: asp.net

我想知道是否有人可以告诉我或者如何指导我如何按名称订购objet列表(密钥,名称),但名称是LocalizedText格式,也许我是如此愚蠢,但我不能订购此清单。

//Objects definied on my class:
    [DataMember]
    public virtual Guid ComplaintPreventableStateId { get; set; }
    [DataMember]
    public virtual LocalizedText Name { get; set; }


  //function that tries to get information:
 IList<ComplaintPreventableState> complaintPreventableList = new List<ComplaintPreventableState>();
        complaintPreventableList = (from c in ComplaintPreventableState.All select c).ToList();
   //Tried this two options:           
 complaintPreventableList.OrderByDescending(h => h.Name);
 complaintPreventableList.OrderBy(h => h.Name);

1 个答案:

答案 0 :(得分:0)

我假设你有一个KeyValuePair(Of Integer, String)的列表,因为你不能拥有2个类型的List() - 如果你使用的是{{1},那就相同了也是。

List(Of Object)

这将按名称设置列表,这将成为Bob,Harry,John。

<强>更新

因此,以您的代码为例,您需要更改此内容:

        // Your list object
        Dim list As New List(Of KeyValuePair(Of Integer, String))

        // putting some values in the list
        list.Add(New KeyValuePair(Of Integer, String)(1, "Bob"))
        list.Add(New KeyValuePair(Of Integer, String)(1, "John"))
        list.Add(New KeyValuePair(Of Integer, String)(1, "Harry"))

        // Ordering your list by the Value
        list = list.OrderBy(Function(p) p.Value).ToList()

对此:

     complaintPreventableList.OrderBy(h => h.Name);

请注意最后的电话 complaintPreventableList = complaintPreventableList.OrderBy(h => h.Name).ToList();

如前面的例子;你需要将有序列表分配给自己