Каждый пример, который я до сих пор читал (вопрос о Google / стеке), который объясняет использование «Enumerable.Empty», говорит, что я должен иметь возможность использовать его с массивом. Компилятор VS, однако, не позволит мне использовать его, если я не приведу его явно к массиву, несмотря на определение типа.
Почему это так? (Я не видел упоминаний о том, что актеры требуются в ~ 20 связанных стековых вопросах или общих результатах поиска в Google, на которые я смотрел)
//The internet says this should work, but i get a "Cannot implicitly convert type" error
public byte[] dataA = Enumerable.Empty<byte>();
public string[] dataB = Enumerable.Empty<string>();
//Throws no error, but the cast's requirement is never mentioned
public byte[] dataA = (byte[])Enumerable.Empty<byte>();
public string[] dataB = (string[])Enumerable.Empty<string>();