public class MyClass
{
public const Decimal CONSTANT = 0.50; // ERROR CS0664
}
Run Code Online (Sandbox Code Playgroud)
产生此错误:
错误CS0664:double类型的文字不能隐式转换为'decimal'类型; 使用'M'后缀来创建此类型的文字
作为记录.但这有效:
public class MyClass
{
public const Decimal CONSTANT = 50; // OK
}
Run Code Online (Sandbox Code Playgroud)
我想知道为什么他们禁止第一个.这对我来说似乎很奇怪.
我如何将string[][]数组传递给ValuesAttribute?
我有:
public string[][] Array1 = new[] {new[] {"test1", "test2"}};
//...
[Test, Sequential]
public void SomeTest(
[Values("val1", "val2", "val3")] string param1,
[Values(Array1, Array2, Array3)] string[][] param2) { //... }
Run Code Online (Sandbox Code Playgroud)
而且我有Cannot access non-static field "Array1" in static context.比我标志着Array1与static关键字和比我有An attribute argument must be a constant expression...比我将其标记readonly关键字,仍然有我An attribute argument must be a constant expression...
有没有办法传递多个数组?(除丑陋string[][][]和传球param2的相关指标array[][]中array[][][])