Leggere in inglese

Condividi tramite


Errore del compilatore CS0842

Impossibile utilizzare proprietà implementate automaticamente in un tipo contrassegnato con StructLayout(LayoutKind.Explicit).

Le proprietà implementate automaticamente includono i campi sottostanti forniti dal compilatore e il campo non è accessibile al codice sorgente. Quindi, non sono compatibili con LayoutKind.Explicit.

Per correggere l'errore

  1. Impostare la proprietà come proprietà regolare in cui si forniscono i corpi delle funzioni di accesso.

Esempio

L'esempio seguente genera l'errore CS0842:

C#
// 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;  
        }  
    }  
}