.NET Remoting 体系结构 之 在 ASP.NET 中驻留远程服务器
迄今为止,所有服务器示例都是运行在自驻留(self-hosted)的.NET 服务器上。自驻留的服务器必 须手动启动。.NET Remoting 服务器也可以在许多其他的应用程序类型中启动。在 Windows 服务中, 服务器可以在系统启动时自动启动,此外,进程可以通过系统账户的证书运行。
ASP.NET 对.NET Remoting 服务器有一种特殊支持。ASP.NET 可用于自动启动远程服务器。与 可执行的驻留应用程序相反,驻留在 ASP.NET 中的.NET Remoting 在配置时使用不同的文件,但语 法相同。
为了使用 IIS(Internet Information Server,Internet 信息服务器)和ASP.NET 中的基础结构,必须 创建一个派生自 System.MarshalByRefObject 类的类,该类具有默认的构造函数。不再需要以前为服 务器创建和注册信道所使用的代码;这些代码所做的工作可以由 ASP.NET 运行库完成。此外,也必 须在 Web 服务器上创建一个虚拟目录,该目录映射到保存 Web.config 配置文件的目录上。远程类的 程序集必须驻留在子目录 bin 中。
可以使用 IIS MMC 配置 Web 服务器上的虚拟目录。选择 Default Web Site 并打开 Action 菜单, 就可以创建一个新的虚拟目录。
Web 服务器上的 Web.config 配置文件必须放在虚拟网站的主目录中。使用默认的 IIS 配置,将 使用的信道会侦听端口 80:
<configuration> <system.runtime.remoting> <application> <service> <wellknown mode="SingleCall" type="Wrox.ProCSharp.Remoting.Hello, RemoteHello" objectUri="HelloService.soap" /> </service> </application> </system.runtime.remoting> </configuration>
现在,客户端使用下面的配置文件就可以连接到远程对象上。在这里必须指定远程对象的 URL, 这个 URL 包括 Web 服务器 localhost、Web 应用程序的名称 RemoteHello(该名称在创建虚拟网站时 指定)、远程对象 HelloService.soap(在文件 Web.config 中定义)的URI。因为端口号 80 是HTTP 协议 的默认端口,所以不必指定它。不指定<channels>部分表示使用 machine.config 配置文件中延迟加载 的HTTP 信道:
<configuration>
<system.runtime.remoting>
<application>
<client url="http:/localhost/RemoteHello">
<wellknown type="Wrox.ProCSharp.Remoting.Hello, RemoteHello" url="http://localhost/RemoteHello/HelloService.soap" />
</client>
</application>
</system.runtime.remoting>
</configuration>
.NET Remoting 体系结构 之 在 ASP.NET 中驻留远程服务器的更多相关文章
- 【转】【SQL SERVER】怎样处理作业中的远程服务器错误(42000)
(SQL SERVER)怎样处理作业中的远程服务器错误(42000) 问: 1.我创建了一个链接服务器. 2.在两台服务器之间创建了新的SQL用户. 3.编写了访问链接服务器的SQL语句,执行成功. ...
- ASP.NET MVC 播放远程服务器上的MP3文件
问题: 做需求遇到需要播放远程服务器上的MP3音频,使用FTP去获取文件.但是一般都是在页面 <audio> 的src 中直接写文件地址来播放音频.实在不想做临时文件,折腾了半天终于可以通 ...
- 从本机IIS中管理 远程服务器 IIS
有时候,一般情况下,我们对服务器上 IIS 上的管理局限于 使用远程桌面:现在介绍一种,通过 本机 管理管理远程IIS 的方法! 1. 服务器端设置: 服务器管理器 ==>增加角色和功能向导= ...
- SQL中添加远程服务器连接
EXEC sp_addlinkedserver 'Testserver','','SQLOLEDB','192.168.1.221' EXEC sp_addlinkedsrvlogin 'Testse ...
- XShell+Xmanager实现在XShell中显示远程服务器的图形界面
http://blog.csdn.net/linghao00/article/details/8768435
- asp.net中获取当前url的方法
HttpContext.Current.Request.Url.ToString() 并不可靠. 如果当前URL为 http://localhost/search.aspx?user=http://c ...
- ASP.NET 中的 Async/Await 简介
本文转载自MSDN 作者:Stephen Cleary 原文地址:https://msdn.microsoft.com/en-us/magazine/dn802603.aspx 大多数有关 async ...
- ASP.NET中进行消息处理(MSMQ) 三(转)
在本文的前两篇文章里对MSMQ的相关知识点进行了介绍,很多阅读过这前两篇文章的朋友都曾问到过这样一些问题: 1.如何把MSMQ应用到实际的项目中去呢? 2.可不可以介绍一个实际的应用实例? 3. ...
- ASP.NET中进行消息处理(MSMQ) 三
在本文的前两篇文章里对MSMQ的相关知识点进行了介绍,很多阅读过这前两篇文章的朋友都曾问到过这样一些问题: 1.如何把MSMQ应用到实际的项目中去呢? 2.可不可以介绍一个实际的应用实例? 3. ...
随机推荐
- Redis JedisPool
获取连接池,通常连接池为单例,这里使用 双端检测机制保证只有一个实例 public class JedisPoolUtil { private static volatile JedisPool je ...
- Akka框架使用注意点
1.mailbox Akka的每个actor默认有一个mailbox,按照FIFO顺序单线程处理.在抛出异常导致父actor根据设置的监管策略执行重启或恢复操作时,会从触发异常的消息的后续消息开始处理 ...
- 打电话,发短信,发邮件,app跳转
1.打电话 - (IBAction)callPhone1:(id)sender { NSURL *url = [NSURL URLWithString:@"tel://18500441739 ...
- Day1-python基础1
本次学习内容 Python介绍 发展史 版本选择 install 第一个程序hello world 字符编码及注释 变量 用户输入 表达式if...else 一.Python介绍 1)Python由来 ...
- [UML]UML系列——类图class的关联关系(聚合、组合)
关联的概念 关联用来表示两个或多个类的对象之间的结构关系,它在代码中表现为一个类以属性的形式包含对另一个类的一个或多个对象的应用. 程序演示:关联关系(code/assocation) 假设:一个公司 ...
- Sql Server 日期格式化函数
Sql Server 中一个非常强大的日期格式化函数Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONVE ...
- UI第十二节
- (void)viewDidLoad { [super viewDidLoad]; UIButton *btn = [UIButton buttonWithType:UIButt ...
- 公众平台关注用户达到5万即可开通流量主功能 可以推广APP应用
今天微信公众平台发布发布了一些更新,公众帐号的关注用户达到5万,即可开通流量主功能,之前的是要求10万粉丝,这是一个微信开放的信号.广告主可推广苹果商店应用或腾讯开放平台应用.新增卡片和图文广告规格. ...
- PHP 获取中国时间,即上海时区时间
/** * 获取中国时间,即上海时区时间 * @param <type> $format * @return <type> */ function getChinaTime($ ...
- Git 常用命令合集
$ git init 建立git仓库(一般都是在github上新建好,直接克隆到本地) $ git clone **.git 克隆git仓库 $ git add -A ...