#c# #azure #.net-core #azure-functions
Вопрос:
У меня есть следующая структура проекта в моей функции Azure:
- Приложение.Функция
- Приложение.Домен
- Приложение.Инфраструктура
Это прекрасно работает. Все зависимости разрешаются без каких-либо ошибок.
Однако, когда я настраиваю Entity Framework на своем Infrastructure
уровне и пытаюсь запустить приложение, я получаю следующую ошибку:
webjobsbuilderextensions.cs не найден
Когда я удаляю все, что связано с Entity Framework, и пытаюсь запустить приложение, оно снова работает.
В моем Startup.cs
у меня есть следующий фрагмент кода:
builder.Services.AddDomain(connectionString);
Приложение.Домен.Инъекции:
public static class Injections
{
public static IServiceCollection AddDomain(this IServiceCollection services, string connectionString)
{
services.AddTransient<ISalesItemService, SalesItemService>();
services.AddPersistence(connectionString)
return services;
}
}
Приложение.Инфраструктура.Инъекции:
public static class Injections
{
public static IServiceCollection AddPersistence(this IServiceCollection services, string connectionString)
{
services.AddTransient<ISalesItemDataService, SalesItemDataService>();
services.AddDbContext<IOnePlmSubContext, OnePlmSubContext>(
options => options.UseSqlServer(connectionString),
ServiceLifetime.Transient,
ServiceLifetime.Transient);
return services;
}
}
Кто-нибудь еще сталкивался с той же проблемой, что и я? Разве я не могу иметь такую многоуровневую структуру при работе с функциями Azure?
Комментарии:
1. Какую версию EF и .net core вы используете ?
2. @auburg: Я использую версию 5.0.6 EF и .NET Core 3.1
3. Попробуйте понизить версию EF Core до 3.1,заново построить и повторно протестировать функцию.
4. @AndrewHalil: Это сработало.
Ответ №1:
Обобщите комментарии для справки других сообществ:
Просто понизьте версию EF Core до 3.1 и заново создайте функцию, затем восстановите функцию, она работает.