-2

我现在有这段代码:我只是尝试将它转换为 PHP 到 C#

if (round($mounth)<="6") {
    $startYear=$year-1;
    $startMounth="-07";
    $startDay="-01";
    $endYear=$year;
    $endMounth="-06";
    $endDay="-30";
}

在这里,我尝试转换为 C# 代码。但我刚开始编码时遇到了错误。我认为 .NET 的原因在某种程度上是不正确的。

if (Math.Round(month <= 6)
{
    string StartYear = Year-1;
}
4

6 回答 6

4

你需要舍入一个月(month <= 6)

if(Math.Round(month) <= 6)
          {

          }

编辑:既然你提到那个月是今天。月份,它是 int 类型的,你不需要四舍五入。它应该是

if(month <= 6)
          {

          }
于 2012-06-14T06:21:36.057 回答
2

你的意思是:

if(Math.Round(month) <= 6)
      {

      }
于 2012-06-14T06:22:03.297 回答
0

这是关于 math.round 的精彩讨论......但请使用 DateTime 来定义一个时间点和 TimeSpan 来定义一个持续时间。您可以比较它们、添加它们等。无需将 PHP hack 移植到 C#

于 2012-06-14T06:34:41.957 回答
0

你少了一个括号。改用这个:-

if(Math.Round(month) <= 6)
          {

          }
于 2012-06-14T06:23:52.000 回答
0

你应该围绕月份而不是条件。

if (Math.Round(month) <= 6)
{
}
于 2012-06-14T06:25:30.080 回答
0

因为month是一个int(你告诉我int month = today.Month;)你应该简单地使用

if (month <= 6) 
{ 
    // ... 
}

您的代码失败,因为您有错误的括号,并且您不是舍入一个浮点数或双精度数,而是一个布尔值。无论如何我重复一遍:月份是一个整数,所以你不需要四舍五入。

于 2012-06-14T06:22:41.533 回答