1

我在客户端 JavaScript 中有一个游戏对象,在发送到服务器之前看起来像这样:

客户端

一秒钟后它是服务器端,请注意所有属性都已填充,并且问题列表中填充了正确数量的问题,但是每个问题的属性为空,而在客户端它们具有正确的值。

服务器端

这是模型的代码:

public class Game
{
    public Game()
    {
        Questions = new List<Question>(5);
    }
    public int GameID { get; set; }
    public Guid UserID { get; set; }
    public Guid CurrentGameID { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public IEnumerable<Question> Questions { get; set; }
}

public class Question
{
    public int ID { get; set; }
    public string Text { get; set; }
    public IEnumerable<int> Answers { get; set; }
    public int SelectedAnswer { get; set; }
}

这是我将对象发送回服务器的方式:

// Send completed game back to server
$.post("Games/CompleteGame", currentGame, function (results)
{
    // display results to user
}
4

1 回答 1

1

基于 Ek0nomik 询问内容类型的评论,我重写了我的 ajax 调用以将 contentType 设置为 json:

$.ajax(
    {
        url: "Games/CompleteGame",
        type: "POST",
        data: JSON.stringify(currentGame),
        contentType: "application/json",
        success: function (results)
        {
            // show results to user...
        }

事实证明,这就是让它工作所需的一切。

于 2013-04-12T21:48:53.783 回答