asp.net - 您可以在 ASP.NET Web 应用程序中覆盖 Date.Now 或 Date.Today 以进行调试吗?

标签 asp.net vb.net datetime date

我们有一个非常庞大的系统,其中使用“GenerateSalesReport(DateStart, Date.Now)”的各种定义从特定日期到今天的日期运行报告。

出于调试目的,我想模拟过去发生的报告,因此我需要在我的开发环境中将对象“Date.Now”更改为过去的特定日期。是否可以覆盖 date.Now ?

最佳答案

这是 DateTime.Now 的失败之一及相关功能。

你应该传递一个 DateTime任何依赖于它的函数。您使用的任何地方 DateTime.NowDateTime.Today (等)是您应该传递日期的地方。

这允许您测试不同的 DateTime值,将使您的代码更具可测试性并消除时间依赖性。

关于asp.net - 您可以在 ASP.NET Web 应用程序中覆盖 Date.Now 或 Date.Today 以进行调试吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6956051/

相关文章:

asp.net - 将 ASP.NET 项目移动到 .NET 4

c# - Visual Studio 2012 找不到模板

sql-server - 使用 VB.NET 连接到 SQL Server 数据库

c# - 使用反射执行审计

django - 日期验证 --> 结束日期必须大于开始日期

json - Phoenix、Json 和 Unix 时间戳

数据绑定(bind)之前的 ASP.NET Repeater 模板子控件可见性

c# - 在 asp.net mvc 中获取用户的 session ID

vb.net - 带有 Visual Studio 2010 的 Visual Basic 9(或 C# 3)

C++如何使用经纬度确定时区