Chyba kompilátoru CS0815
Výraz nelze přiřadit implicitně zadanému místnímu prostředí.
Výraz, který se používá jako inicializátor pro implicitně typovanou proměnnou, musí mít typ. Vzhledem k tomu, že anonymní výrazy funkce, výrazy skupiny metod a literál null nemají typ, nejsou vhodné inicializátory. Implicitně zadaná proměnná nemůže být inicializována s hodnotou null v jeho deklaraci, i když může být později přiřazena hodnota null.
V jazyce C# verze 10 Výrazy Lambda a skupiny metod s přirozenými typy lze použít jako inicializátory v var
deklaracích.
- Zadejte explicitní typ proměnné.
- Nebo zadejte přirozené typy s C# verze 10 a vyšší.
Následující kód vygeneruje CS0815:
// cs0815.cs
class Test
{
public static int Main()
{
var d = s => -1; // CS0815
var e = (string s) => 0; // CS0815 for C# versions before 10
var p = null; // CS0815
var del = delegate(string a) { return -1; }; // CS0815
return -1;
}
}
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: