。Net Core 3.0 json序列化程序填充现有对象

我正在准备从 ASP.NET Core 2.2 迁移到 3.0。 由于我不再使用任何高级 JSON 功能 (但可能如下所述),3.0 现在为 JSON 提供了内置的命名空间/类,System.Text.Json, I decided to see if I could drop the previous default Newtonsoft.Json. Do note, I'm aware that System.Text.Json will not completely replace Newtonsoft.Json。 我设法在任何地方都这样做 解析 (jsonstring); Var (obj); 但是在一个地方,我填充了一个现有的对象。 与Newtonsoft.Json可以做的 JsonConvert。PopulateObject (jsonstring,obj); -------------------------------------------------------------------------------- 内置的System.Text.Json namespa ……

Net Core: 为 AppService 、存储库等执行 Xunit 测试中的所有依赖注入

我试图在 AppService 的 Xunit 测试中实现依赖注入。理想的目标是运行原始应用程序启动/配置,并使用启动时的任何依赖注入,而不是在我的测试中再次重新初始化所有 DI, 这就是问题的全部目标。 更新: 墨森的回答接近了。需要更新几个语法/需求错误才能工作。 由于某种原因,原始应用程序工作正常,可以调用部门应用程序服务。但是,它不能在 Xunit 中调用。最后,使用原始应用程序的启动和配置让 Testserver 工作。现在收到以下错误: 消息: 以下构造函数参数没有匹配的夹具数据: IDepartmentAppService departmentAppService 命名空间测试。集成测试 { 公共课部门应用服务 { 公共 DBContext 上下文; 公共理念服务部门应用服务; 公共 DepartmentAppServiceTest (IDepartmentAppService departmentAppService) { 这样 departmentAppService departmentAppService =; } 【事实】 公共异步任务 get _ departmentby ……

共3个回答, 标签: c# .net asp.net-core .net-core xunit
需要时获得依赖关系?

是否有任何方法来获取/获取依赖关系只有当它是需要的? 公共类依赖类 { 公共依赖类 (IMandatoryDependency mandatoryDependency,独立依赖 1,独立依赖 2,独立依赖 3) { //分配给类级属性 } 公共无效方法 () { MandatoryDependency.CallMandatoryMethod (); Dependency1.CallDependecy1Method (); } 公共无效方法 { MandatoryDependency.CallMandatoryMethod (); Dependency2.CallDependecy2Method (); } 公共无效方法三 () { MandatoryDependency.CallMandatoryMethod (); Dependency3.CallDependecy3Method (); } } 从上面的片段中,当我在方法本身中时,我想获得单个方法的依赖关系。像这样的: 公共类依赖类 { 公共依赖类 (IMandatoryDependency mandatoryDependency) { // ……

共3个回答, 标签: c# .net asp.net-mvc asp.net-core
ASP.NET 核心 2.2-> 3.0 升级。未找到 env.IsDevelopment ()

我将现有的 2.2 项目升级为 3.0。我将程序/启动的新代码从一个新的 3.0 项目复制到我现有的 2.2 项目中。它的工作,但IsDevelopment() 下面 公共无效配置 (IApplicationBuilder 应用程序,IWebHostEnvironment env) { 如果 (env.IsDevelopment ()) { 应用程序.UseDeveloperExceptionPage (); } 导致这样的错误: > “Iwebhostenvironment” 不包含 “IsDevelopment” 的定义,最佳扩展方法重载 “hostingenvironmentextensions.IsDevelopment (IHostingEnvironment)” 需要类型为 “IHostingEnvironment” 的接收器 同一行没有导致新创建的 3.0 项目。从 2.2 升级的项目需要修改/添加什么? ……

共2个回答,已解决, 标签: asp.net-core asp.net-core-3.0
ASP 中静态方法的依赖注入网络核心

我已经在启动中注册了我的记录器在服务收集中的实现 > 服务.AddTransient (ILogger <>) 、 type of (GenericLogger <>); 通常,我这样做是为了使用构造函数注入 动态事件处理器 { 私人只读 IRepository _ 数据库; 私人只读 IDogStatsd _ dogStatsd; 私人只读 ILogger _ 记录器; 公共 DynamoEventProcessor (IRepository 储存库,IDogStatsd dogStatsd,ILogger 记录器) { _ 数据库 = 库; _ DogStatsd dogStatsd =; _ 记录器 = 记录器; } } 但是我有一个没有构造函数的类, 公共课程简介 { 公共内存流内容 {get; set;} 公共字符串内容算法 {get; set;} 公共列表> 数据键 {get; set;} 公共长时间过期 {get; set;} 公共长版本 {get; set;} 公共长删除 {get; set;} 公共静态字典 GetEncryptedDataAndKeys ( 字典> 配置文 ……

共1个回答, 标签: c# asp.net-core dependency-injection
在 appsettings.json 环境变量设置键-ASP.NET 核心 3.1 Docker

我有一个。NET 核心 Web API,我试图找出如何使用 ENV 变量来配置密钥在我的appsetttings.json所以我可以在创建 Docker 容器时填充数据。 到目前为止,我已经设法注射IOptions<>进入我的测试控制器,我能够调试这些值,这些值为 NULL,因为应用程序目前还没有在容器中运行。 测试控制器: 命名空间 TestWebApplication.Controllers { [高级控制器] [路由 (“api/”)] 公共类 TestController: ControllerBase { 专用只读 ipoptions _ 环境配置; 公共测试控制器 (IOptions 环境配置) { _ 环境配置 = 环境配置; } [HttpGet] [路由 (“测试消息”)] 公共操作结果测试消息 () { Var 测试 = _ 环境配置.值; 返回 Ok ($ "来自 EXAMPLE_1 的值是 {test.EXAMPLE_1}"); } } } 环境配置: 命名空间 TestWebApplication.Models { 公共类环境配置 { 公共字符串示例 _ 1 {获取 ……

共1个回答, 标签: c# docker asp.net-core environment-variables
NullReferenceException 到我的模型中的列表

我试图创建一个列表,用户可以从模型对象中包含的一组变量中选择多个选项。变量列表大小是动态的,可以在运行时向列表添加或删除对象。 我使用控制器,MVC 方法将对象传递给 razor 视图。这很有效,视图会显示列表。但是,当将模型传递回控制器以对数据库进行更新后,模型不再包含列表。 我认为我的问题与我在 CSHTML 文件中构建列表的方式有关,因此 Razor Core 没有将列表链接到它发送给控制器进行 post 操作的模型。什么是实现这一点的正确方法?我试着四处寻找,但我不确定我在寻找什么。 我认为问题是 @ For (int i = 0; i <模型。牙医工作。计数; i) { @ Model.DentistJobs.ElementAt (i).Name } 这是我在 Razor 视图中创建列表的地方,但我不确定这是正确的方法。虽然如果模型本身是列表,上面的确实有效,但它似乎没有在下面一级工作,至少在这个例子中对我来说是这样。 CSHTML 文件 @ 模型 BIDC.网站.视图模型.牙医创建视图模型 @ { ViewData ["Title"] = "添加新牙医";} 牙 ……

共0个回答, 标签: c# asp.net asp.net-mvc asp.net-core
无法翻译 LINQ 表达式。以可以翻译的形式重写查询,或者切换到客户端评估 EF Core 3.1

我已经为此奋斗了四天,一点进展也没有。有一个查询,它在更新到 EF 核心 3.1 之前工作得很好: Var 设备 = 等待这个.DbContext.ServContrObjStructEquipment 。AsNoTracking () 。其中 (e => e.ServContrObjStruct.ServContrObjStructParent.Objectuid = = sectionGuid) 。其中 (e => e.ServContrObjStructPlanEquipment.Select (x => x.PkServContrObjStructPlanEquipment)。包含 ( E.ServContrObjStructPlanEquipment.Orderby 降序 (x => x.ServContrObjStructPlanVers.Active 直到??日期时间。最大价值)。然后由降 (x => x.ServContrObjStructPlanVers.Activfrom)。然后由降 (x => x.Activfrom)。选择 (x => x.Pkservcontrobstructpla ……

共0个回答, 标签: c# entity-framework linq asp.net-core ef-core-3.1
Asp。Net 核心,检查是否允许匿名

我需要一种方法来检查 “允许匿名” 是否在控制器操作中开/关。是否来自控制器属性、动作属性 > [AllowAnonymous] 或者在 MvcOptions 中设置为过滤器 > Opts.Filters.Add (新的 AllowAnonymousFilter ()); 有可能吗? 谢谢! ……

共0个回答, 标签: c# authentication asp.net-core .net-core