首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在数据库中创建关键字记录

问在数据库中创建关键字记录
EN

Code Review用户
提问于 2015-01-05 20:02:46
回答 1查看 53关注 0票数 2

此代码是用于在数据库中创建关键字记录的数据模型的一部分。

代码语言:javascript
复制
if (_queue
    .OrderByDescending(record=>record.Primary)
    .GroupBy(record=>record.Term)
    .Select(record=>record.First())
    .Select(Create)
    .Any(result=>result <= 0))
{
    throw new ModelException("Failed to create keyword record.");
}

虽然我能理解这一点,但我也认为这有点模糊。

这段代码的意图清楚可读性吗?

EN

回答 1

Code Review用户

回答已采纳

发布于 2015-01-05 20:44:27

虽然我只会将两个select语句组合在一起并添加一些空格,但还是可以读得很清楚:

代码语言:javascript
复制
if (_queue.OrderByDescending(record => record.Primary)
          .GroupBy(record => record.Term)
          .Select(record => Create(record.First()))
          .Any(result => result <= 0))
{
    throw new ModelException("Failed to create keyword record.");
}

正如您所看到的,我也倾向于将第一个语句保留在同一行,并缩进下一个语句以与linq语句对齐。

不过,有一点要注意:首先,您正在订购您的记录,然后将它们分组。这是故意做的吗?我假设您希望先分组,然后再排序,这完全是因为您必须订购较少的元素。但话又说回来:如果你先订购,分组可能会更有表现力,所以我不完全确定。

票数 1
EN
页面原文内容由Code Review提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codereview.stackexchange.com/questions/75739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档