2010-01-19 13 views
35

Estoy intentando construir mi proyecto C# y obtengo el mensaje de error "Un espacio de nombre no contiene directamente miembros como campos o métodos". Está marcando el primer carácter (menos que el símbolo) del archivo app.config.Error "Un espacio de nombres no contiene directamente miembros como campos o métodos"

He comprobado todos mis archivos en busca de lugares donde haya variables o funciones directamente dentro de un espacio de nombres: no he encontrado nada. La aplicación.config se ve bien.

Google me está fallando y me estoy tirando de los pelos. ¿Qué podría estar causando este error?

+2

¿Está confundiendo su app.config con un archivo fuente real? –

Respuesta

55

Figuras! Tan pronto como finalmente me descompuse y hago la pregunta que encuentro la respuesta ...

La sección de propiedades del archivo app.config (de alguna manera) enumeró la Acción de compilación de "Compilar" cuando debería establecerse en "Ninguna" .

¿Cómo se cambió el mundo? Sé que no lo cambié. Grrr ...

Bueno, al menos se está construyendo ahora. Con suerte, alguien más se beneficiará de mi caída de cabello.

+3

Hah, lo llamé. –

+0

Sí, lo hizo. Ahora, ¿dónde estabas ayer? – BoltBait

+1

Arrancándome el cabello por algún otro problema tonto. La mayoría de estas lecciones son aprendidas de la experiencia de primera mano:/ –

0

Este error se produce cuando intenta agregar un campo o miembro directamente en un espacio de nombres. Dado que apunta a app.config, es probable que VS esté en mal estado. Intente cerrar y volver a abrir Visual Studio y ver si el error desaparece.

En caso de no intentarlo, reconstruya y publique los resultados de la ventana de generación de salida a su pregunta.

5

He logrado reproducir el error.

Compruebe las propiedades del archivo app.config. El Build Action debe ser None, no Compile.

0

He resuelto de esta manera: haga clic derecho en el archivo .axml -> Construir Acción -> AndroidResource (estudio Xamarin)

0

que tenía el mismo error. Comprobado si el app.config se estableció en none, no hay problemas allí. Después de 30 minutos de revisar y volver a revisar, reinicié VS y eso fue lo que hizo. Por lo general, resuelve el 90% de los errores no lógicos. Suspiros.

0

Estaba teniendo un problema similar con el código en mi sitio web. El problema resultó ser un paréntesis de cierre adicional que causó que mi clase finalizara justo después de page_load(). Siempre revise si hay errores de sintaxis tontos como este.

0

Estaba enfrentando este mismo problema con el archivo XML. Esto se debió a que el compilador .net intentó compilar este xml que se ha usado solo para el propósito DATA, por lo tanto, no es necesario compilarlo.

Solución: Vaya a la propiedad de este archivo y cambie Build Action al contenido de la compilación.

Gracias

0

en mi caso fue por error poner una nueva función fuera de la clase controlador. Este era mi código en ASP.NET MVC que daba este error.

public class HomeController : Controller 
{ 
    public class HomeController : Controller 
    { 
     // GET: Home 
     public ActionResult Index() 
     { 
      return View(); 
     }  
    } 

    [HttpPost] 
    public string Insert(string name, string age, string standard, string percent, string address, string status) 
    { 
     //some code 
     return "value"; 
    } 
} 

Debe ser como:

public class HomeController : Controller 
{ 
    public class HomeController : Controller 
    { 
     // GET: Home 
     public ActionResult Index() 
     { 
      return View(); 
     } 

     [HttpPost] 
     public string Insert(string name, string age, string standard, string percent, string address, string status) 
     { 
      //some code 
      return "value"; 
     }  
    }   
} 
Cuestiones relacionadas