Применить EF (не ядро ​​EF) к проекту ASP.NET Core - PullRequest
0 голосов
/ 02 ноября 2019

Цель:

Использовать Entity Framework (не EF Core) в проекте ASP.NET Core.

В соответствии с инструкцией вам необходимо создать проект .net, а затем перейти к ASPПроект .NET Core и добавьте его в ссылки, выбрав этот проект EF. (https://docs.microsoft.com/en-us/aspnet/core/data/entity-framework-6?view=aspnetcore-3.0#reference-full-framework-and-ef6-in-the-asp-net-core-project)

Проблема: я получаю сообщение об ошибке

Ошибка CS0012 Тип 'DbSet <>' определен в сборке, на которую нет ссылок. Необходимодобавить ссылку на сборку 'EntityFramework, версия = 6.0.0.0, культура = нейтральная, PublicKeyToken = b77a5c561934e089'

Я уже применил EF в проекте, но все еще получаю эту ошибку.

Я также применил ссылку на github, с которой вы можете скачать решение и его проект
https://github.com/candyboyyy/ef

Информация:
https://docs.microsoft.com/en-us/aspnet/core/data/entity-framework-6?view=aspnetcore-3.0#reference-full-framework-and-ef6-in-the-asp-net-core-project

CREATE TABLE [dbo].[Blogs]
(
    [BlogId] [INT] IDENTITY(1,1) NOT NULL,
    [Name] [NVARCHAR](200) NULL,
    [Url] [NVARCHAR](200) NULL,

    CONSTRAINT [PK_dbo.Blogs] 
        PRIMARY KEY CLUSTERED ([BlogId] ASC)
                    WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, 
                          IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, 
                          ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

1 Ответ

0 голосов
/ 03 ноября 2019

ASP.NET Core != .NET Core

ASP.NET Core может работать на .NET Core или .NET Framework (см. Введение в ASP.NET Core ).

EF Совместимость

EF> = 6,3

Начиная с версии 6.3 EF поддерживает .NET Core.

Объявление Entity Framework 6.3 Preview с поддержкой .NET Core

Фактически, главная цель этого выпуска - облегчить миграцию существующих приложений, использующих EF 6в .NET Core 3.0.

EF <6.3 </h2> Если вы хотите использовать EF <6.3 из ASP.Core, вам нужно настроить таргетинг на .NET Framework. Ниже приведено <a href="https://docs.microsoft.com/en-us/aspnet/core/data/entity-framework-6?view=aspnetcore-3.0#reference-full-framework-and-ef6-in-the-aspnet-core-project" rel="nofollow noreferrer"> Начало работы с ASP.NET Core и Entity Framework 6 . Чтобы использовать Entity Framework 6, ваш проект должен быть скомпилирован с использованием .NET Framework как Entity Framework. 6 не поддерживает .NET Core. Ваше решение специально Проект библиотеки в вашем решении необходимо преобразовать в проект .NET Core.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...