asp.net-core – 来自带有Entity Framework Core的Data Tier中的
发布时间:2020-12-16 07:25:38 所属栏目:asp.Net 来源:网络整理
导读:我有一个新的应用程序,我正在使用Entity Framework Core构建ASP.NET Core.该应用程序具有UI,模型,业务和数据层.在以前的ASP.NET版本中,您可以在web.config中设置连接字符串,默认情况下它将在引用的层中可用.在使用appsettings.json(或其他配置选项)的ASP.NET
我有一个新的应用程序,我正在使用Entity Framework Core构建ASP.NET Core.该应用程序具有UI,模型,业务和数据层.在以前的ASP.NET版本中,您可以在web.config中设置连接字符串,默认情况下它将在引用的层中可用.在使用appsettings.json(或其他配置选项)的ASP.NET Core中,这似乎不是相同的情况?有关如何实现这一点的任何想法?我在数据层中配置了dbcontext,但我目前正在对连接字符串进行硬编码.
我看到的所有示例都在startup.cs的UI层中配置了dbcontext.这就是我想要避免的. 问题Here得到了主题. 解决方法
您可以轻松地将IServiceCollection的扩展方法添加到业务/服务层,并使用它来注册自己的依赖项.然后在启动时,您只需在服务层上调用该方法,而无需在Web应用程序中引用EntityFramework.
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; namespace your.service.layer { public static class MyServiceCollectionExtensions { public static IServiceCollection AddMyServiceDependencies(this IServiceCollection services,string connectionString) { services.AddEntityFrameworkSqlServer() .AddDbContext<YourDbContext>((serviceProvider,options) => options.UseSqlServer(connectionString) .UseInternalServiceProvider(serviceProvider) ); return services; } } } 启动: using your.service.layer; public void ConfigureServices(IServiceCollection services) { var connectionString = Configuration.GetConnectionString("EntityFrameworkConnectionString"); services.AddMyServiceDependencies(connectionString); } 现在,您的网络应用仅需要对您的业务/服务层的引用,并且它不直接依赖于EntityFramework. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- razor – 使用ActionLink将null参数传递给控制器
- razor – 没有布局参考的ASP.NET默认MVC4应用程序内容页面?
- BreezeJS vs JayData for ASP开发ASP.NET MVC
- asp.net – IQueryable和存储库 – 需要2?
- asp.net-core-mvc – MVC 6配置验证
- asp.net-mvc – 更改MVC4上的基本视图类型
- asp.net – 我如何计算出我的服务器可以处理的最大负载?
- asp.net – 下拉列表中的第一个项目为空白
- asp.net-mvc – 如何从ASP.NET MVC Controller Action流式传
- ASP.NET MVC – 单元测试覆盖初始化方法
推荐文章
站长推荐
- asp.net-mvc – 为什么ASP.Net MVC便携式区域不像
- asp.net-mvc – 无论如何让mvc框架验证我的actio
- asp.net-mvc-3 – ASP.Net MVC 3,Ninject和Quart
- 实体框架 – 我们如何使用Breeze的本地时区生存
- asp.net-core – 如何在ASP.NET Core中设置cooki
- asp.net-mvc – DisplayFor忽略html属性的原因是
- asp.net-mvc – asp.net mvc url action忽略旧参
- 将ASP移植到Django或ASP.NET
- asp.net-mvc – 如何在ASP.NET MVC中实现流畅的a
- asp.net – 不能得到内容的内容,因为内容不是文字
热点阅读