Вы должны добавить new[]
или new string[]
перед списком фигурных скобок. И используйте запятые, а не знаки плюс. Как и в
string[] mystrings = new[] { "here", "there", "mine" };
FYI, то new[]
ярлыка синтаксический обеспечивается C#, которая подразумевает, что вы конкретно имели в виду new string[]
. Если вы создаете массив смешанных типов (например, массив из object
), вам придется явно использовать new object[]
, потому что в противном случае компилятор C# не будет знать, какой тип вы подразумеваете. То есть:
// Doesn't work, even though assigning to variable of type object[]
object[] myArgs = new[] { '\u1234', 9, "word", new { Name = "Bob" } };
// Works
object[] myArgs = new object[] { '\u1234', 9, "word", new { Name = "Bob" } };
// Or, as Jeff pointed out, this also works -- it's still commas, though!
object[] myArgs = { '\u1234', 9, "word", new { Name = "Bob" } };
// ...althouth this does not, since there is not indication of type at all
var myArgs = { '\u1234', 9, "word", new { Name = "Bob" } };
FYI: Ваш код на самом деле компиляции, но это приводит к ** один ** строки в массиве: 'heretheremine'. –