[原创] 分布式系统框架搭建 PartTwo-WebService

开发WebService 我还是采用.net 框架,java 版本的的webservice 后续送上!
Web Services 例程
1. 直接使用 Visual Studio 新建项目向导 Web->ASP.net Web 服务应用程序 . 自定义服务名称。并添加数据库 Northwind.mdb 到项目中如下图,

直接打开Service.asmx 文件
添加如下测试方法
[WebMethod]
    public string HelloWorld(String Name) {
        return Name;
    }
    [WebMethod]
    public int Add(int a, int b)
    {
        int sum;
        sum = a + b;
        return sum;
    }
    [WebMethod]
    public DataSet GetDataSet(String SQLStr)
    {
        DataSet ReturnDs = new DataSet();
        String ConnStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source= D:/My Documents/Visual Studio 2008/WebSites/WebService/App_Data/Northwind.mdb;";
           //这里注意WebService 部署的时候数据库路径最好是 使用 Server.MapPath() 取一下。我这里就绝对路径上了!
        using (OleDbDataAdapter OleAp = new OleDbDataAdapter(SQLStr, ConnStr))
        {
            OleAp.Fill(ReturnDs);
            return ReturnDs;
        }
}
  
F5 执行一下 出现如下图,正常。


    OK ! Web Service 搞好,来写调用实例
一直保持 WebService 的运行状态,通知区域的小型IIS 一直运行。
先使用 wsdl.exe 生成类 , 工具位于 C:/Program Files/Microsoft SDKs/Windows/v6.0A/bin 视自己 .net 框架安装目录而定到 CMD 下面输入
wsdl.exe /language:CS /n:WebServiceAgentClass http://localhost:2387/WebService/Service.asmx?wsdl
上面 Http:// 哪里就是 webservice debug 时候的路径加上了 ?wsdl (端口 有可能会改变)
此时产生了一个cs 文件Service.cs OK! 我们的代理类已经搞定,去Visual Studio 里面创建项目WebServerClassLibrary 以及WebServerClient
1.     WebServerClassLibrary 项目(类库)
a)       添加刚才生成Service.cs 并编译,有可能名称空间不一致更改后编译成功!日后我们直接调用这个类库的方法就可以调用WebService 的方法啦!
2.     WebServerClient 调用实例
a)       引用WebServerClassLibrary 项目
界面为




代码如下
public WebsClient()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
          WebServerClassLibrary.Service S1 = new Service();
     this.dataGridView1.DataSource = S1.GetDataSet("Select * From Customers").Tables[0];
}

点击 button1 后
出现




数据获取成功
速度上来说,感觉Remoting 比 WebService 快一点
OK ! Remoting 实例做出来了,WebService 实例做出来!很简单是不是,微软就是这种把东西做的很好入手,但是深入的话还需要很多时间,其中remoting 其中包含很多对象属性方法。有什么用,还是很复杂呢~ .net WebService 也是,代码量来说WebService 胜出!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值