Erro do compilador CS0842
As propriedades implementadas automaticamente não podem ser usadas dentro de um tipo marcado com StructLayout(LayoutKind.Explicit).
As propriedades implementadas automaticamente têm seus campos de suporte fornecidos pelo compilador e o campo não é acessível ao código-fonte. Por conseguinte, não são compatíveis com LayoutKind.Explicito .
- Faça da propriedade uma propriedade regular na qual você fornece os corpos acessadores.
O exemplo a seguir gera CS0842:
// cs0842.cs
using System;
using System.Runtime.InteropServices;
namespace TestNamespace
{
[StructLayout(LayoutKind.Explicit)]
struct Str
{
public int Num // CS0842
{
get;
set;
}
static int Main()
{
return 1;
}
}
}
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: