-1

我正在开发一个具有 N 行表的应用程序。我正在使用 C# 和 SQL Server。

我必须每天检索不同的行。例如,在 12 月 22 日,我必须检索第 1 行。在 12 月 23 日,我必须检索第 2 行,等等。

我需要一个函数,它返回一个从 1 到 N 的数字,使用DateTime.DayOfYear属性来获取它。

也许我需要做这样的事情(DateTime.DayOfYear mod N),做我想做的事。

我需要做什么?

4

2 回答 2

1

用于DateTime.ToOADate()获取数值。

var today = DateTime.Today.ToOADate();
return today % N;

如果您想在 SQL 查询中执行此操作,我相信有一些类似的功能,例如ToOADate().

有关 OADate() 的详细信息,请参阅文档。关联

于 2013-09-27T18:23:10.873 回答
0
var today = DateTime.Now().DayOfYear;
return today % N + 1;

This will get you a number between 1 and N.  If you don't use the + 1 it will be between 0 and N - 1.  If your SQL Server has N rows and an identity column you can just

select *
from my_table
where my_parameter = my_identity;

只需将 c# 函数的结果作为参数传递给 sql 命令,就可以了。

于 2013-09-27T19:08:25.170 回答