您好我是BreezeJs
我在Controller上有一个post方法
// POST api/company/post
[Authorize(Roles = "Admin")]
[AcceptVerbs("POST")]
[HttpPost]
public object **SaveChanges**(JObject companyRequest)
{
return companyService.SaveEntity(companyRequest);
}
我在breezejs中调用了这个方法
manager.**saveChanges**().then(saveSucceeded).fail(saveFailed);
此saveChanges()
与控制器方法名称相同。所以它现在正在运作!
但是,如果我将控制器方法名称SaveChanges()
更改为SaveChangesCompany()
并将微风改为manager.SaveChangesCompany()
代码看起来像
// POST api/company/post
[Authorize(Roles = "Admin")]
[AcceptVerbs("POST")]
[HttpPost]
public object **SaveChangesCompany(JObject companyRequest)**
{
return companyService.SaveEntity(companyRequest);
}
和微风一面
**manager.saveChangesCompany(**).then(saveSucceeded).fail(saveFailed);
然后它不起作用。为什么manager.saveChanges()
确实有效且manager.saveChangesCompany()
不起作用?
我如何使用breezejs做这个场景?
请帮帮我吧!谢谢 !
答案 0 :(得分:3)
EntityManager上的saveChanges
方法的名称与服务器上的SaveChanges
方法之间没有物理连接。改变一个不会改变另一个。
如果要在控制器上使用其他方法名称,则需要在实体管理器上传递给saveChanges方法的SaveOptions
中指定它:
var so = new SaveOptions({ resourceName: "SaveChangesCompany" });
manager.saveChanges(null, so );
有关详细信息,请参阅Breeze Documentation。