Używam MVC 5 i .net 4.6 do tworzenia interfejsu API sieci Web, który może również połączyć się z moją aplikacją mobilną.Wstępnie zdefiniowany typ "System.Object" nie został zdefiniowany lub zaimportowany .net 4.6
Ilekroć buduję projekt, dostaję setki błędów informujących mnie, że muszę dodać referencje, które już tam są i że dosłownie każdy typ w moim projekcie "nie istnieje". Niektóre przykłady tych błędów: (nie w tym jeden w tytule)
Co próbowałem:
- dodał odniesienie do System.Runtime poprzez Nuget. (Zalecenie od this question.)
- Usunięto aspnetcore50 ze struktur w pliku project.json. (Kolejna rekomendacja, this question.)
- Restartowanie VS2015, moja maszyna.
- Przechodzenie przez menedżera pakietów nuGet i aktualizowanie każdego pakietu w moim projekcie do najnowszego.
- Faktycznie upewniając się, że widzę odniesienia w węźle referencji eksploratora rozwiązań.
UPDATE: -Mój project.json
plik wygląda następująco. (Po zmodyfikowaniu na podstawie Karls odpowiedź. Lista błędów jest teraz w dół do dziesięciu, jednak są one wciąż te same błędy, jak wcześniej.)
{
"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"
}
Możesz usunąć zarówno "aspnet50", jak i "aspnetcore50", zmieniono ich nazwę na dnx/dnxcore w wersji beta3 lub coś w tym stylu i są teraz bezużyteczne (chyba że w jakiś sposób przeszkadzają innym, jeśli tak, są zarówno bezużyteczne, jak i szkodliwe). –
Usunięcie tych dwóch zmniejszyło listę błędów do 450, poprawia się! – KidCode