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 pode ser acessado pelo código-fonte. Portanto, elas não são compatíveis com LayoutKind.Explicit.
- Transforme a propriedade em uma propriedade regular em que você fornece os corpos do acessador.
O seguinte exemplo gera o erro 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: