当你创建一个web服务
时,你返回的数据类型有哪些呢?也许你猜到了.net为我们提供的基础类型,但如果我们想返回一个CLASS对象呢,在Silverlight客户端如何正确处理这个类呢?不错,肯定有解决的办法,我们在服务中创建新数据类型时需要遵循一下几个原则
(1)你的新Class一定要表明DataContract属性;
(2)你的Class一定要标明Public标志;
(3)每一个属性必须标明DataMember,标明是可序列化;
(4)你的Class需要有一个零参数的构造函数;
下面我们看一个示例代码:
[DataContract]
public class Customer
{
private string firstName;
private string lastName;
public Customer()
{
}
[DataMember]
public string FirstName
{
get { return firstName; }
set { firstName = value; }
}
[DataMember]
public string LastName
{
get { return lastName; }
set { lastName = value; }
}
}
现在我们在服务中使用它
[OperationContract]
public Customer GetCustomer(int customerID)
{
Customer newCustomer = new Customer();
if (customerID == 1)
{
newCustomer.FirstName = "diz";
newCustomer.LastName = "song";
return newCustomer;
}
else
{
newCustomer.FirstName = "admin";
newCustomer.LastName = "song";
return newCustomer;
}
}
OK,现在我们在Silverlight客户端中使用它,更新服务引用后(右键服务引用,你就可以看到),看下面的代码:
proxy.GetCustomerCompleted += new EventHandler<GetCustomerCompletedEventArgs>(proxy_GetCustomerCompleted);
proxy.GetCustomerAsync(2);
void proxy_GetCustomerCompleted(object sender, GetCustomerCompletedEventArgs e)
{
try
{
label1.Content = e.Result.FirstName + e.Result.LastName;
}
catch (Exception err)
{
label1.Content = "获取服务数据失败";
}
finally
{
busy.IsBusy = false;
}
}
编译程序,看看效果。
分享到:
相关推荐
总之,创建一个类似Web QQ的Silverlight聊天应用是一项涉及多个技术领域的工作,包括UI设计、前端交互、后端服务集成以及网络通信。通过合理利用Silverlight提供的组件和API,我们可以构建出功能丰富、用户友好的...
4. **Chart**: 数据可视化工具,用于展示各种类型的图表,如柱状图、折线图、饼图等。 5. **Button Styles**: 提供多种样式的按钮,增强UI设计的多样性。 6. **DatePicker and TimePicker**: 分别用于选择日期和时间...
2. **集成开发环境**:安装完成后,Silverlight 4 SDK 将自动集成到Visual Studio 2010 SP1中,你可以在新项目中选择Silverlight 4 类型的应用模板。 3. **开发应用**:使用新增的控件、类库和API开始开发...
除了基本的数据类型外,WCF 服务还支持传递复杂类型,即用户定义的类型。这部分将介绍如何构建这样的服务以及如何在 Silverlight 应用程序中使用这些复杂类型。 #### 2.1 构建 Web 服务 构建一个能够处理复杂类型...
在开发过程中,利用OutlookBar for Silverlight 4可以快速构建具有专业外观和高效导航的Web应用。通过深入研究提供的源代码,开发者不仅可以学习到如何实现这样的组件,还能了解到如何优化Silverlight应用的性能和...
综上所述,Silverlight 4 API是一套强大的开发工具集,它涵盖了从用户界面设计到数据交互的多个层面,为开发者提供了构建现代Web应用程序所需的一切。尽管随着时间的推移,Silverlight逐渐被HTML5和JavaScript框架...
DataTable支持大部分.net基础数据类型(如: 文本, 数字, 日期, 布尔, 字节数组等), 支持数据绑定。因此, 可用于运行时动态构建二维表结构的数据集合。数据集合无需转换可以直接作为DataGrid的ItemsSource。 4、...
1. **多媒体流媒体**:Silverlight被广泛用于在线视频服务,如Netflix早期使用Silverlight为其流媒体服务提供技术支持。 2. **企业级应用**:由于其强大的.NET支持,Silverlight也适用于构建复杂的企业级应用,如...
- **网络通信**:讨论如何使用Silverlight进行网络请求,包括HTTP请求和Web服务调用。 - **多媒体支持**:介绍如何在Silverlight应用中集成音频和视频,包括流媒体的支持。 4. **跨平台部署与优化**: - **多...
- **实时数据展示**:通过Silverlight 4 提供的API和服务实现实时数据流的获取和展示,为用户提供即时的信息反馈。 - **安全性考虑**:考虑到数据敏感性,还需要采取适当的加密措施和访问控制策略来保护数据安全。 ...
这需要C++ DLL是COM兼容的,并且在Silverlight中使用 marshaling 技术来处理数据类型转换,确保托管代码和非托管代码之间的数据交换正确无误。 接下来,创建一个Silverlight项目,设置所需的引用,包括对C++ COM...
【Silverlight数据驱动模式】是微软开发的一种技术,主要用于创建丰富的、交互式的Web应用程序,它在WPF(Windows Presentation Foundation)的基础上进行了优化,更适合Web环境。这个模式的核心思想是将数据作为...
可以实现在Web端无需事先手工编写或自动创建任何程序代码和数据实体类的情况下, 便可在Silverlight端对Web端数据库进行增加、删除、修改、查询等数据操作。此外, 还支持访问数据库的存储过程(StoredProcdures)、视图...
Silverlight是由微软开发的一种强大的Web应用程序框架,旨在为Web开发者提供跨浏览器、跨平台的丰富互联网应用程序(RIA)解决方案。Silverlight 2版本引入了许多新特性,其中数据绑定是其核心功能之一,它极大地...
6. **服务端与客户端的通信**:ArcGIS Server与Silverlight客户端可以通过SOAP或RESTful接口进行通信,获取和操作地图服务数据。 7. **银光(Silverlight)优势**:Silverlight作为.NET Framework的一部分,提供了...
Microsoft Silverlight 是一个跨浏览器、跨平台的 .NET Framework 实现,用于获得 Web 的媒体体验和丰富交互式应用程序。以下各节说明如何使用 Silverlight 生成应用程序: Silverlight 的 .NET Framework 类库 ...
Silverlight是一种由微软开发的富互联网应用程序...这个练习对于理解RIA开发和.NET服务集成至关重要,同时演示了如何传递基本数据类型,如字符串。在实际项目中,这种基础可以扩展到处理更复杂的业务逻辑和数据交换。
MIME类型是HTTP协议中的一个重要组成部分,用于定义网络上传输的数据类型。对于Silverlight应用来说,正确的MIME类型设置至关重要: - 确认服务器上已正确设置了`.xap`、`.xaml`和`.xbap`文件的MIME类型。 - 如果...