我在MVC4项目中有一个Silverlight5 PivotViewer主要工作,但是有一个问题。模型中的一些属性被定义为List。
[DataContract]
public class PTE_Test
{
[DataMember]
public string Name { get; set; }
[DataMember]
public string Description { get; set; }
//...
[DataMember]
public List<string> Tags { get; set; }
[DataMember]
public List<string> Practices { get; set; }
[DataMember]
public List<string> SpecificAreas { get; set; }
}
我希望它们用于过滤和搜索,这实际上很有效。但是对它们进行排序没有意义(列表中的哪个字符串可以排序?)。但是,它们不仅出现在排序列表中,而且如果用户选择其中一个,则抛出ManagedRuntimeError异常。
有没有人知道控制排序列表中哪些属性出现的方法?
谢谢!
答案 0 :(得分:2)
很遗憾,您无法将过滤器中的排序分开。这是全有或全无。
您至少可以通过获取List并将其更改为自定义对象并实现IComparable接口来解决用户获得的错误。我在这里发布了一篇关于此主题的博客文章:http://tonychampion.net/blog/index.php/2012/02/pivotviewer-multi-valued-properties/