C# / Remoting / Object startet immer bei null

D12

Mitglied
Hallo Tutorials,

ich bastel grad an einer Remoting-Schnittstelle.

Aufgabe:
Ein Zähler soll festgelegte Zustände einer IO zählen und diese als Windows-Dienst für andere Anwendungen local und über Netzwerk bereithalten.

Lösungsansatz:
Zum Testen habe ich ein Object wie folgt erstellt:
Code:
using System;
namespace RemoteObject
{
    [Serializable()]
    public class counter : MarshalByRefObject
    {
        int ctr;
        public counter()
        {
            ctr = 0;
            Console.WriteLine("Test");
        }

        public void inc()
        {
            ctr++;
        }

        public int GetCtr()
        {
            return ctr;
        }

        public string GetHostLocation()
        {
            return AppDomain.CurrentDomain.FriendlyName;
        }
    }
}
Ein Server-Dienst bindet dieses Object als *.dll ein:
Code:
using System;
using System.Runtime.Remoting;
using RemoteObject;
namespace server
{
    class server
    {
        public static void Main(string[] args)
        {			
            RemotingConfiguration.Configure("server.exe.config");
            Console.WriteLine("Drücken Sie eine Taste um den Server runter zu fahren");
            Console.ReadLine();
            counter ctr = new counter();
            ctr.inc();
            ctr.inc();
            ctr.inc();
        }
    }
}
Und folgender Client soll die Daten des Zählers zeigen können:
Code:
using System;
using System.Runtime.Remoting;
using RemoteObject;

namespace RemoteClient
{
    class MainClass
    {					
        public static void Main(string[] args)
        {
            RemotingConfiguration.Configure("client.exe.config");
            counter ctr = new counter();
            Console.WriteLine(ctr.GetCtr());
            ctr.inc();
            Console.WriteLine(ctr.GetCtr());
        }
    }
}

Leider ist der Wert in counter.ctr immer 0, wenn der Client das erste mal drauf zugreift, wo liegt mein Denkfehler?

LG D12
 

Neue Beiträge

Zurück