2013-02-10 34 views
0

我有一个非常简单的视图模型JSON数据发布到SQL:如何使用AJAX后与淘汰赛

var ProjectViewModel = { 
     ProjectName: ko.observable().extend({ required: "" }), 
     ProjectDescription: ko.observable().extend({ required: "" }), 
     ProjectStartDate: ko.observable(), 
     ProjectEndDate: ko.observable() 
    }; 

我要救这个数据位于我的视图模型到我的SQL Server。 我在我的服务器端代码定义这个视图模型类:

public class Projects 
{ 
    public string ProjectName { get; set; } 
    public DateTime ProjectStartDate { get; set; } 
    public DateTime ProjectEndDate { get; set; } 
    public string ProjectDescription { get; set; } 

} 

我也有这个Web方法接收验证码:

[WebMethod] 
    public bool SaveProject(string[] JSONDATA) 
    { 
     TaskNinjaEntities entities = new TaskNinjaEntities(); 

     foreach (var item in JSONDATA) 
     { 
      Console.WriteLine("{0}", item); 
     } 

     return true;  

    } 

最后,我有一个不想要这个职位将数据发送到服务器:

function SaveMe() { 

     var data = ko.toJSON(ProjectViewModel); 
     $.post("CreateProject.aspx/SaveProject", data, function (returnedData) { 
     }); 
    } 

我得到这个职位从方法返回的数据没有,还增加了断点在服务器端代码,并且它不打它。我的URL是正确的,Viewmodel转换为JSON没有麻烦。

+3

你看过你的Web开发工具或Fiddler的Ne​​twork选项卡中POST的样子吗? – 2013-02-10 13:57:52

+0

+1使用Fiddler来了解幕后发生了什么 – Neil 2013-02-10 19:28:43

回答

0

使web方法变为静态。

[WebMethod] 
public static bool SaveProject(string[] JSONDATA) 
{ 
    TaskNinjaEntities entities = new TaskNinjaEntities(); 

    foreach (var item in JSONDATA) 
    { 
     Console.WriteLine("{0}", item); 
    } 

    return true;   

}