有人知道如何使用asp.net核心json补丁更新项目的嵌套元素吗?

我尝试使用
xx.Operations.Add(new Operation<DataRequestModel>("Replace", $"schedules/{scheduleId}/status", null, DataRequestStatusEnum.ExtractionFailed));

但是当我在补丁操作中使用The path segment '43688769-f45e-4e84-a8d6-f071c077b9ad' is invalid for an array index.时,它将引发异常model.ApplyTo(dataRequest);

谢谢你的帮助。

最佳答案

我做到了

控制者

    [Route("{some}/adress")]
    [HttpPatch]
    public bool YourDtoUpdate(long some, [FromBody]JsonPatchDocument<TestpDTO> testChanges)
    {
        var tsd = new TestDTO(){Nested = new NestedClass()};
        testChanges.ApplyTo(tsd);
    }


服务

    var model = new TestDTO() { Foo = "abc", Nested = new NestedClass()};
    JsonPatchDocument<TesDTO> patchDoc = new JsonPatchDocument<TestDTO>();
    patchDoc.Replace(e => e.Foo , model.Foo );
    patchDoc.Replace(e => e.Nested.Bar, model.Nested.Bar);

关于c# - 使用带有JSON补丁的ASP.NET Core更新嵌套元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43055702/

10-14 03:05