1

我不确定标题是否完全解释了我在这里所追求的,所以让我尝试更详细地解释一下......

我需要能够创建一个显示这个的表......

日期示例 放大图片

表:

  1. 项目(每次安装和删除此项目时)
  2. 供应商(每次供应商与项目一起使用时)
  3. 费率(供应商的费率)

它需要能够:

  1. 获取所选期间的范围
  2. 从表格中获取最早的日期作为开始日期
  3. 获取最新日期

如果开始日期都在开始期间之前并且所有结束日期都在结束期间之后,那么它将是一个简单的单行。但是任何在该期间开始或结束的日期都会为该行设置相关日期,并在上一行结束之后获取下一个开始日期。

除此之外,我已经使用 Linq 完成了整个程序,并且我有一些看起来可以工作的东西,但我真的对 Iv 完成它的方式不满意。

我的问题是......处理这些日期的优雅方式是什么?我应该使用 C# 还是 SQL Server 以获得最佳结果?

4

1 回答 1

1

首先很高兴看到有人在能源管理行业工作。

不幸的是,我不太明白你的问题,但是,我的建议是:

“将生成/检索数据逻辑下移一层”

表现:SQL Server > .Net > LINQ

LINQ 的功能非常有限,不容易处理。

您是否尝试过使用 SQL 存储过程带回一组数据?

SQL Query 中的函数case statement可以min group by轻松解决您的问题。

在这种情况下,SQL Server 会将预期的数据带回 C#,然后 C# 只需要一种方式来呈现这些数据。

于 2012-07-17T13:42:52.323 回答