silverlight   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

  [索引页] [源码下载] 稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接 作者: webabcd 介绍 Silverlight 3.0 通信的新增功能 二进制XML通信 - 与 WCF 服务间通信,可以使用二进制 XML 传递数据(提高传输性能)  本地连接 - 允许客户端的两个 Silverlight 程序之间直接进行通信(不用通过服务端) 在线DEMO
  [索引页]
[源码下载] @H_674_19@@H_674_19@
稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信,本地连接
@H_674_19@作者: webabcd @H_674_19@介绍 @H_674_19@Silverlight 3.0 通信的新增功能 @H_674_19@
  • 二进制XML通信 - 与 WCF 服务间通信,可以使用二进制 XML 传递数据(提高传输性能) 
  • 本地连接 - 允许客户端的两个 Silverlight 程序之间直接进行通信(不用通过服务端)
@H_674_19@在线DEMO @H_674_19@http://www.cnblogs.com/webabcd/archive/2009/08/04/1538238.html   @H_674_19@示例 @H_674_19@1、以二进制 XML 传递数据的演示 @H_674_19@服务端(WCF) @H_674_19@BinaryXmlservice.svc @H_674_19@

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Linq;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Runtime.serialization;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.serviceModel;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.serviceModel.Activation;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Collections.Generic;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Text;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接


稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

namespace  Silverlight30.service

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

{

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
/// <sumMary>

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
/// 一个简单的 WCF 服务

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
/// </sumMary>

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    [serviceContract]

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    [AspNetCompatibilityrequirements(requirementsMode 
= AspNetCompatibilityrequirementsMode.Allowed)]

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
public class BinaryXmlservice

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
{

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        [OperationContract]

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
public String Hello(String Name)

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
{

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
return "Hello: " + NAME;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        }

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    }

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

}

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

@H_674_19@Web.config

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

< system.serviceModel >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
< bindings >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
< customBinding >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
< binding  name ="customBinding0" >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

                
< binarymessageEncoding  />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

                
< httpTransport  />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
</ binding >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
</ customBinding >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
</ bindings >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
< serviceHosTingEnvironment  aspNetCompatibilityEnabled ="true"   />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
< behaviors >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
< serviceBehaviors >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
< behavior  name ="Silverlight30.service.binaryXmlserviceBehavior" >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

                
< serviceMetadata  httpGetEnabled ="true"   />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

                
< serviceDebug  includeExceptionDetailInFaults ="false"   />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
</ behavior >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
</ serviceBehaviors >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
</ behaviors >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
< services >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
< service  behaviorConfiguration ="Silverlight30.service.binaryXmlserviceBehavior"

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            NAME
="Silverlight30.service.binaryXmlservice" >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
< endpoint  address =""  binding ="customBinding"  bindingConfiguration ="customBinding0"

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

                contract
="Silverlight30.service.binaryXmlservice"   />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
< endpoint  address ="mex"  binding ="mexhttpBinding"  contract ="IMetadataExchange"   />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
</ service >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
</ services >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

</ system.serviceModel >
@H_674_19@客户端 @H_674_19@BinaryXml.xaml

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

< navigation:Page  x:Class ="Silverlight30.Communication.binaryXml"  

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

           xmlns
="http://scheR_130_11845@as.microsoft.com/winfx/2006/xaml/presentation"  

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

           xmlns:x
="http://scheR_130_11845@as.microsoft.com/winfx/2006/xaml"  

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

           xmlns:d
="http://scheR_130_11845@as.microsoft.com/expression/blend/2008"

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

           xmlns:mc
="http://scheR_130_11845@as.openxmlformats.org/markup-compatibility/2006"

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

           mc:Ignorable
="d"

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

           xmlns:navigation
="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

           d:DesignWidth
="640"  d:DesignHeight ="480"

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

           title
="BinaryXml Page" >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
< Grid  x:Name ="LayoutRoot" >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
< StackPanel  Orientation ="Horizontal"  Height ="30" >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
<!-- 支持二进制 XML 通信 -->

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
< Text@L_489_24@  x:Name ="txtName"  text ="webabcd"   />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
< Button  x:Name ="btnHelloConfig"  Content ="引用服务后(使用代理),通过配置的方式与服务端做二进制XML通信"  Click ="btnHelloConfig_Click"   />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
< Button  x:Name ="btnHelloCoding"  Content ="引用服务后(使用代理),通过编程的方式与服务端做二进制XML通信"  Click ="btnHelloCoding_Click"   />

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
</ StackPanel >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
</ Grid >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

</ navigation:Page >

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

@H_674_19@BinaryXml.xaml.cs

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Collections.Generic;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Linq;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Net;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Windows;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Windows.Controls;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Windows.Documents;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Windows.Input;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Windows.Media;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Windows.Media.Animation;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Windows.Shapes;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.Windows.Navigation;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接


稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  Silverlight30.binaryXmlservice;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.serviceModel.ChAnnels;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

using  System.serviceModel;

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接


稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

namespace  Silverlight30.Communication

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

{

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
public partial class BinaryXml : Page

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    
{

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
public BinaryXml()

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
{

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            initializeComponent();

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        }

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接


稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
void client_HelloCompleted(object sender, HelloCompletedEventArgs E)

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
{

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
if (e.Error == null)

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

                message@L_489_24@.Show(e.Result);

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
else

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

                message@L_489_24@.Show(e.Error.ToString());

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        }

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接


稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
private void btnHelloConfig_Click(object sender, routedEventArgs E)

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
{

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
// 通过配置文件serviceReferences.CLIENtConfig)的方式调用以二进制 XML 通信的 WCF 服务(需要使用代理)

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            BinaryXmlserviceClient client = new BinaryXmlserviceClient();

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            client.HelloCompleted 
+= new EventHandler<HelloCompletedEventArgs>(client_HelloCompleted);

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            client.HelloAsync(txtName.Text);

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        }

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接


稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        
private void btnHelloCoding_Click(object sender, routedEventArgs E)

@H_340_1489@

        
{

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            
// 通过编程的方式调用以二进制 XML 通信的 WCF 服务(需要使用代理)

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            BinarymessageEncodingBindingElement binary = new BinarymessageEncodingBindingElement();

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            httpTransportBindingElement transport 
= new httpTransportBindingElement();

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            CustomBinding binding 
= new CustomBinding(binary, transport);

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            EndpointAddress address 
= new EndpointAddress("http://localhost:8616/BinaryXmlservice.svc");

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            BinaryXmlserviceClient client 
= new BinaryXmlserviceClient(binding, address);

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            client.HelloCompleted 
+= new EventHandler<HelloCompletedEventArgs>(client_HelloCompleted);

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

            client.HelloAsync(txtName.Text);

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

        }

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

    }

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

}

稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接

大佬总结

以上是大佬教程为你收集整理的稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接全部内容,希望文章能够帮你解决稳扎稳打Silverlight(39) - 3.0通信之二进制XML通信, 本地连接所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。