如何在 LINQPad 中使用 DateTime SQL 服务器值执行存储过程?

How can I execute a Stored Procedure with DateTime SQL Server values in LINQPad?

我想查看 LINQPad 中存储过程的值 returns。它需要四个参数,两个字符串后跟两个日期时间。

我试过这个:

sp_Platypus("Gramps", "WilfredOwen", "2015-09-01 15:16:16.622", "2015-09-30 15:16:16.622");

...但它失败了,“无法从 'string' 转换为 'System.DateTime?'

这有效,但(合理地)没有给我任何结果:

sp_Platypus("Gramps", "WilfredOwen", DateTime.Now, DateTime.Now);

所以我尝试用这种方式计算日期:

sp_Platypus("Gramps", "WilfredOwen", DateTime.Now-120, DateTime.Now-30);

...但这被拒绝了,因为它认为最后一个参数不是 Date vals 而是 int vals

我也试过这个(只有日期,没有时间元素):

sp_Platypus("Gramps", "WilfredOwen", "2015-09-01", "2015-09-30");

...无济于事,可能还有其他一些事情。

更新

感谢 JamieD77:如果我这样做:

sp_Platypus("Gramps", "WilfredOwen", DateTime.Now.AddDays(-120), DateTime.Now.AddDays(-30));

...从语言下拉列表中选择 "C# Statement(s)",并从连接下拉列表中选择我的 SQL 服务器连接,它被接受为有效。

这(使用 YYYYMMDD 格式)有效:

Select * FROM PlatypusDetail WHERE MemberName = 'Duckbill Bill' AND PoisonToeDate > '20150601' AND PoisonToeDate < '20150630'