CS0842 de erro do compilador
Mensagem de erro
Não é possível usar as propriedades implementadas automaticamente dentro de um tipo marcado com StructLayout (LayoutKind.Explicit).
Propriedades implementadas automaticamente têm seus campos fazendo fornecidos pelo compilador e o campo não está acessível para o código-fonte.Portanto, não são compatível com LayoutKind.Explicit.
Para corrigir este erro
- Verifique a propriedade uma propriedade comum em que você fornecer os corpos de acessador.
Exemplo
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;
}
}
}