Я читаю книгу "Pro ASP.NET Core MVC 2" и следую его примерам, и дошел до того, что он вводит EF Core.
Он говорит добавить следующее к .csproj
file ...
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet"
Version="2.0.0" />
... и затем добавьте следующее к методу ConfigureServices
в Startup.cs
...
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(
Configuration["Data:SportStoreProducts:ConnectionString"]));
Проблема заключается в том, что при добавленииВ строке моего .csproj
файла я получаю сообщение в окне вывода о том, что ...
C: \ Program Files \ dotnet \ sdk \ 2.2.104 \ Sdks \ Microsoft.NET.Sdk \ target \ Microsoft.NET.ObsoleteReferences.targets (33,5): Предупреждение NETSDK1059: Инструмент «Microsoft.EntityFrameworkCore.Tools.DotNet» теперь включен в .NET Core SDK.Информация по устранению этого предупреждения доступна по адресу (https://aka.ms/dotnetclitools-in-box).
OK, поэтому я снова удалил строку из файла .csproj
и получил ошибку компилятора в файле Startup.cs
:
Тип ApplicationDbContext
не найден.
Я добавил использование для пространства имен Microsoft.Extensions.EntityFrameworkCore
, но это вызвало ошибку компилятора, сказав, что он не найден. Я взялпредложение (от R #, я думаю), чтобы найти Nuget, но ничего не пришло
У кого-нибудь есть идеи? Кроме понижения до 2.0, я не знаю, как поступить.
ОБНОВЛЕНИЕ ОК, так что я сумасшедший. Я прочитал книгу в постели, а затем попытался написать пример кода на следующий день и подумал, что знаю содержание, прочитав егово время создания проекта. Должно быть, я пропустил два фрагмента кода, в которых он показал изменения. Вся моя вина, а не книга.