J'ai les erreurs suivantes (et plus) dans toutes mes vues (* .cshtml) lors de l'ouverture de mon projet dans Visual Studio 2015 Professional.
Erreur CS0246 Impossible de trouver le type ou le nom de l'espace de noms 'System' (il vous manque une directive using ou une référence Assembly?) Code de gravité Description Ligne de fichier de projet
Erreur CS0518 Le type prédéfini 'System.Object' n'est pas défini ou importé Code de gravité Description Ligne de fichier de projet
Erreur CS0518 Le type prédéfini 'System.String' n'est pas défini ou importé
J'ai eu ces références:
<ItemGroup>
<Reference Include="Microsoft.CSharp" />
<Reference Include="Sitecore.Kernel, Version=7.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>N:\XXX\Sitecore.Kernel.dll</HintPath>
</Reference>
<Reference Include="Sitecore.Mvc">
<HintPath>N:\XXX\Sitecore.Mvc.dll</HintPath>
</Reference>
<Reference Include="System.Web.DynamicData" />
<Reference Include="System.Web.Entity" />
<Reference Include="System.Web.ApplicationServices" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Core" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Web.Helpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>N:\XXX\System.Web.Helpers.dll</HintPath>
</Reference>
<Reference Include="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>N:\XXX\System.Web.Mvc.dll</HintPath>
</Reference>
<Reference Include="System.Web.Providers">
<HintPath>N:\XXX\System.Web.Providers.dll</HintPath>
</Reference>
<Reference Include="System.Web.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>N:\XXX\System.Web.Razor.dll</HintPath>
</Reference>
<Reference Include="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>N:\XXX\System.Web.WebPages.dll</HintPath>
</Reference>
<Reference Include="System.Web.WebPages.Deployment, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>N:\XXX\System.Web.WebPages.Deployment.dll</HintPath>
</Reference>
<Reference Include="System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>N:\XXX\System.Web.WebPages.Razor.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Drawing" />
<Reference Include="System.Web" />
<Reference Include="System.Xml" />
<Reference Include="System.Configuration" />
<Reference Include="System.Web.Services" />
<Reference Include="System.EnterpriseServices" />
J'ai trouvé des solutions en disant qu'un mscorlib n'était pas référencé .. mais quand j'ai essayé de l'ajouter, il a dit qu'il était déjà là (même si je ne le vois pas dans le fichier csproj).
Référence System.dll:
SOLUTION:
Géré le problème .. Le chemin de génération était défini sur "c: ...\bin" au lieu de "\ bin". Je pense que cela est dû au fait que je n'ai pas de fichier web.config à la racine du projet. VS n'a donc pas identifié mon projet en tant que projet Web.
J'ai tenté de recréer votre problème et je suis parvenu à une erreur similaire lorsque la solution a été créée dans Visual Studio 2013, puis à le construire en vs 2015.
J'ai réussi à obtenir une construction réussie une fois que j'ai réinstallé NuGet Package Manager (et que j'ai fermé, puis rouvert VS 2015).
Références/Crédit
Il y a plusieurs SO questions relatives aux problèmes de construction via la version précédente de NPM for VS 2015 (c'est-à-dire que je ne fais que transmettre ce que j'ai essayé et travaillé). La résolution récurrente consiste généralement à mettre à jour/réinstaller NPM ou à modifier la stratégie d'exécution dans Power Shell. J'ai tendance à aimer l'approche mise à jour + redémarrage pour éviter de bricoler avec les boîtes noires dans les fenêtres. une source: https://stackoverflow.com/a/32251092/1158842 Il peut également y avoir un problème avec les solutions MSBuild Integrated, auquel cas la migration hors des ressources NuGet de la solution pourrait faire l'affaire.
J'ai eu le même problème plus tôt quand j'ai essayé de modifier un projet open source à partir d'Internet.
Résolu en nettoyant simplement la solution et en la reconstruisant.
J'espère que cela t'aides.
La solution de nettoyage a fonctionné pour moi.
Je vous conseillerais également de fermer et de relancer Visual Studio une fois que vous le feriez.
Suivez ces étapes :
C'est tout.
Pour les personnes qui, comme moi, sont arrivées ici parce qu'elles essaient d'héberger aspnet.core mvc dans une application console:Sdk propriété de la balise Project sur la toute première ligne.
<Project Sdk="Microsoft.NET.Sdk.Razor">
cliquez avec le bouton droit de la souris sur votre nom de projet, puis ouvrez les fenêtres de propriétés . rétrogradez votre version du framework cible, générez la solution puis mettez à niveau votre version du framework cible vers la dernière, la solution de génération.