星空网 > 软件开发 > ASP.net

Remoting应用实例 + 代码

下面给出了Remoting的小实例,主要功能是将客户端的数据写入到服务端。

分析图:

Remoting应用实例 + 代码

程序代码为2个控制台应用程序(1个客户端,1个服务器端)和1个类库,如下所示。

Remoting应用实例 + 代码Remoting应用实例 + 代码

using RemotingObjects;using System;using System.Collections.Generic;using System.Linq;using System.Runtime.Remoting.Channels;using System.Runtime.Remoting.Channels.Tcp;using System.Text;namespace RemotingClient{  class Program  {    static void Main(string[] args)    {      TcpChannel channel = new TcpChannel();      ChannelServices.RegisterChannel(channel, false);      WriteFileToLocal wfobj = (WriteFileToLocal)Activator.GetObject(typeof(RemotingObjects.Process), "tcp://localhost:8085/RemotingWriteFileToLocalService");      if (wfobj == null)      {        Console.WriteLine("Couldn't create Remoting Object 'WriteFileToLocal'.");      }      else      {        Console.WriteLine("Please enter content:");        String name = Console.ReadLine();        try        {          wfobj.write(name);        }        catch (System.Net.Sockets.SocketException e)        {          Console.WriteLine(e.ToString());        }      }      Console.Read();    }  }}

RemotingClient

服务端代码:

Remoting应用实例 + 代码Remoting应用实例 + 代码
using System;using System.Collections.Generic;using System.Linq;using System.Runtime.Remoting;using System.Runtime.Remoting.Channels;using System.Runtime.Remoting.Channels.Tcp;using System.Text;namespace RemotingServer{  class Program  {    static void Main(string[] args)    {      TcpChannel channel = new TcpChannel(8085);      ChannelServices.RegisterChannel(channel, false);      RemotingConfiguration.RegisterWellKnownServiceType(typeof(RemotingObjects.Process), "RemotingWriteFileToLocalService", WellKnownObjectMode.SingleCall);      Console.WriteLine("Server:Press Enter key to exit");      Console.ReadLine();    }  }}

RemotingServer

类库代码:

Remoting应用实例 + 代码Remoting应用实例 + 代码
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;namespace RemotingObjects{  public interface WriteFileToLocal  {    void write(string content);  }  public class Process : MarshalByRefObject, WriteFileToLocal  {    public Process()    {      Console.WriteLine("Write Starting...");    }    /// <summary>    /// 写文件    /// </summary>    /// <param name="content">写入文件的内容</param>    public void write(string content)    {      using (StreamWriter sw = new StreamWriter(@"D:\remoting.txt", true, Encoding.Default))      {        sw.Write(content + "\r\n");      }    }  }}

RemotingObjects

 




原标题:Remoting应用实例 + 代码

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

亚马逊下架超百万件产品,原因竟是......:https://www.ikjzd.com/articles/116989
Shopee广告功能优化 推出三月广告金扶持政策:https://www.ikjzd.com/articles/116990
你不容错过的亚马逊市场—日本站全方位解析:https://www.ikjzd.com/articles/116991
速卖通上半年创业规划:https://www.ikjzd.com/articles/116992
eBay:受疫情影响,更新SpeedPAK直邮物流管理政策:https://www.ikjzd.com/articles/116993
干货|这应该是全网最全的亚马逊站外引流开启指南:https://www.ikjzd.com/articles/116994
300万箱!ONE将投入250亿美元,用于扩大运力:https://www.kjdsnews.com/a/1836472.html
航运系统阻断,美港口无限期关闭!:https://www.kjdsnews.com/a/1836473.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流