2014-10-21 18 views
0

Я пытаюсь опубликовать bookData для моей службы WebAPI2, используя «$ resource» в AngularJS. Это отлично работает, когда он сначала получает книгу из BookService, модифицирует книгу и отправляет ее в BookService.

Я ищу способ публикации книги, не получив сначала книгу из BookService.

Во-первых, я создал REST-сервис в WebAPI2:

public IHttpActionResult Get([FromUri] string id) 

public IHttpActionResult Post([FromBody] BookData bookData) 

Во-вторых, в контроллере я пытаюсь получить ан размещать некоторые bookdata. BookService вводится в контроллер

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

вы можете разместить свой код для bookservice? – sylwester

ответ

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); 
    } 
} 
0

Я нашел решение. Назначают bookData до $ объема

Что-то вроде:

$scope.bookData = { Title: 'Some title' };

Смежные вопросы