我试图通过使用" $ resource"将bookData发布到我的WebAPI2服务。在AngularJS中。当它首先从BookService获取一本书,修改书籍并将其发布到BookService时,这种方法很有效。
我正在寻找一种方式来发布一本书而不先从BookService获得一本书。
首先,我在WebAPI2中创建了一个REST服务:
public IHttpActionResult Get([FromUri] string id)
public IHttpActionResult Post([FromBody] BookData bookData)
其次,在控制器中,我试图发布一些书籍数据。 BookService注入Controller中
var bookData;
var book = BookService.get({ id: 1 }, function()
{
bookData = book;
});
$scope.sendBook = function () {
bookData.Title = 'Test REST';
var book = new BookService(bookData);
book.$save();
}

我已尝试过以下操作,但它无法正常工作
var bookData = {Title: 'Test REST'};
$scope.sendBook = function () {
var book = new BookService(bookData);
book.$save();
}

答案 0 :(得分:0)
其中只有一些静态数据。
public class BookController : ApiController
{
[HttpGet]
public IHttpActionResult Get([FromUri] string id)
{
BookViewModel vm = new BookViewModel
{
Title = "TEST REST"
};
return Ok(vm);
}
[HttpPost]
public IHttpActionResult Post([FromBody] BookData bookData)
{
BookViewModel vm = new BookViewModel
{
Title = "TEST REST"
};
return Created(new Url(Request.RequestUri.ToString()), vm);
}
}
答案 1 :(得分:0)
我找到了解决方案。将bookData分配给$ scope
类似的东西:
$scope.bookData = { Title: 'Some title' };