2012-03-31 37 views
1

看来WCF数据服务将在Web应用程序中创建一个很好的可扩展性。我正在测试并使用它,如here中所示。一起使用WCF数据服务和JQuery来支持CRUD

我知道我可以在其他基于.NET的应用程序(Silverlight,WebForm,...)中使用WCF数据服务的结果。

是否有任何框架可以直接在HTML中使用(使用JQuery,...)?例如,如果我想提交表单(创建,更新,删除),我应该写很多JS代码。但是,似乎可以更容易地定义一切。

this样品我应该写如下的块:

$("#btnAdd").click(function() { 
    // Convert the form into an object 
    var data = { Title: $("#title").val(), Director: $("#director").val() }; 

    // JSONify the data 
    var data = JSON.stringify(data); 

    // Post it 
    $.ajax({ 
     type: "POST", 
     contentType: "application/json; charset=utf-8", 
     url: "MovieService.svc/Movies", 
     data: data, 
     dataType: "json", 
     success: insertCallback 
    }); 
}); 

function insertCallback(result) { 
    // unwrap result 
    var newMovie = result["d"]; 

    // Show primary key 
    alert("Movie added with primary key " + newMovie.Id); 
} 

另一件事就是查询数据:WCF数据服务支持ODATA查询签名,这是伟大的,但有可以支持任何基于jQuery网格基于ODATA的分页,排序,过滤...?

所有网格支持JSON远程数据,但我想直接执行WCF数据服务的分页和排序。我的意思是网格根据用户操作创建URL并将其发送到WCF数据服务。

回答

2

“或者你甚至可以尝试http://jaydata.codeplex.com是建立在datajs的顶部,并提供加呈现在http://jaydata.org/examples

你上面的例子中一些非常基本的jqGrid例子看起来像这样与JayData

var movies = new MoviesContext(...); 

$('#btnAdd').click(function() { 
    var movie = new Movie({ Title: {} Director:{} }); 
    movies.add(movie); 
    movies.saveChanges(function() { 
    alert("Movie saved with id: " + movie.Id); 
    }) 
}); 
JavaScript语言的查询功能

还有一个couple of videos在线呈现使用

1

如果商业化产品是一种选择有

Infragistics Grid

Kendo UI Grid

两个基于jQuery。

+0

虽然检查许可证。 Kendo拥有GPL许可证,但不包括所有功能。我不确定关于infragistica的问题 – 2013-04-29 09:42:45