Errore del compilatore CS0636

Aggiornamento: novembre 2007

Messaggio di errore

L'attributo FieldOffset può essere utilizzato solo in membri di tipo contrassegnato con StructLayout(LayoutKind.Explicit).
The FieldOffset attribute can only be placed on members of types marked with the StructLayout(LayoutKind.Explicit)

L'attributo StructLayout(LayoutKind.Explicit) deve essere utilizzato nella dichiarazione di struttura se contiene membri contrassegnati con l'attributo FieldOffset. Per ulteriori informazioni, vedere FieldOffset.

Il seguente codice di esempio genera l'errore CS0636:

// CS0636.cs
using System;
using System.Runtime.InteropServices;

// To resolve the error, uncomment the following line:
// [StructLayout(LayoutKind.Explicit)]
struct Worksheet
{
   [FieldOffset(4)]public int i;   // CS0636 
}

public class MainClass
{
   public static void Main ()
   {
   }
}