IIS部署Remoting总结

1.在IIS里新建一个网站,命名为test,路径指向 e:\test;

2.在 e:\test下创建目录bin;

3.把Remoting远程对象的Project设置为类库,编译为DLL文件,然后复制到e:\test\bin;

4.如果IIS是64位平台,而DLL是x86平台,需要修改IIS的应用程序池为x86平台:
1)选择IIS的“应用程序池”,选中test;
2)选择“高级设置”;
3)设置”启用32位应用程序“为true;

4)修改.Net Framework版本为v4.0

注意.Net Framework的版本,应用程序池一定要与类库的版本一致,否则会报告“输入流是无效的二进制格式”错误。

 

5.在e:\test下创建web.config文件,并配置remoting参数。


1)在web.xml里注册远程对象。如果没有注册远程对象就调用它,Remoting会报告错误“输入流是无效的二进制格式。开始内容(以字节为单位)是:“。
<wellknown type="Framework.HandlerBase.SessionHandler,Framework.HandlerBase" objectUri="SessionHandler.soap" mode="SingleCall" />

2)在web.xml里注册自定义的SinkProvider。
<provider type="Framework.Server.ChannelSinkProvider, Framework.Server"/>

3)配置formatter,指定使用二进制序列化。Remoting对soap默认使用XML序列化,但XML序列化不支持泛型,因此必须使用二进制序列化。
<formatter ref="binary" typeFilterLevel="Full" />

 

6.客户端的TcpChannel改为HttpChannel,否则会报告“System.ArgumentNullException ... DispatchChannelSink ... requestMsg“的错误。

posted @   深圳大漠  阅读(800)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
历史上的今天:
2013-09-16 快速删除有外键关联的数据库的数据
点击右上角即可分享
微信分享提示