Тип или имя пространства имен "Система" не найдено

У меня есть следующие ошибки (и более) во всех моих представлениях (*.cshtml) при открытии моего проекта в Visual Studio 2015 Professional.

Ошибка CS0246 Тип или имя пространства имен "Система" не удалось найти (вы не указали директиву использования или ссылку на сборку?) Код серьезности Описание Линия файла проекта

Ошибка CS0518 Предопределенный тип "System.Object" не определен или не импортирован Код серьезности Описание Линия файла проекта

Ошибка CS0518 Предопределенный тип 'System.String' не определен или не импортирован

Я получил следующие ссылки:

<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" />

Я нашел несколько решений, в которых говорилось, что mscorlib не ссылался. Но когда я попытался добавить его, он сказал, что он уже существует (хотя я не вижу его в файле csproj).

Ссылка на System.dll:

введите описание изображения здесь

введите описание изображения здесь

РЕШЕНИЕ:

У меня возникла проблема. У меня был путь сборки к "c:...\bin" вместо "\ bin". Я считаю, что это произошло, потому что у меня нет никакого web.config в корне проекта, поэтому VS не идентифицировал мой проект как веб-проект.

Ответы

Ответ 1

Я попытался воссоздать вашу проблему и придумал аналогичную ошибку, когда решение было создано в visual studio 2013, а затем попыталось создать его в версиях до 2015 года. Я смог получить успешную сборку после того, как я переустановил пакет NuGet Менеджер (и закрыт- > повторно открыт VS 2015).

Ссылки/Кредит. Существует несколько вопросов SO, связанных с проблемами сборки, с использованием более ранней версии NPM для VS 2015 (т.е. я просто передаю то, что я пробовал и разработал). Повторяющееся разрешение обычно обновляет/переустанавливает NPM или изменяет политику выполнения в оболочке питания. Я предпочитаю использовать метод обновления + перезагрузки, чтобы избежать использования черных ящиков в окнах. один источник: fooobar.com/questions/38256/... Также может возникнуть проблема с решениями MSBuild Integrated, и в этом случае переход от ресурсов nuget в решении может сделать трюк. от: fooobar.com/questions/22991/...

Ответ 2

У меня была такая же проблема раньше, когда я попытался отредактировать проект с открытым исходным кодом из Интернета.

Решил его просто очистить решение и перестроить его.

Надеюсь, что это поможет.

Ответ 3

Мой раствор работал у меня.

Я также советую закрыть и перезапустить Visual Studio, сделав это.

Ответ 4

Выполните следующие действия:

  • щелкните правой кнопкой мыши "Решение" > "Восстановить пакеты NuGet"
  • щелкните правой кнопкой мыши Solution > Clean Solution
  • щелкните правой кнопкой мыши Solution > Build Solution
  • Закройте Visual Studio и заново откройте.

Thats All.

Ответ 5

Если очистка решения не сработала и для любого, кто видит этот вопрос, и попытался переместить проект или переименовать.

Откройте консоль диспетчера пакетов и введите "восстановление dotnet".