Передача объекта по сети.
От: Аноним  
Дата: 17.03.05 10:01
Оценка:
Не подскажите как выполнить передачу обьекта по сети. У меня есть один примерчик но он ни в какую не хочет работать. Точнее сервер не работает.Вот как всё в нем выглядит:

using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Http;

namespace Сервер_проги
{

public class Calculator:MarshalByRefObject,ICalc
{
public Calculator()
{
Console.WriteLine("Calculator constructor");
}
public double Add(double x,double y)
{
Console.WriteLine("Add{0}+{1}",x,y);
return x+y;
}
public double Sub(double x,double y)
{
Console.WriteLine("Sub{0}-{1}",x,y);
return x-y;
}
public double Mult(double x,double y)
{
Console.WriteLine("Mult{0}*{1}",x,y);
return x*y;
}
public double Div(double x,double y)
{
Console.WriteLine("Div{0}/{1}",x,y);
return x/y;
}
}
public class ServerTest
{


public static void Main()
{
HttpChannel chan=new HttpChannel(65100);
ChannelServices.RegisterChannel(chan);
Type calcType=Type.GetType("Сервер_проги.Calculator");
RemotingConfiguration.RegisterWellKnownServiceType
(calcType,"theEndPoint",WellKnownObjectMode.Singleton);
Console.WriteLine("Press [enter] to exit...");
Console.ReadLine();
}
}
}
Программа запускается, но через секунд 10 останавливается с ошибкой:
An unhandled exception of type 'System.ArgumentNullException' occurred in mscorlib.dll
Additional information: Value cannot be null.
Мне кажется что нулю равна переменная calcType, потому что при пошаговом выполнении перед выполнением строки RemotingConfiguration.... calcType имеет <undefined value>(не определённую величину), но почему? Интересно что если написать Type calcType1=Type.GetType("Сервер_проги.ServerTest"), то calcType1 не будет иметь нулевого значения, спрашивается почему не получается узнать тип "Сервер_проги.Calculator"



данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re: Передача объекта по сети.
От: Diablo_m  
Дата: 08.08.05 11:51
Оценка:
У меня такая же проблема. Только если не использовать шифрование и сжатие то все нормально, если использовать — где то через минуту вылетает
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.