asp.net中两个日期之间的天数

本文关键字:之间 日期 两个 net asp | 更新日期: 2023-09-27 18:16:15

我找到雇员受雇日期和当天日期之间的天数,并乘以每日金额。唯一的抱怨是,当我找出两个日期之间的天数时,它会计算出31天以上的月份,而这些月份自然是31天。我需要交易超过30天,而我得到两个日期之间的日期。

我该怎么做呢?

asp.net中两个日期之间的天数

你想要这样的东西吗?

DateTime date1 = new DateTime(2016, 10, 3);
DateTime date2 = new DateTime(2016, 11, 3);
var numberOfDays = date2.Subtract(date1).TotalDays;

我希望这是你想要的:

 DateTime firstDay = DateTime.ParseExact("2016-10-03", "yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture);
 DateTime lastDate = DateTime.ParseExact("2016-11-03", "yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture);
 double daysBetween = (lastDate - firstDay).TotalDays;

如果您只是对整个月感兴趣,您可以使用以下代码

var normalisedDays = ((lastDate.Year - firstDate.Year) * 12 + lastDate.Month - firstDate.Month) * 30;

控制:

DateTime Date_1 = Date_Start;
DateTime Date_2 = Date_End;
TimeSpan difference = Date_2  - Date_1 ;
var days = difference.TotalDays;

<script>
function calculateDifference()
{
    var Date_Start= document.getElementById("Date_Start").value;
    var Date_End= document.getElementById("Date_End").value;
    var Date_StartSplit = Date_Start.split("/");
    var Date_EndSplit = Date_End.split("/");
    var StartDate = new Date(Date_StartSplit[2], Date_StartSplit[0] - 1, Date_StartSplit[1]);
    var EndDate = new Date(Date_EndSplit[2], Date_EndSplit[0] - 1, Date_EndSplit[1]);
    var res = Math.abs(StartDate - EndDate) / 1000;
    var days = Math.floor(res / 86400);
    document.getElementById("Nombre_days").value = days;
}
</script>