0

我知道这样的问题是重复的,但我没有得到任何结果。我必须将螺旋日期更改为公历日期,这是我的方法

public static DateTime ShamsiToMiladi(string shmasi)
{
    DateTime? Dt = null;
    if (shmasi != "")
    {
        System.Globalization.PersianCalendar persian = new System.Globalization.PersianCalendar();
        char[] spChar = { '/' };
        string[] splited_shamsi = shmasi.Split(spChar, 3);
        Dt = persian.ToDateTime(int.Parse(splited_shamsi[0]), int.Parse(splited_shamsi[1]), int.Parse(splited_shamsi[2]), 12, 12, 12, 12);

    }
    return Dt;
}

sahmsi 是来自文本框的参数。我返回 Dt 是什么?感谢帮助

4

1 回答 1

0

由于 DateTime 实际上是一个基于长整数的结构,因此不能为其分配空值。

但是,如果您需要该选项,请将其声明为可为空的 DateTime :

DateTime? ThisDate = null;

如果您确实返回了一个可为空的 DateTime,那么您的调用者将必须在将其用作表达式中的常规 DateTime 之前检查空值。

作为一般规则,新声明的常规 DateTime 具有 DateTime.MinValue ('01/01/0000') 的值,而您可以对其进行测试。

于 2013-07-10T05:12:47.163 回答