zoukankan      html  css  js  c++  java
  • WCF基础教程之开篇:创建、测试和调用WCF

      一转眼,又半个月没有更新博客了。说实话,最近确实是有点忙。不过即使再忙忙,也要抽空来学习一些东西。最近用WCF比较多,就来跟大家分享一下关于WCF的知识吧!为了让大家都能看懂,照顾一些没有学过WCF的原有,就从最基础的东西写起,希望大家可以体谅。

     一、创建一个简单的WCF服务

       打开VS2013,新建Silverlight项目,名字自己随便起,并创建Web站点,创建完项目后,我们在Web项目中添加一个WCF服务,名字输入UserService,为了简单起见,选择启用了Silverlight的WCF服务,如图:

    这样创建出来的WCF服务会自动在webconfig中生成配置信息,关于WCF的配置也不是几句话能说清楚的,到后面有时间再写几篇博客来说一下WCF吧。然后,我们修改Dowork方法,如图:

    然后,我们在UserService.cs上面点击鼠标右键,在浏览器中预览,如果没有错误的话,就会出现如下内容:

    到这里,一个WCF服务就建好了,下面来测试一下我们的WCF是否能正常工作,这里为大家推荐一款工具,WCFStorm,我们打开WCFStorm,如图:

    我们复制网页地址栏的地址,粘贴到URL栏中,然后点击右边的绿色箭头按钮,然后,我们会看到软件解析WCF服务,显示WCF中的方法,如图:

    然后我们选择一个方法,就会在右边的窗口中看到具体的参数和返回值,如图:

    这里没有参数,我们之间点击执行,会看到最右边的到了执行结果,如图:

    我们看到了,返回的结果为string类型,内容为Hello,world。

     二、在SilverLight中调用WCF服务

       上面我们创建了一个WCF服务,并用WCFStorm工具进行了测试。下面我们在SilverLight中进行调用,这里没做过Silverlight没关系,你会WPF自然就会Silverlight了,其实SilverLight就相当于跑在浏览器中的WPF。这里我们在SilverLight项目中,引用上面点击鼠标右键,添加服务应用,如图:

    点击发现按钮,就会出现我们刚刚的WCF服务地址,然后修改命名空间为UserServiceReference,点击确定即可。下面我们在MainPage.cs中添加代码,调用WCF方法,代码如下:

        public partial class MainPage : UserControl
        {
            public MainPage()
            {
                InitializeComponent();
                GetData();
            }
    
            public void GetData()
            {
                UserServiceReference.UserServiceClient client = new UserServiceReference.UserServiceClient();
                client.DoWorkCompleted += client_DoWorkCompleted;
                client.DoWorkAsync();
            }
    
            void client_DoWorkCompleted(object sender, UserServiceReference.DoWorkCompletedEventArgs e)
            {
                MessageBox.Show(e.Result.ToString());
            }
    
        }

     为了验证正常打开了,我们在页面中随便加点控件,这里我添加了一个按钮控件,运行项目后,会调用WCF服务,然后弹出一个消息框,显示Hello,world.

    今天就先说到这里吧,欢迎大家加入QQ交流群一起交流学习~~

     作者:雲霏霏

    QQ交流群:243633526

     博客地址:http://www.cnblogs.com/yunfeifei/

     声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论,与本人所在单位没有直接利益关系。非商业,未授权,贴子请以现状保留,转载时必须保留此段声明,且在文章页面明显位置给出原文连接。

    如果大家感觉我的博文对大家有帮助,请推荐支持一把,给我写作的动力。

  • 相关阅读:
    ionic入门教程第十二课-通用模块的分离$ionicModal
    ionic入门教程第十一课-简要说明ion-list、ion-item完成列表页ion-infinite-scroll上拉加载ion-refresher下拉刷新
    ionic入门教程第十课-接着说说ion-slide-box和它的注意事项、slide-tabs
    ionic入门教程第九课-开始动手做项目吧!ion-nav-bar、ion-nav-buttons、ion-tabs
    ionic入门教程第八课-(加更)从无到有说Ionic、画图说明MVC-U-S
    ionic入门教程第七课-简要说明几种界面之间的参数传递及优缺点
    ionic入门教程第六课-从服务器请求数据的几种方式$http.get()、jsonp()分别和callback、$q的组合
    Java 8 API Stream让List操作更便捷
    程序员常用linux命令ls,ll,cd,more,tail,rm,mv,find,vi,mdir,touch,ps,kill详解
    java数组插入排序代码详解
  • 原文地址:https://www.cnblogs.com/yunfeifei/p/4226881.html
Copyright © 2011-2022 走看看