C# 在地图定义内排序是否被认为是一种不好的做法?
在我的应用程序中,有多个区域需要按同一字段排序的查询结果列表 我定义了一个静态索引,如下所示:C# 在地图定义内排序是否被认为是一种不好的做法?,c#,mapreduce,ravendb,C#,Mapreduce,Ravendb,在我的应用程序中,有多个区域需要按同一字段排序的查询结果列表 我定义了一个静态索引,如下所示: public sealed class BlogPosts_OrderedByPublishDateDesc : AbstractIndexCreationTask<BlogPost> { public BlogPosts_OrderedByPublishDateDesc() { Map = blogPosts => from blogPost in
public sealed class BlogPosts_OrderedByPublishDateDesc : AbstractIndexCreationTask<BlogPost>
{
public BlogPosts_OrderedByPublishDateDesc()
{
Map = blogPosts => from blogPost in blogPosts
orderby blogPost.PublishedOn descending
select new
{
blogPost.PublishedOn
};
}
公共密封类BlogPosts\u OrderedByPublishDateDesc:AbstractIndexCreationTask
{
公共博客帖子\u OrderedByPublishDateDesc()
{
Map=blogPosts=>来自blogPost中的blogPost
orderby blogPost.PublishedOn
选择新的
{
blogPost.PublishedOn
};
}
}
这是可行的,但是在地图定义中排序听起来好像是个坏主意
到目前为止,我还没有找到任何支持或反对的证据
推荐的方法是什么?顺序似乎是创建单个类的一个相当简单的理由
除非您向需要特定顺序的类添加其他类型的独特功能,否则我会说,将其排除在类之外,并允许调用者按照他们的要求对数据进行排序。顺序似乎是创建单个类的一个相当简单的理由
除非您向类中添加了需要特定顺序的其他类型的独特功能,否则我会说将其排除在类之外,并允许调用者按照他们的要求对数据进行排序。在地图上排序是一个noop,它不会影响返回项目的实际顺序。
您需要在查询过程中进行排序,以实现这一点。在地图上排序是一个noop,它不会影响返回项目的实际顺序。
您需要在查询过程中进行排序以实现这一点根据官方用户组,这是推荐的方法:“[静态索引]在首次运行时不太可能过时”。”。我想知道地图定义中的排序是否因任何原因被认为是不好的?根据官方用户组,这是推荐的方法:“[静态索引]在第一次运行时不太可能过时”。我想知道地图定义中的排序是否因任何原因被认为是不好的?