2012-07-28 44 views
7

He buscado esta pregunta, pero no veo demasiadas respuestas, y obviamente ninguna ha sido útil o no preguntaría. Soy un neófito de .NET.No se encontró el tipo o el nombre del espacio de nombres 'Newtonsoft'

Mi entorno local es Win7, Microsoft Virtual Web Developer 2010 Express. Añadí NewtonSoft.Json como una biblioteca de componentes personalizada.

  • Creé un servicio web simple "HelloWorld", utilizando los componentes personalizados de Newtonsoft.Json.

  • Cuando hago una compilación en mi máquina local (Visual Web Developer 2010 Express) funciona muy bien. De hecho, obtengo una salida JSONP válida, no XML.

  • Cuando transfiero mis archivos FTP al servidor web remoto, mi servicio web no funciona. Me sale esto: todo lo

Compilation Error Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: CS0246: The type or namespace name 'Newtonsoft' could not be found (are you missing a using directive or an assembly reference?)

Source Error:

Line 7: using System.Web.Services.Protocols;

Line 8: using System.Web.Script.Services;

Line 9: using Newtonsoft.Json;

Line 10:

Line 11: namespace System.Web.Script.Services.CS

he tratado de copiar mi carpeta entera proyecto a la carpeta remota, a continuación, eliminar todo y simplemente copiar mi archivo web.config y asmx, y todavía consigo el error. Copié la carpeta bin, con el Newtonsoft.Json.dll al servidor remoto, y luego intenté copiarlo en la carpeta raíz, pero fue en vano.

¿Hay alguna operación que se deba realizar en el servidor remoto para permitirle utilizar Newtonsoft.Json.dll?

+0

Después de una pelea lo conseguí para trabajar. Lo que finalmente sucedió fue que mi amigo, un experto en .NET Skyped me, me habló sobre la forma correcta de implementar mi proyecto en el servidor de destino. No entendí que hay una carpeta separada donde va tu compilación. Hice un "Paquete de implementación de compilación" como un archivo zip. Luego lo descomprimí en mi disco duro, y lo dejé caer en una carpeta limpia en el servidor web (de hecho, lo cargué en el directorio raíz), y listo, funcionó. – TARKUS

Respuesta

0

Gracias por el puntero y el enlace. Después de una lucha, lo hice funcionar. Lo que finalmente sucedió fue que mi amigo, un experto en .NET Skyped me, me habló sobre la forma correcta de implementar mi proyecto en el servidor de destino. No entendí que hay una carpeta separada donde va tu compilación. Hice un "Paquete de implementación de compilación" como un archivo zip. Luego lo descomprimí en mi disco duro, y lo dejé caer en una carpeta limpia en el servidor web (de hecho, lo cargué en el directorio raíz), y listo, funcionó.

3

Al copiar archivos de una solución, algunas referencias pueden "perderse". Intente eliminar la referencia y agréguela de nuevo, después de copiar los archivos y abrir en la otra máquina.

También, echar un vistazo a esta pregunta: reference dll not copying to bin with deployment project causing error

+1

Gracias por el puntero y el enlace. Después de una lucha, lo hice funcionar. Lo que finalmente sucedió fue que mi amigo, un experto en .NET Skyped me, me habló sobre la forma correcta de implementar mi proyecto en el servidor de destino. No entendí que hay una carpeta separada donde va tu compilación. Hice un "Paquete de implementación de compilación" como un archivo zip.Luego lo descomprimí en mi disco duro, y lo dejé caer en una carpeta limpia en el servidor web (de hecho, lo cargué en el directorio raíz), y listo, funcionó. – TARKUS

+1

póngalo como respuesta, y marque la casilla entonces, por lo que será útil para el futuro de otras personas que puedan tener un problema similar;) –

0

Otra posible razón para este problema es si el proyecto está usando paquetes NuGet y aún no se han restaurado (descargados).

Es posible que tengan que restaurarse en Visual Studio o puede usar el ejecutable de la línea de comandos nuget.exe para restaurar los paquetes.

https://docs.nuget.org/consume/package-restore

Cuestiones relacionadas