一旦发布新数据,是否可以从web api中以angular的形式获取当前id的值?

一旦发布新数据,是否可以从web api中以angular的形式获取当前id的值?,angular,typescript,Angular,Typescript,我正在生成具有多个销售交易记录的发票。最初,选择状态为false且有多笔交易的客户,并生成发票。现在,在生成发票时,我希望这些状态为true,并且所有选定的交易都将分配新生成的发票 我能够根据所选交易生成发票。但现在我无法将该发票Id分配给这些交易 如果我能得到当前生成的发票Id,这将很容易。有人能帮我吗 ngOnInit(){ this.id=this.route.snapshot.paramMap.get('id'); this.service.getSalesTransaction(thi

我正在生成具有多个销售交易记录的发票。最初,选择状态为false且有多笔交易的客户,并生成发票。现在,在生成发票时,我希望这些状态为true,并且所有选定的交易都将分配新生成的发票

我能够根据所选交易生成发票。但现在我无法将该发票Id分配给这些交易

如果我能得到当前生成的发票Id,这将很容易。有人能帮我吗

ngOnInit(){
this.id=this.route.snapshot.paramMap.get('id');
this.service.getSalesTransaction(this.id).subscribe((singleData:any)=>{
this.service.getAllSalesTransactions().subscribe((数据:any)=>{
data.forEach(元素=>{
if(singleData.CustomerName==element.CustomerName
&&元素。状态===false){
//将有效对象推入数组
this.salesTransaction.push(元素);
//计算小计
this.subTotal=this.salesTransaction.reduce((acc,val)=>acc+=val.Total,0);
console.log(本次小计);
//根据金额计算税款
如果(这是小计){
console.log('Invoice-',dataInvoice);
console.log(this.invoiceData);
});
});
});
});
}

像这样的东西不管用吗

var invoice = CreateInvoice(invoice); //invoice with transactions

if(invoice.Id!=default(int)) { //checking if resource is created

return Ok(invoice);

}
在角度方面:

抓取发票的可观察项并获取id

/*********************我的Webp APi代码*******************/

 public IHttpActionResult PostInvoice([FromBody] Invoice invoice){

        if (!ModelState.IsValid) return BadRequest(ModelState);

        try
        {
            using (var context = new AppDbContext())
            {
                context.Invoices.Add(invoice);
                context.SaveChanges();
                return Ok("Sales Transaction was created!" + invoice.InvoiceId);

            }
        }
        catch (Exception e)
        {
            return BadRequest(e.Message);
        }
    }

像这样的事情不会奏效吗

var invoice = CreateInvoice(invoice); //invoice with transactions

if(invoice.Id!=default(int)) { //checking if resource is created

return Ok(invoice);

}
在角度方面:

抓取发票的可观察项并获取id

/*********************我的Webp APi代码*******************/

 public IHttpActionResult PostInvoice([FromBody] Invoice invoice){

        if (!ModelState.IsValid) return BadRequest(ModelState);

        try
        {
            using (var context = new AppDbContext())
            {
                context.Invoices.Add(invoice);
                context.SaveChanges();
                return Ok("Sales Transaction was created!" + invoice.InvoiceId);

            }
        }
        catch (Exception e)
        {
            return BadRequest(e.Message);
        }
    }

这将发生,因为此服务调用的行为是异步的,有时如果使用同步的方式,将解决此问题


这将发生,因为此服务调用的行为是异步的,有时如果使用同步的方式,将解决此问题


不,上面的代码对我不适用。上面提到了我的post Wep Api代码。如何使用observable获取发票?您在createInvoice()中写了什么方法在角度方面?不,上面的代码对我不起作用。我的Wep Api post代码在上面提到过。如何用observable获取发票?你在角度方面的createInvoice()方法中写了什么?我没有合适的例子,我想这会有帮助我没有合适的例子,我认为这会有帮助