如何防止在 restangular 后请求中$variables

本文关键字:variables 请求 何防止 restangular | 更新日期: 2023-09-27 18:32:13

Typescript:

interface IFoo {
    description: string;
    id: string;
    name: string;
}
interface Foo extends IFoo {
    $myId: string;
    $type: string;
}

Restangular Call:

public myFoo: Foo;    
//after setting the value of this.myFoo
this.restangular.all("api/foo").post(this.myFoo);

服务器端 (.net):

public class Foo
{
    public string Description { get; set; }
    public string Id { get; set; }
    public string Name { get; set; }
}
//Controller
[HttpPost]
[Route("")]
public IHttpActionResult Post(Foo foo)
{
    var updatedFoo = this._fooService.SaveFoo(foo);
    return this.Ok(updatedFoo);
}

问题:

我在打字稿 restangular 调用中的变量 (this.foo) 包含所需的所有信息。但是在控制器内部,变量"foo"是未定义的或空的。我尝试将打字稿中的"this.myFoo"类型更改为接口"IFoo",它可以工作。如果我错了,请纠正我,但我认为以前这不是 restangular 的问题,因为它们在 post 请求中不包含带有 $ 符号的其他变量。我最近更新了我的休息,所以也许这是原因之一?这是可配置的吗?

如何防止在 restangular 后请求中$variables

变量不一致。是myFoo还是foo

public myFoo: Foo;    
//after setting the value of this.myFoo
this.restangular.all("api/foo").post(this.foo);

不过,很可能是错误this的问题。更多 : https://www.youtube.com/watch?v=tvocUcbCupA