天道酬勤,学无止境

来自带有实体框架核心的数据层中 appsettings.json 的 ConnectionString(ConnectionString from appsettings.json in Data Tier with Entity Framework Core)

问题

我有一个使用 Entity Framework Core 在 ASP.NET Core 上构建的新应用程序。 该应用程序具有 UI、模型、业务和数据层。 在以前版本的 ASP.NET 中,您可以在 web.config 中设置连接字符串,默认情况下它会在引用的层中可用。 这在 ASP.NET Core 中与 appsettings.json(或其他配置选项)似乎不同? 关于这是如何实现的任何想法? 我在数据层配置了 dbcontext,但我目前正在对连接字符串进行硬编码。

我看到的所有示例都在 startup.cs 的 UI 层中配置了 dbcontext。 这是我试图避免的。

这里的问题跑题了。

回答1

您可以轻松地将 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);
}

现在您的 Web 应用程序只需要对您的业务/服务层的引用,并且它不直接依赖于 EntityFramework。

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • 实体框架核心错误:使用与服务器“localhost”上的数据库“”的连接时发生错误(Entity Framework Core Error: An error occurred using the connection to database '' on server 'localhost')
    问题 我制作了一个ASP.NET Core 3.1基于 Web 的应用程序,并希望使用 MySQL 作为数据库。 我一直在关注一些关于使用ASP.NET Core 3.1 [代码优先方法]创建MySQL database YouTube 教程,包括来自该站点的教程: https://docs.microsoft.com/en-us/aspnet/core/data/ef-rp/intro?view=aspnetcore-3.1&tabs=visual-studio 我创建了一个DataModel Class ,加入到服务UseMySQL到Startup.cs类和创建AppDBContext Class实现DbContext Class 。 当我在包管理器控制台中运行此命令时: Add-Migration InitialDatabase应用程序正在成功创建迁移。 当我运行update-database它抛出此异常: fail: Microsoft.EntityFrameworkCore.Database.Connection[20004] An error occurred using the connection to database '' on server 'localhost'. An error occurred using the connection to
  • 使用存储库模式的 ASP.NET MVC(ASP.NET MVC using the Repository Pattern)
    问题 目前我正在使用 EF 并直接在我的所有操作中使用它的数据上下文,但是自从我开始阅读有关松散耦合和可测试性的内容后,我认为这不是最好的方法。 在开始重构我当前的所有代码之前,我试图了解所有的优点和缺点。 问题 1:考虑到每个实体都需要自己的存储库,因此必须设置自己与数据源的连接(假设使用 EF 的数据库),如果我需要来自 5 个不同实体的数据在一个页面上,这不会带来很多开销? 问题 2:在我在网上找到的所有示例中,我还看到大多数人(甚至像 shanselman 这样的人)使用由 LINQ 或 EF 生成的实体类来实现存储库模式,这是否违背了关于松散耦合的存储库模式? 另一方面,将 POCO 类与例如 AutoMapper 结合使用的替代方法是什么? (这让我有点害怕) 我希望一些人可以对此有所了解,因为如果存储库模式是网站的正确选择,我现在有点困惑。 回答1 你可以读读这本书。 有一个使用 Repository 模式和 LINQ 的好例子。 还有这篇文章在实体框架 4.0 中使用存储库和工作单元模式。 回答2 ObjectContext 使用连接池,因此它不会像您想象的那样低效。 此外,SQL 服务器(即 MSSQL)确实针对大量并发连接进行了优化。 至于如何实现它,我会使用一些 IRepository 接口。 然后你可以创建特定的接口,即 PostRepository >
  • 实体框架数据上下文中没有带有连接字符串的构造函数(No constructor with a connection string in Entity Framework datacontext)
    问题 我正在为我的项目使用Entity Framework 5.0 。 我在互联网上查看,我看到对于实体框架数据上下文,还有另一个构造函数具有用于连接字符串的字符串参数。 在我生成的data context我没有这样的构造函数。 我查看了基本的DbContext ,它有这样一个构造函数。 生成的代码有误吗? 我从数据库生成了代码。 这可能是原因吗? 结果证明我可以编辑代码生成模板文件来添加新的构造函数。 现在我添加了新的构造函数。 该文件是 edmx 模型下的 MyDataContext.tt 文件。 在那里,您将 C# 代码与模板代码混合在一起。 您可以从那里复制无参数构造函数并将其粘贴到下面。 然后你可以改变它并向它添加一个字符串参数并将该参数传递给 DbContext 构造函数,如下所示:base(myString)。 回答1 您可以根据需要添加一个。 检查生成的文件并添加重载的构造函数。 public YourContext(string connectionStr) : base(connectionStr) { } 不过,在部分类中定义它可能更好,因为每一代都需要您每次手动添加它。
  • 使用多个DbContext的实体框架核心(Entity Framework Core Using multiple DbContexts)
    问题 我遇到一个问题,当我尝试访问PartsDbContext中的字段时,出现以下错误: System.Data.SqlClient.SqlException:'无效的对象名称'fieldName' 看来这是因为我试图让我的PartsDbContext使用与与Identity一起使用的ApplicationDbContext相同的数据库。 我需要知道如何设置第二个dbcontext以与使用/创建其他数据库的EF核心一起使用。 我尝试创建第二个连接字符串,但这使我收到此错误: System.Data.SqlClient.SqlException:'无法打开登录请求的数据库“ PartsDb”。 登录失败。 用户“ DESKTOP-4VPU567 \ higle”的登录失败。 这是我的代码: appsettings.json "ConnectionStrings": { "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=aspnet-PrecisionCustomPC-b14db89e-86ad-4855-a17f-ac64a04339aa;Trusted_Connection=True;MultipleActiveResultSets=true", "PartsConnection": "Server=
  • Entity Framework Core 从现有数据库创建模型(Entity Framework Core creating model from existing database)
    问题 使用 Entity Framework Core,如何生成 EF 模型和实体? 根据 ASP.NET Core - Existing Database Microsoft 文章,您需要在包管理器控制台中运行这样的命令: Scaffold-DbContext "Server=(localdb)\mssqllocaldb;Database=Blogging;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models 这使您可以零控制导入哪些表或视图。 这是否可能是现在使用 EF Core 对数据库进行逆向工程并创建 EF 模型和实体的唯一方法,与多年来使用完整实体框架完成的方法相比,这种进展如何? 回答1 在 Entity Framework Core 中没有办法做到这一点。 在此处阅读文档:https://docs.microsoft.com/en-us/ef/efcore-and-ef6/features 回答2 我知道这个问题有点老了,但我认为它对遇到同样问题的人非常有用。 如果我正确理解了您的问题,您想指定应生成哪些表。 如果将-Tables参数添加到命令中,则应该是可能的。 这是我用来生成数据库的 3 个表的命令(在包管理器控制台中): Scaffold
  • 实体框架7数据库优先配置(MVC 6)(Entity Framework 7 Database First configuration (MVC 6))
    问题 经过长期的不懈努力,终于弄清楚了如何使用MVC 6首先使用EF7数据库。方法是这样的: App.Impl-> project.json: "frameworks": { "net451": { }, "dnx451": { } }, "dependencies": { "EntityFramework.Commands": "7.0.0-rc1-final", "EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final", "EntityFramework.MicrosoftSqlServer.Design": "7.0.0-rc1-final" }, 然后从cmd运行命令: dnx ef dbcontext scaffold "Server=ip,port;Database=db;User Id=user;Password=pass;" EntityFramework.MicrosoftSqlServer 我面临的3个问题。 在我的Impl项目上。 我有一个专用于数据的文件夹。 我的数据文件夹应包含所有与数据库相关的内容,例如DbContext,DbClasses。 但是,Scaffold会在根目录下创建这些文件。 如何指定要创建这些文件的文件夹? 在我的工作场所,我可以有一个包含50个表的数据库。 但是
  • Dal(带有实体框架)和模型层进入MVC(Dal (with Entity Framework) and Model layers into MVC)
    问题 首先,我将EF应用于Dal层(与MVC分离的项目,相同的解决方案)。 EF的EDMX文件生成的模型是来自Model层的实际模型? 如果是这样,我如何访问这些模型以在MVC的View层中工作? 我认为直接从视图访问数据层以使用这些模型是错误的,并且如果我使用“我的模型”创建模型层并将Dal的模型转换为我的模型...它将是重复的代码。 可能是我出了点问题,但大部分都是错误的。 是使用代码优先方法的,我无法弄清楚。 回答1 您正确的想法是不要直接从表示层访问DAL中的模型。 为了避免在将DAL对象转换为视图所使用的模型时重复代码,可以使用诸如AutoMapper之类的工具,它应该在那种情况下为您完成繁重的工作。 回答2 我认为直接从视图访问数据层以使用这些模型是错误的... 是的,适当的方法是使用View Model 当有数十种不同的值要传递给视图时,使您快速添加新条目或重命名现有条目的灵活性会成为您的最大敌人。 您不会从Microsoft IntelliSense和编译器获得帮助。 解决软件复杂性的唯一行之有效的方法是通过适当的设计。 因此,为每个视图定义一个对象模型可以帮助您跟踪该视图的实际需求。 我建议您为添加到应用程序中的每个视图定义一个视图模型类。 -Dino Esposito的“对Microsoft ASP.NET MVC进行编程”
  • 针对 ASP.NET Core Web API 的先进架构
    针对 ASP.NET Core Web API 的先进架构 要点概述: 与传统的ASP.NET相比,ASP.NET Core的新架构提供了一些好处ASP.NET Core从一开始就包含对依赖注入的支持单一职责原则简化了实施和设计端口和适配器模式将业务逻辑与其他依赖项分离解耦的架构使测试更容易、更健壮 .NET Core 最初是在 2016 年发布的,随着.NET Core 2.0 的发布,微软拥有了下一个通用、模块化、跨平台和开源的平台主版本。.NET Core 已经创建了许多 API,在当前版本的.net 框架中均可用。它最初是为下一代 ASP.NET 解决方案而创建的,但现在成了许多其他场景的驱动和基础,包括物联网、云计算和下一代移动解决方案。在本系列文章中,我们将探讨.NET Core 的一些好处,以及它如何不仅能使传统的.NET 开发人员受益,还能使所有需要为市场带来健壮、高效和经济的解决方案的技术人员受益。 如今的互联网与五年前已经完全不同了,Web api 连接了由 Web 应用和移动应用驱动的现代互联网。有一种技能非常需要,那就是创建其他开发人员也可以使用的健壮的 Web api。驱动大多数现代 web 和移动应用的 API 都需要具有稳定性和可靠性,以便在流量达到性能限制时仍能继续服务。 本文的目的是描述 ASP.NET Core 2.0 Web API
  • 「领域驱动设计」领域驱动的设计和开发最佳实践
    背景域驱动设计(DDD)是关于将业务域概念映射到软件构件的。关于这个主题的大多数文章和文章都是基于Eric Evans的《领域驱动设计》一书,主要从概念和设计的角度覆盖了领域建模和设计方面。这些文章讨论了DDD的主要元素,如实体、价值对象、服务等,或者讨论了泛在语言、有界上下文和反腐败层等概念。本文的目标是从一个实际的角度来讨论如何获取域模型并实际实现它,从而涵盖域建模和设计。我们将查看技术主管和架构师在实现工作中可以使用的指导方针、最佳实践、框架和工具。领域驱动的设计和开发还受到几个体系结构、设计和实现方面的影响,比如:业务规则持久性缓存事务管理安全代码生成测试驱动开发重构本文讨论了这些不同的因素是如何在项目的整个生命周期中影响项目的实现的,以及架构师在实现一个成功的DDD实现时应该注意什么。我将从一个典型的域模型应该具有的特征列表开始,以及何时在企业中使用域模型(与完全不使用域模型或使用贫血域模型相比)。本文包括一个示例贷款处理应用程序,以演示如何在实际的域驱动开发项目中使用这里讨论的设计方面和开发最佳实践。示例应用程序在实现贷款处理域模型时使用Spring、Dozer、Spring Security、JAXB、Arid pojo和Spring Dynamic模块等框架。示例代码将使用Java,但是对于大多数开发人员来说,无论其语言背景如何,都应该非常容易理解
  • 部署asp.net核心应用程序时如何处理环境差异?(How to deal with environment differences when deploying asp.net core application?)
    问题 部署ASP.NET Core应用程序时是否可以更改环境设置(例如使用调试/发布版本的配置文件转换)? 在.NET Core应用程序中维护多个环境设置的最佳方法是什么(类似于<appSettings file="local.config">用于本地,暂存和生产)? 回答1 中央配置文件是appsettings.json ,您可以有多个文件,例如appsettings.Production.json等,这些文件将被加载并覆盖来自appsettings.json设置。 例如 // Set up configuration sources. var builder = new ConfigurationBuilder() .SetBasePath(hostEnv.ContentRootPath) .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true) .AddJsonFile($"appsettings.{hostEnv.EnvironmentName}.json", optional: true, reloadOnChange: true) .AddEnvironmentVariables(); 您需要做的就是设置环境类型的环境变量(请参阅此处的文档)。
  • 对基于 ASP.NET MVC Onion 架构的意见 [关闭](Opinion on ASP.NET MVC Onion-based architecture [closed])
    问题 关闭。 这个问题是基于意见的。 它目前不接受答案。 想改善这个问题吗? 更新问题,以便通过编辑这篇文章用事实和引文来回答问题。 6 个月前关闭。 改进这个问题 您对以下“通用”代码优先洋葱式 ASP.NET MVC 架构有何看法: 层,解释: 核心- 包含领域模型。 例如,这是业务对象及其关系。 我正在使用实体框架来直观地设计实体和它们之间的关系。 它让我为数据库生成脚本。 我得到了自动生成的类似 POCO 的模型,我可以在下一层(持久性)中自由引用它们,因为它们很简单(即它们不是特定于数据库的)。 持久性- 存储库接口和实现。 基本上是域模型上的 CRUD 操作。 BusinessServices - 围绕存储库的业务层。 所有的业务逻辑都应该在这里(例如GetLargestTeam()等)。 使用 CRUD 操作来组合返回对象或获取/过滤/存储数据。 应包含所有业务规则和验证。 Web(或任何其他 UI) - 在这种特殊情况下,它是一个 MVC 应用程序,但该项目背后的想法是提供 UI,由业务服务提供的内容驱动。 UI 项目使用业务层,不能直接访问 Repository。 MVC 项目有自己的 View 模型,这些模型特定于每种 View 情况。 我不是要强行喂它域模型。 所以引用是这样的: UI -> Business Services -> Repository ->
  • 基于Web的Design Patterns应用程序(Design Patterns web based applications [closed])
    问题 关门了。 这个问题是基于意见的。 它当前不接受答案。 想要改善这个问题吗? 更新问题,以便可以通过编辑此帖子以事实和引用的形式回答。 3年前关闭。 改善这个问题 我正在设计一个简单的基于Web的应用程序。 我是这个基于Web的领域的新手,我需要您提供有关设计模式的建议,例如如何在Servlet之间分配职责,创建新Servlet的标准等。 实际上,我的主页上没有几个实体,并且与每个实体相对应,我们几乎没有诸如添加,编辑和删除之类的选项。 早些时候,我为每个选项使用一个Servlet,例如Servlet1用于添加实体1,Servlet2用于编辑实体1,依此类推,这样我们最终拥有大量的Servlet。 现在,我们正在更改设计。 我的问题是,如何正确选择如何选择servlet的责任。 每个实体是否应该有一个Servlet,它将处理所有选项并将请求转发到服务层。 还是我们应该为整个页面设置一个servlet,该servlet将处理整个页面请求,然后将其转发到相应的服务层? 同样,请求对象是否应该转发到服务层。 回答1 有点像样的Web应用程序由多种设计模式组成。 我只会提到最重要的那些。 模型视图控制器模式 您要使用的核心(架构)设计模式是Model-View-Controller模式。 Controller将由一个Servlet表示,该Servlet将基于请求直接创建
  • 将 ASP.NET 标识与核心域模型解耦 - 洋葱架构(Decoupling ASP.NET Identity from the Core Domain Models - Onion Architecture)
    问题 我使用这个示例项目 (https://github.com/imranbaloch/ASPNETIdentityWithOnion) 作为我的应用程序架构,在这个示例中,核心完全从包括身份框架在内的基础设施中分离出来。 在这个示例中,作者使用了适配器模式来解耦核心身份类(IdentityUser、IdentityRole ...)并在核心层中提供与它们类似的类。 现在这个示例项目中的问题是域模型(产品、图像)没有与模拟身份类的虚拟类(AppUser、ApplicationRole、AppliationUserRoles 等)链接。 然后我修改了代码以添加对 AppUser 的引用 public sealed class Image : BaseEntity { public Image() { Products = new HashSet<Product>(); } public string Path { get; set; } public AppUser AppUser { get; set; } // The Added Reference ... public ICollection<Product> Products { get; set; } } 如果我将“AppUser”导航属性放在“Image”类中,则创建的数据库将有四个新表,而不是身份框架的默认五个表。
  • 带有 LINQ 聚合的实体框架连接字符串?(Entity Framework with LINQ aggregate to concatenate string?)
    问题 这对我来说很容易在 TSQL 中执行,但我只是坐在这里用头撞桌子试图让它在 EF4 中工作! 我有一张表,我们称之为 TestData。 它有字段,比如:DataTypeID、Name、DataValue。 DataTypeID, Name, DataValue 1,"Data 1","Value1" 1,"Data 1","Value2" 2,"Data 1","Value3" 3,"Data 1","Value4" 我想对 DataID/Name 进行分组,并将 DataValue 连接成一个 CSV 字符串。 所需的结果应包含 - DataTypeID, Name, DataValues 1,"Data 1","Value1,Value2" 2,"Data 1","Value3" 3,"Data 1","Value4" 现在,这就是我要尝试的方法- var query = (from t in context.TestData group h by new { DataTypeID = h.DataTypeID, Name = h.Name } into g select new { DataTypeID = g.Key.DataTypeID, Name = g.Key.Name, DataValues = (string)g.Aggregate("", (a, b)
  • .net 核心,n 层应用程序,如果服务层依赖于 Microsoft.Extensions.Options.dll(.net core, n-layered app, should services layer have dependency on Microsoft.Extensions.Options.dll)
    问题 直截了当的问题是:Microsoft.Extensions.Options.IOptions 是仅在伞形应用程序(在本例中为 Web 应用程序)的上下文中还是在类库中使用? 例子: 在 n 层的 asp.net 核心应用程序中,我们的服务层依赖于来自appsettings.json文件的某些设置。 我们首先开始的是 Startup.cs 中的这些内容: services.Configure<Services.Options.XOptions>(options => { options.OptionProperty1 = Configuration["OptionXSection:OptionXProperty"]; }); 然后在服务构造函数中: ServiceConstructor(IOptions<XOptions> xOptions){} 但这假设在我们的服务层中,我们依赖于Microsoft.Extensions.Options 。 我们不确定这是推荐的方式还是有更好的做法? 只是感觉有点尴尬,我们的服务类库应该知道 DI 容器实现。 回答1 您也可以注册用于注入的 POCO 设置,但是您会失去一些与appsettings.json被编辑时相关的功能。 services.AddTransient<XOptions>( provider => provider
  • ASP.NET Core:从ASP.NET Web API迁移的多层数据服务应用程序
    目录 介绍 设置和运行示例应用程序 类库项目 依赖注入 访问应用程序设置 实体框架核心相关更改 主键标识插入问题 数据上下文和连接字符串 自定义存储库(Repositories) LINQ表达式翻新(仅适用于EF Core 3.0) 执行存储过程 定制模型绑定器 使用IIS Express和本地IIS 摘要 下载AspNetCore3.0_DataServices-75.8 KB下载AspNetCore2.0-2.2_DataServices-211.1 KB下载WebApi_DataServices-309.1 KB 介绍 RESTful数据服务API多年来一直是主流数据层应用程序类型。随着技术和框架的发展,旧的代码和结构将不可避免地被更新的代码和结构取代。对于将样本数据服务应用程序迁移到下一代ASP.NET或更高版本的工作,我的目标是利用更新的技术和框架的优势,但仍保持相同的功能以及请求/响应签名和工作流。因此,任何客户端应用程序都不会受到从ASP.NET Web API到ASP.NET Core或ASP.NET Core版本之间的数据服务迁移更改的影响。本文不是分步教学,读者可以根据需要查看目录中具体章节。 设置和运行示例应用程序 要使用首选的.NET Core版本运行SM.Store.CoreApi解决方案,您需要在计算机上分别安装Visual Studio
  • 建立 DAL。 使用 EDM(来自数据库)(Building DAL. Using EDM (from database))
    问题 我必须开发一个在 windows (wpf) 中工作的 lob 应用程序,但应该以两种方式部署: 使用本地数据库(同一台计算机) 使用远程数据库(在同一网络中) 我将使用从数据库生成的实体数据模型(dbcontext,EF 4.0)(VS2012,sql server express 2012) 我想开发一个独特的数据访问层,UI 将绑定到它,它将直接从 dbcontext(本地数据库)或从公开 dbcontext(远程数据库)数据的 WCF 服务中获取数据 我不知道从哪里开始,我需要指导、示例,我知道这取决于应用程序的性质,但是一些示例、文章会很有帮助。 我没有找到与我的需求相似的示例 我想我最好使用 DI 框架,但我想首先关注 DAL。 回答1 好吧,既然您想使用 DI 框架(可能是一个不错的选择 :)),您已经知道需要使用接口定义 DAL。 然后,您可以让类实现那些充当 WCF 服务或数据库上下文适配器的接口。 您的设计的一个很好的方面是,您将自动将自己与 WCF 服务和数据库上下文的未来可能替代品隔离开来——即,每当微软发布另一种数据访问技术时。 :) 或者更有可能,每当您的团队决定采用不同的服务时,例如从 WCF 服务切换到 REST 服务。 通常,存储库模式用于解决此问题。 例如,您可能有: public interface IWidgetRepository {
  • 如何在领域层中使用工作单元(How to use Unit of Work in Domain Layer)
    问题 我正在尝试在我的服务类中使用工作单元模式。 我有我的 CompanyService 课程 public class CompanyService: ICompanyService { private readonly ICompanyRepository _companyRepository; public CompanyService(ICompanyRepository companyRepository) { _companyRepository = companyRepository; } public void CreateCompany(Company company) { _companyRepository.Add(company); //I want to have unit of work commit here!!! //unitofwork.commit(); } public void UpdateCompany(Company company) { etc...} 如果我的 IUnitOfWork 位于我的数据层而不是我的域层,我如何在我的 ServiceClass 中注入一个 UnitOfWork 的实例? 我的域层中应该有一个 IUnitOfWork 吗? 我只是觉得这听起来不太对... 回答1 我的域层中应该有一个 IUnitOfWork 吗
  • 洋葱架构-实体框架代码优先模型数据注释(Onion Architecture- Entity Framework Code First Models DataAnnotations)
    问题 我正在按照洋葱体系结构开发一个ASP.NET MVC项目。 我已经在核心项目中添加了这些模型,这些模型将被称为基础结构项目中的实体框架模型的POCO类。 我的问题是如何添加取决于实体框架的数据注释? 我可以将核心模型作为接口并在基础结构项目中继承它并进行真正的实现吗? 回答1 如果您从Fluent API的“数据注释”中切换,则无需将“核心模型”创建为接口。 这是一个例子。 Entity1对象是核心层域对象: namespace MyApp.Core.Model { public class Entity1 { public short Id { get; set; } public string ExternalCode { get; set; } public byte Status { get; set; } } } 在基础结构层中,创建一个Entity1Mapping类,您将在其中使用数据注释完成操作,但是这次使用Fluent API: using System.Data.Entity.ModelConfiguration; namespace MyApp.Infrasrtucture.Data.Configuration { internal class Entity1Mapping : EntityTypeConfiguration<Core.Model
  • 如何关闭由ASP.NET核心框架完成的日志记录(How to turn off the logging done by the ASP.NET core framework)
    问题 如何关闭每个请求的ASP.NET完成的日志记录,例如 INFO 09:38:41用户个人资料可用。 使用“ C:\ Users \ xxxx xxxx \ AppData \ Local \ ASP.NET \ DataProtection-Keys”作为密钥存储库,并使用Windows DPAPI加密静态密钥。 DEBUG 09:38:41托管开始 DEBUG 09:38:41托管开始 INFO 09:38:41请求启动HTTP / 1.1 GET http:// localhost:23369 / INFO 09:38:41请求启动HTTP / 1.1 DEBUG http:// localhost:23369 / text / html DEBUG 09:38:41不支持DEBUG请求 DEBUG 09:38:41请求路径/与支持的文件类型不匹配 DEBUG 09:38:41请求已成功匹配名称为“ default”和模板为“ {controller = Home} / {action = Index} / {id?}”的路由。 DEBUG 09:38:41请求已成功匹配名称为“ default”和模板为“ {controller = Home} / {action = Index} / {id?}”的路由。 DEBUG 09:38:41执行动作Forums