当前上下文中不存在 DateTime

6
我有以下的类:
using System;
using System.Globalization;

namespace GenericSomething
{
    public class Specific : Generic
    {
        public override bool DoSomething(string date)
        {
            DateTime newDate = DateTime.ParseExact(date, "yyyyMMdd", CultureInfo.InvariantCulture);
            if (newDate.Date == DateTime.Now.Date)
                return true;
            else
                return false;
        } 
    }
}

当我在调试时使用"Add watch"查看DateTime.Now.Date时,我会得到以下报错:

"DateTime does not exist in the current context."

即使日期相同,该条件也不会满足。

为什么会这样,难道我没有包含System命名空间吗?


你在哪里看到这个问题?是在监视窗口还是评估窗口?它只出现在调试中吗?你能包含一张截图吗? - Jon Skeet
2
调试还是构建? - Arsen Mkrtchyan
1
newDate 是一个 DateTime,而 DateTime.Now.Day 则是一个 int - Tim Schmelter
@HélderGonçalves newDate.Date == DateTime.Now.Day 也不行。仍然是将 DateTimeint 进行比较。 - Soner Gönül
@SonerGönül 又错了 xD - Hélder Gonçalves
显示剩余5条评论
2个回答

6

这里是我看到的一些事情;

  • 您可能需要将mscorlib.dll添加为项目的引用。
  • 您不能使用 == 操作符比较DateTime (newDate) 和int (DateTime.Now.Day)。您可能需要改为使用newDate == DateTime.Now
  • return语句之后,您需要添加分号(;)。
  • 您需要添加System.Globalization命名空间以使用CultureInfo类。

我更新了我的问题...有一些“打错字”。我很匆忙 xD - Hélder Gonçalves

1
此外,请检查您是否输入了“DateTime”,而不是“Datetime”或其他内容。 它必须是“DateTime”(驼峰式)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接