2013-07-07 75 views
0

我有以下的javascript代碼Post方法發送一個空對象

function SendMessage(personId) {  

var message = new MessageClass.Message($('#textareaMessage').val(), personId);  
$.ajax({ type: "POST", contentType: 'application/json', url: "/api/PersonApi/SendMessage/" + message }).success(function (data) { }); 
} 

var MessageClass = 
{ 
    Message: function (messageText, personId) { 
     this.MessageText = messageText; 
     this.PersonId = personId; 
    } 
}; 

和API方法是

[System.Web.Http.HttpPost] 
public void SendMessage(Message message) 
{ 
    var uow = new Uow(); 
    var person= uow.People.GetById(message.PersonId); 
    person.Messages.Add(message); 
} 

我每次數據發佈到API,數據始終爲空。

Message類是如下

public class Message 
{ 
    [Key] 
    public int Id { get; set; } 
    public string MessageText { get; set; } 
    [ForeignKey("Person")] 
    public int PersonId { get; set; } 
    public virtual Person Person { get; set; } 
} 

回答

1

您需要將內容發送的POST有效載荷,而不是URL。

data: message添加到AJAX調用中。

+0

非常感謝。我也拿出了內容類型,它工作。再次感謝男士。 –

相關問題