Welcome

首页 / 软件开发 / Silverlight / 在Silverlight下使用WCF通信

在Silverlight下使用WCF通信2010-12-10 博客园 寻雨关于在SL下实现WCF通信的文章很多,因此我着重从我的实践上讲解,这样可 能易懂一些。

一、简单介绍下WCF

全名:Windows Communication Foundation 从Dotnet Framework 3.0开始出 现,WCF通信提供了用HTTP、TCP和IPC信道进行通信的多个方法。WCF提供的信道 使用DCOM进行通信。WCF适合于要独立于平台快速的发送消息。服务提供一个端 点,包括三个:合同Contract、绑定Binding和地址Endpoint。合同定义了服务 提供的操作(接口及实现),绑定控制协议和编码信息(如SL支持的 basicHttpBinding)、地址给出服务的位置(地址及目标名)。WCF支持 SOAP( Simple Object Access Protocol)、WSDL(Web Services Description Language)。

二、开始实现在SL下的WCF。

我们要做一个用户登陆的例子,具体流程为:SL调用WCF服务,服务中通过 ADO调用存储过程进行登陆验证,把结果返回到本地SL。

1、首先写一个SQL表:

CREATE TABLE UserInfoTable

UserName NVARCHAR(20) PRIMARY KEY,
UserPsw NVARCHAR(15)

2、写个简单的存储过程:

SQL登陆存储过程

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: 寻雨
-- Create date: 2010-4-1-12:45
-- Description: 验证用户登陆情况.登陆成功则返回0,登陆失败返回 1;
-- =============================================
CREATE PROCEDURE sp_Login
@UserNum NVARCHAR(20),
@UserPsw NVARCHAR (15)
AS
BEGIN
IF EXISTS(SELECT * FROM UserInfoTable WHERE UserNum=@UserNum AND UserPsw = @UserPsw)
RETURN 0;
RETURN 1;
END
GO