tutorial mvc example ejemplo data c# asp.net .net json asp.net-mvc

mvc - web api rest c#



El tipo predefinido ''System.Object'' no está definido o importado.net 4.6 (5)

Estoy usando MVC 5 y .net 4.6 para crear una API web que mi aplicación móvil también puede conectar.

Cuando compilo el proyecto, obtengo cientos de errores que me dicen que debo agregar referencias que ya están allí y que literalmente cada tipo en mi proyecto "no existe". Algunos ejemplos de estos errores: (sin incluir el del título)

Lo que he intentado:

  • Se agregó una referencia a System.Runtime a través de nuGet. (Una recomendación de esta pregunta .)
  • Se eliminó aspnetcore50 de los marcos en el archivo project.json. (Otra recomendación, esta pregunta .)
  • Reiniciando VS2015, mi máquina.
  • Pasando por el administrador de paquetes de nuGet y actualizando todos los paquetes de mi proyecto al más reciente.
  • Realmente me aseguro de que pueda ver las referencias en el nodo de referencias del explorador de soluciones.

ACTUALIZACIÓN: -Mi project.json archivo se ve así. (Después de la modificación basada en la respuesta de Karls. La lista de errores ahora se ha reducido a diez, sin embargo, siguen siendo los mismos errores que antes).

{ "commands": { "web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5000" }, "dependencies": { "Microsoft.AspNet.Server.IIS": "1.0.0-beta5", "Microsoft.AspNet.Server.WebListener": "1.0.0-beta5", "Microsoft.AspNet.Diagnostics": "1.0.0-beta5", "Microsoft.AspNet.Mvc": "6.0.0-beta5", "System.Runtime": "4.0.20-beta-23019" }, "exclude": [ "wwwroot", "node_modules", "bower_components" ], "frameworks": { "dnx451": { "frameworkAssemblies": { "System.Data": "4.0.0.0", "System.Data.DataSetExtensions": "4.0.0.0", "System.Data.Linq": "4.0.0.0" } } }, "publishExclude": [ "node_modules", "bower_components", "**.xproj", "**.user", "**.vspscc" ], "version": "1.0.0-*", "webroot": "wwwroot" }


En mi caso, tenía un proyecto que todavía estaba configurado para compilar contra una versión beta de dnx. Cambiarlo para construir contra la versión que estaba usando en los otros proyectos lo solucionó.


Estoy adivinando un poco aquí, pero parece sospechoso que estés usando las cosas de System.Data.* Para dnx451 pero no tiene nada que compensar con dnxcore50 . ¿Está apuntando también a la edición principal o son solo restos de la creación del proyecto? Si quieres apuntar a la edición principal y seguir utilizando el antiguo System.Data.* , Necesitarás envolver cualquier cosa de esos ensamblajes como este.

#if DNX451 // Do some DNX451 specific stuff here #endif

Y al revés también.

#if DNXCORE50 // Do some DNXCORE50 specific stuff here #endif

Pero si no está pensando en admitir esto todavía, simplemente eliminaría dnxcore50 de la lista del marco y sus errores probablemente desaparecerán.


Para mí, el problema ocurrió cuando agregué un nuevo proyecto a mi solución. Reconstruí la solución y los errores desaparecieron.


Retire bin y obj y reconstruir.


dotnet restore comando dotnet restore en la consola del administrador de paquetes y el problema se soluciona