Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 关于以字符串格式使用日期时间_C#_Visual Studio - Fatal编程技术网

C# 关于以字符串格式使用日期时间

C# 关于以字符串格式使用日期时间,c#,visual-studio,C#,Visual Studio,我试图找出如何从今天的日期中减去日期时间,但无论何时输入注册日期,它都会返回大量的天数。这是我到目前为止的代码 public string getTimeAsStudent(DateTime EnrolledDate) { return DateTime.Today.Subtract(EnrolledDate).ToString(); } public string getTimeAsStudent() { return

我试图找出如何从今天的日期中减去日期时间,但无论何时输入注册日期,它都会返回大量的天数。这是我到目前为止的代码

    public string getTimeAsStudent(DateTime EnrolledDate)
    {
        return DateTime.Today.Subtract(EnrolledDate).ToString();

    }

    public string getTimeAsStudent()
    {
        return DateTime.Today.Subtract(oEnrolledDate).TotalDays.ToString();

    }
这是我为测试应用程序准备的

 namespace StudentTestApp
   {
    public partial class Form1 : Form
    {
    public Form1()
    {
        InitializeComponent();
    }

    Student.StudentGrades myStudent = new Student.StudentGrades();

    private void getDate_Click(object sender, EventArgs e)
    {
        lblDate.Text = myStudent.getTimeAsStudent().ToString();
    }
}
辅助变量

   public class StudentGrades
   {
    private string oStudentFirstName;
    private string oStudentMiddleName;
    private string oStudentLastName;
    private string oStudentID;
    private string oAddress;
    private string oEmail;
    private DateTime oEnrolledDate;
    private string oMajor;
    private string oPhone;
    private string oZip;
    private List<string> oCourseCompleted;
    private List<string> oCourseQtrYr;
    private List<double> oCourseGrade;
公共班级学生成绩
{
私有字符串oStudentFirstName;
私有字符串oStudentMiddleName;
私有字符串oStudentLastName;
私有字符串oStudentID;
私服;
私人邮件;
私有日期时间oenrolled;
私人字符串oMajor;
私人弦乐;
私有字符串分区计划大纲图;
私人名单已完成;
私人名单;
私人名册职系;

然而,无论我输入什么日期,它都会输出736000天,有人能帮我吗???

以下是几种减法

如何将两个日期时间减去几年

public static string getTimeAsYear(DateTime oEnrolledDate)
{
        return (Math.Abs(oEnrolledDate.Year - DateTime.Today.Year)).ToString();
}
如何将两个日期时间减去一个月

public static string getTimeAsMonth(DateTime oEnrolledDate)
{
        return ((Math.Abs(oEnrolledDate.Year - DateTime.Today.Year)) * 12).ToString();
}
和结果

DateTime D=新日期时间(1995,01,17);
Console.WriteLine(getTimeAsStudent(D));
Console.WriteLine(getTimeAsYear(D));
Console.WriteLine(getTimeAsMonth(D));


什么是
oEnrolledDate
?您正在按照您的代码获取
TotalHours
,而不是
TotalDays
您可以提供定义“oEnrolledDate”的位置吗?oEnrolledDate是我的构造函数的一个帮助变量,我也在其中注册了date,我知道我也需要向它传递一个textbox1.text,但它不喜欢我根本无法将日期时间解析为字符串,这必须在类中完成,但我认为我做到了,但它仍然不起作用。所以我真的很困惑你期望什么?DateTime.Subtract(DateTime)返回时间跨度