"Un namespace ne peut pas contenir directement des membres tels que des champs ou des méthodes" dans Net.Réflecteur [fermé]

j'essaie d'utiliser ce code pour NET.réflecteur. À l'aide de Reflexil, je suis en train de remplacer le code avec cette,

if(Input.GetKeyDown(KeyCode.Keypad5)) { 
int i = 0; 
Character localPlayer = PlayerClient.GetLocalPlayer().controllable.GetComponent<Character>(); 
foreach (UnityEngine.Object obj2 in UnityEngine.Object.FindObjectsOfType(typeof(LootableObject))) 
{ 
    if (obj2 != null) 
    { 
        i++; 
        LootableObject loot = (LootableObject) obj2; 
        Debug.Log("Loot "+i+": "+loot.transform.position.ToString()); 
        CCMotor ccmotor = localPlayer.ccmotor; 
        if(ccmotor != null && tpPos1 != Vector3.zero) { 
            ccmotor.Teleport(loot.transform.position); 
            Notice.Popup("", "Teleported to "+loot.name, 1.5f); 
        } 
        break; 
    } 
} 

}

Mais il me donne une erreur lorsque j'essaie de compiler:

Line: 1 Column: 1 Error Number: CS0116  Error Message: "A namespace does not directly contain members such as fields or methods"

c'est un code D'Unité je pense. Je ne suis pas du tout expérimenté. Quelqu'un pourrait corriger cela pour moi? Ou me dire quoi faire? Grâce.

40
demandé sur Steven 2014-01-17 04:40:06

1 réponses

le morceau que vous montrez ne semble pas être directement responsable de l'erreur.

Voici comment vous pouvez causer l'erreur:

namespace MyNameSpace
{
   int i; <-- THIS NEEDS TO BE INSIDE THE CLASS

   class MyClass
   {
      ...
   }
}

si vous ne voyez pas immédiatement ce qui est" en dehors " de la classe, cela peut être dû à des brackets mal placés ou à des brackets de fermeture supplémentaires }.

69
répondu G. Stoynev 2014-01-17 00:48:21