惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Last Week in AI
Last Week in AI
阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
MongoDB | Blog
MongoDB | Blog
云风的 BLOG
云风的 BLOG
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
J
Java Code Geeks
WordPress大学
WordPress大学
T
The Blog of Author Tim Ferriss
V
Visual Studio Blog
小众软件
小众软件
Microsoft Azure Blog
Microsoft Azure Blog
博客园_首页
IT之家
IT之家
Vercel News
Vercel News
C
Check Point Blog
Google DeepMind News
Google DeepMind News
月光博客
月光博客
D
DataBreaches.Net
酷 壳 – CoolShell
酷 壳 – CoolShell
美团技术团队
Y
Y Combinator Blog
Hugging Face - Blog
Hugging Face - Blog

博客园 - 风语者

一些杂项资料 今天遇到的一个奇怪的vb.net问题 asp.net页面请求实现过程 中国人的成功十要 《.net组件开发第2版》下载 IE7.0(beta)可以下载了 Google Talk中的小秘密 - 风语者 - 博客园 今天的microsoft,明天的google C# 代码标准 .NET2.0版(七)Security 编码指导方针 C# 代码标准 .NET2.0版(五)序列化Serialization 编码指导方针 C# 代码标准 .NET2.0版(四)多线程编码指导方针 C# 代码标准 .NET2.0版(三)项目设置和结构 C# 代码标准 .NET2.0版(二)编码惯例和约定 C# 代码标准 .NET2.0版(一)命名和风格 一些很少用到但还不错的Html功能 - 风语者 - 博客园 常见程序进程(转载) Google提供的好工具 关于Response.ContentType 合并数据记录的问题
C# 代码标准 .NET2.0版(六)Remoting 编码指导方针
风语者 · 2005-08-22 · via 博客园 - 风语者

1.Prefer administrative configuration to programmatic configuration.

2.Always implement IDisposable on single-call objects.

3.Always prefer a TCP channel and a binary format when using remoting, unless a firewall is present.

4.Always provide a null lease for a singleton object:

public class MySingleton : MarshalByRefObject
{
   public override object InitializeLifetimeService( )
   {
      return null;
   }
}

5.Always provide a sponsor for a client-activated object. The sponsor should return the initial lease time.

6.Always unregister the sponsor on client application shutdown.

7.Always put remote objects in class libraries.

8.Avoid using SoapSuds.exe.

9.Avoid hosting in IIS.

10.Avoid using uni-directional channels.

11.Always load a remoting configuration file in Main( ), even if the file is empty and the application does not use remoting:

static void Main( )
{
   RemotingConfigurationEx.Configure( );
   /* Rest of Main( )  */
}

12.Avoid using Activator.GetObject( ) and Activator.CreateInstance( ) for remote object activation. Use new instead.

13.Always register port 0 on the client side, to allow callbacks.

14.Always elevate type filtering to Full on both client and host, to allow callbacks.