我有一个使用 .NET Remoting 建立与客户端的连接的服务器端代码。通常,我知道使用在客户端和服务器之间传递对象的接口是常态,并且是一种更安全的选择,但是对于我正在建立的简单通信,我认为不需要麻烦地定义必要的类和接口。
所以对于下面的代码,因为我只是向客户端返回一个字符串,我觉得没有必要,但有些人可能会说不然,所以我在这里发布我的问题。我应该遵循一般惯例还是坚持我正在做的事情?下面显示的代码也是建立远程服务器的正确方法吗?
(不要问我为什么用remoting而不是WCF。我老板专门要求remoting,我也不知道为什么。)
class HttpServer
{
[STAThread]
public static Boolean startService()
{
HttpChannel channel = new HttpChannel(80);
ChannelServices.RegisterChannel(channel);
Type ddcServerType = Type.GetType("DDCEngine.DDCServer");
RemotingConfiguration.RegisterWellKnownServiceType(ddcServerType, "DDCServer", WellKnownObjectMode.Singleton);
return true;
}
}
public class DDCServer : MarshalByRefObject
{
public string Hello()
{
string r = "hello";
return r;
}
[Description("Sets a new IO Point List in the DDC.")]
public string SetIOPointList(string host, DDCService.pointInformation[] pointList)
{
string result;
DDCService.LGeDDCClient ddc = new DDCService.LGeDDCClient("LGeDDC", host);
try
{
result = ddc.SetIOPoint(pointList);
}
catch (Exception ex)
{
result = ex.ToString();
}
return result;
}