c# – 字符串变量名称日期在调试器中很奇怪

前端之家收集整理的这篇文章主要介绍了c# – 字符串变量名称日期在调试器中很奇怪前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有人能告诉我为什么调试器将名为Date的字符串变量处理为DateTime对象?

码:

public class HourRegistration
{
    public string Date { get; set; }
}

看屏幕截图:

使用.NET Framework 4.5,VS-2015

谢谢!

更新:

通过将代码减少到最小可能,我发现了明显的问题.

最小化代码

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            DoSomething();
        }

        public static void DoSomething()
        {

            DateTime Date = DateTime.ParseExact("asdasd","dd/MM/yyyy",CultureInfo.InvariantCulture);
        }

        public class HourRegistration
        {
            public string Date { get; set; }
        }
    }
}

截图:

它是另一个与字符串完全相同的上下文中的另一个变量,调试器显示了另一个对象的详细信息(基于上下文)

解决方法

//There in your above question you are creating a new object with datatype as datetime and variable as Date but this Date is not the one you described in your model.For that you have to do something like below:


HourRegistration model = new HourRegistration ();
     model.Date = DateTime.ParseExact("asdasd",CultureInfo.InvariantCulture).ToString();

//But this code gives an error since you cannot pass a string value to date.It makes no sense.

猜你在找的C#相关文章