在 Silverlight 中访问 Web 服务的类成员

Posted

技术标签:

【中文标题】在 Silverlight 中访问 Web 服务的类成员【英文标题】:accessing class members of a webservice in silverlight 【发布时间】:2010-11-06 15:49:31 【问题描述】:

我正在 Silverlight 中开发 RIA 应用程序,我的要求是我想在 Web 服务中创建一个类,并且该类将具有一些公共属性。我必须在 silverlight 应用程序中访问这些属性。我已经创建了没有问题的网络服务。问题是在 silverlight 中使用该类的属性我可以使用它的 web 方法但不是属性请帮助

【问题讨论】:

【参考方案1】:

没有看到一些代码示例,很难说,但如果我理解正确的话......

您需要在与您的 Web 服务相同的项目中创建一个具有您要访问的属性的类,然后将该类设置为 Web 服务的返回类型。该类必须使用 [Serializable] 标记进行标记,以便 Web 服务和 Silverlight 可以自动执行 XML 序列化。

例如在您的 Web 服务项目中,创建 MyClass.cs:

[Serializable]
public class MyClass

    public string SomeProperty  get; set; 
    public int SomeOtherProperty  get; set; 

然后在你的 web service.asmx 代码隐藏中:

[WebMethod]
public MyClass SomeWebServiceMethod(string someArg)

    MyClass returnValue = new MyClass();
    returnValue.SomeProperty = someArg;
    returnValue.SomeOtherProperty = 42;

    return returnValue;

【讨论】:

以上是关于在 Silverlight 中访问 Web 服务的类成员的主要内容,如果未能解决你的问题,请参考以下文章

Silverlight 启用 WCF 服务、Web 服务、ADO.NET 数据服务

Silverlight 财务数据

从 Silverlight 访问 Rally SOAP 服务

在 Silverlight 3 中请求客户端访问策略文件

调试 IIS Express Web 服务/silverlight 应用程序时出现安全错误

Silverlight:访问表单身份验证站点后面的 REST 服务