Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 自定义业务对象:支持AJAX的WCF_C#_Ajax_Wcf_.net 3.5 - Fatal编程技术网

C# 自定义业务对象:支持AJAX的WCF

C# 自定义业务对象:支持AJAX的WCF,c#,ajax,wcf,.net-3.5,C#,Ajax,Wcf,.net 3.5,我可以在支持AJAX的WCF和我的asp.net页面之间传递自定义对象吗 我在网上搜索,但找不到任何例子。大多数显示字符串和整数等简单类型 我也不知道如何通过客户端的JavaScript填充自定义对象的属性 我们有一个浏览器插件,我们必须从web服务向该插件传递数据,我研究过,看起来支持AJAX的WCF是一个不错的选择 使用.net framework 3.5和VS 2008以及.net 3.5,您的最佳选择是哪一个接受纯旧XML(POX),您需要将XML发送到WCF服务 您还可以使用REST初

我可以在支持AJAX的WCF和我的asp.net页面之间传递自定义对象吗

我在网上搜索,但找不到任何例子。大多数显示字符串和整数等简单类型

我也不知道如何通过客户端的JavaScript填充自定义对象的属性

我们有一个浏览器插件,我们必须从web服务向该插件传递数据,我研究过,看起来支持AJAX的WCF是一个不错的选择


使用.net framework 3.5和VS 2008以及.net 3.5,您的最佳选择是哪一个接受纯旧XML(POX),您需要将XML发送到WCF服务

您还可以使用REST初学者工具包使用WCF REST。请看一下样品。这也支持JSON


如果您使用的是.NET4.0,那么启用JSON就是最好的选择。WCF REST with 4.0是另一种选择,尽管我真的不喜欢它。

您不能传递实际的自定义对象,但您当然可以通过您的服务将它们的序列化版本传递给您的页面、javascript等。基本上,您必须将复杂的自定义.NET类型的字段映射到用DataContract属性修饰的类。这些类是您的服务将返回的类型。DataContract修饰类将包含具有基本类型的字段,如字符串、整数等。WCF服务将这些字段序列化为XML或JSON

在客户端,jQuery将是您最好的朋友。我个人更喜欢JSON,因为这样更容易获得对象的属性,而不必解析一堆XML。因此,将服务设置为输出JSON

另外,为了使您的服务URL更易于阅读,请确保使用RESTful方法。这就像用WebGet属性装饰您的服务方法并提供一个模板一样简单。一旦你看到一些例子,你就会大吃一惊。注意:如果您遇到带有Method=“GET”的WebInvoke,只需使用WebGet即可……它更紧凑……不需要方法规范

当我开发WCF服务和使用它的ASP.NET应用程序时,这篇文章对我非常有用:

这里有另一个人问了和你一样的问题:


希望这有帮助!万岁

谢谢NoveJoe,所以我将在WCF中使用JSON序列化,并使用ScriptManager来使用它。酷!不太确定是否可以使用ScriptManager直接使用它。ScriptManager的作用是:管理脚本。但是,我绝对推荐使用jQuery来使用它。当然,您可以使用ScriptManager加载jQuery脚本。