我遇到的问题是Visual Studio在代码" Random.Next(1,10);"那说:
"非静态字段,方法或的对象引用是必需的 property' Random.Next(int,int)' "
所以,我用类似的短语看了其他问题的答案。在Stack Overflow上的这些示例中,大多数建议都说有人需要简单地使方法或类静态化。我在此代码中尝试了所有这些组合,但它没有修复Visual Studio中的错误。
感谢任何帮助,谢谢。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Data_Collector_Course_Assignment
{
public class Device
{
// Returns a randoom integer between 1 and 10 as a measurement of an
imaginary object
public int GetMeasurement()
{
int randomInt = Random.Next(1,10);
return randomInt;
}
}
}
答案 0 :(得分:3)
这意味着Next
是一个实例方法(不是static
)。您需要Random
的实例才能使用它:
public int GetMeasurement()
{
Random rand = new Random();
int randomInt = rand.Next(1,10);
return randomInt;
}
或者更短:
public int GetMeasurement()
{
int randomInt = new Random().Next(1,10);
return randomInt;
}