Я пытаюсь сформировать некоторые классы из базы данных Oracle для использования с .NET Core Web API. Я установил следующие пакеты nuget:
Oracle.EntityFrameworkCore - v2.18.0-beta3
Oracle.ManagedDataAccess.Core - v2.18.6
Я пробовал строить леса с обоими поставщиками и получаю две разные ошибки.
Команда строительных лесов - Scaffold-DbContext "Data Source=(DESCRIPTION=(ADDRESS_LIST= (ADDRESS=(COMMUNITY=tcpcom.world)(PROTOCOL=tcp)(HOST={Host})(PORT={Port})))(CONNECT_DATA=(SID={SID}))); User ID={UserId};Password={Password}" {Provider} -o Models
- Oracle.EntityFrameworkCore scaffold error
ORA-01017: invalid username/password; logon denied
- I have confirmed my login details to be correct
- Oracle.ManagedDataAccess scaffold error
Unable to find expected assembly attribute named DesignTimeProviderServicesAttribute in provider assembly Oracle.ManagedDataAccess. This attribute is required to identify the class which acts as the design-time service provider factory.
- I have tried implementing the
IDesignTimeDbContextFactory<T>
interface with no luck
- I have tried implementing the
Я пробовал сегодня бесчисленное количество вещей из Google, но безуспешно. Может ли это быть проблема с драйверами Oracle?
ИЗМЕНИТЬ
Я создал консольное приложение .NET Core, установил EF Core и Oracle.EntityFrameworkCore и попытался создать шаблон, но получил ту же ошибку. Также подтвержденная строка подключения верна, если использовать ее для создания DbContext и запроса таблицы, возвращающей записи.
Oracle.EntityFrameworkCore
- другой не является поставщиком EF Core. Я бы предложил сначала создать консольное приложение Net Core, ссылающееся на те же пакеты, и протестировать строку подключения примерно так внутриMain
:new DbContext(new DbContextOptionsBuilder<DbContext>().UseOracle(connection_string).Options).Database.OpenConnection();
- person Ivan Stoev   schedule 23.05.2019Scaffold-DbContext
из консольного приложения. В конце концов с опцией-verbose
. И посмотрим, как получится. - person Ivan Stoev   schedule 23.05.2019ORA-01017: invalid username/password; logon denied
- person JB06   schedule 23.05.2019.UseOracle(@"...")
, например. никаких двойных обратных косых черт и т. д. Я больше ничего не могу сделать, удачи. - person Ivan Stoev   schedule 23.05.2019Scaffold-DbContext
у меня работает. Вот что у меня в консольном приложении:<PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.2.4 " /> <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.2.4"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference> <PackageReference Include="Oracle.EntityFrameworkCore" Version="2.18.0-beta3" />
. VS2017 15.9.12, если это важно,<TargetFramework>netcoreapp2.0</TargetFramework>
. - person Ivan Stoev   schedule 23.05.2019