2016-01-13 61 views
0

类型名出线,我有以下代码:不能用,因为范围

using System; 
using System.Collections.Generic; 

public class Program 
{ 
    public int num_segundos = 10; 

    private void getHorarios(DateTime date) 
    { 
     List<DateTime> horarios = new List<DateTime>(); 
     for(var i = -this.num_segundos; i<= this.num_segundos; i++) 
     { 
      DateTime temp = date.AddSeconds(i); 
      Console.WriteLine(temp.UtcNow); 
      horarios.Add(temp); 
     } 
     foreach(DateTime a in horarios) 
     { 
      Console.WriteLine(a.UtcNow); 
     } 
    } 

    public void Main() 
    { 
     getHorarios(DateTime.UtcNow); 
    } 
} 

我收到错误

“不能使用实例引用访问;同类型限定它名称改为“

在那个a.UtcNow实例。问题在于,我不知道在本地范围内执行该操作的方法。

有没有人知道如何解决这个问题?

+1

['UtcNow'](https://msdn.microsoft.com/en-us/library/system.datetime.utcnow)是静态的。 –

+0

'UtcNow'是'DateTime'的一个静态属性。改用'DateTime.UtcNow'。编辑:其实,看起来你应该使用实例方法'ToUniversalTime()'来代替。 –

回答

1

UtcNow是一个静态成员,您不能使用任何实例来调用它。要使用它,你应该使用DateTime.UtcNow。

顺便说一句,我想你要做的是将临时格式转换为UTC时区。所以使用toUniversalTime()是一个更好的解决方案。