gpt4 book ai didi

.net - Silverlight、EDM/LINQ 和 WCF Web 服务 - 如何将集合传递给 Silverlight

转载 作者:行者123 更新时间:2023-12-01 04:41:13 27 4
gpt4 key购买 nike

将答案(集合)传回 Silverlight 的正确方法是什么?

例如,如果我有一个位于 Northwind 示例数据库之上的服务应用程序,并且该服务有一个名为 GetEmployees() 的方法。传递回 Silverlight 的正确“事物”是什么?一个可查询的?

然后考虑到 Silverlight 端的异步/结果转换内容,我也转换什么?一个可查询的?

更新:
是不是声明 [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] 允许远程客户端从服务中查看结构(实体)?我不知道有 Silverlight-friendly-WCF 类这样的东西,所以那不是我开始的。一旦我在解决方案中添加了该属性,没有它我就无法再使用该服务。所以我无法测试我之前看到的内容。对 AspNetCompatibilityRequirementsMode.Allowed 背后的作用有什么想法吗?

更新 2:
请参阅对 Terry Donaghe 的评论。

最佳答案

您只是尝试传递基本类型的数组吗?除非您创建 DataContracts,否则 WCF 不知道您的任何对象是什么。当您尝试传递 List WCF 时,实际上只是传递了一个数组,因为它旨在尝试 可互操作。

定义一个 DataContract包含有关员工(或其他)的信息。尽量保持相对简单。当您创建代理(可能使用 svcutil 或添加服务引用)时,VS2008 将自动神奇地在您的客户端定义 DataContracts,然后您可以像使用常规对象一样使用它们。

我更喜欢手动使用 WCF - 我创建自己的契约(Contract)、实现和代理 dll。就反序列化和其他方面而言,这样做给了我很大的灵 active 。有关更多信息,请参阅以下两个引用资料:

WCF the Manual Way, the Right Way

Manual WCF - an Extension

另请参阅 WCF 圣经的第 3 章,Juval Lowy 的“Programming WCF Services”。它充满了关于 DataContracts 的信息。

关于.net - Silverlight、EDM/LINQ 和 WCF Web 服务 - 如何将集合传递给 Silverlight,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/566686/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com