tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
413
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Augus Augus ist offline Grünschnabel
    Registriert seit
    Nov 2007
    Beiträge
    4
    Hallo zusammen!

    Wir bearbeiten zur Zeit an der FH Projekt.
    Bei diesem Projekt gibt es eine Klasse, die verschiedene Objekte beinhaltet. Diese Objekte sind alle in einer Klasse zusammengefasst.
    Und diese Klasse will ich einmal in der Anwendung anlegen und immer wieder darin neue Instanzen von den Objekten erzeugen.

    Das Ganze habe ich schon mit Cache
    Code :
    1
    
    cache = new Cach();
    versucht leider konnte ich dann immer nur auf eine Liste von einem Objekte zugreifen.

    Bsp.:
    Klasse: Auto
    Objekte: Räder, Türen, Motoren...

    Was ich machen will?
    Einen Cache anlegen, der die ganze Klasse Auto(einmalig) enthält und darin sind alle Objekte einmal vorhanden. Diese Objekte sind jeweils in einer Liste in der Klasse Auto und diese haben dann immer Eigenschaften.

    Was mir gelungen ist?
    Ich konnte den Cache bisher immer nur mit einem bestimmten Objekt füllen, aber in mehreren Instanzen. Leider konnte ich aber nicht die ganze Klasse 'Auto' ins Cache legen und später wieder auf die Inhalte zugreifen. Es folgte immer eine Ausnahme, dass die Referenz NULL ist.

    Meine Frage?
    Gibt es in etwa so eine Möglichkeit den Cache so aussehen zu lassen:
    Code :
    1
    
    cache["Auto"]["Türen"].Add("roteTür")


    Oder gibt es womöglich eine bessere Möglichkeit Daten zur Laufzeit zu speichern ohne es in einer Datei oder in einer Datenbank zu speichern?
    Geändert von Augus (12.12.10 um 12:52 Uhr)
     

  2. #2
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    Nichts für ungut, ich denke, dass du dir noch nicht ganz sicher bist, was eine Klasse und was ein Objekt ist

    Zu deinem Problem:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    
    public class Container
    {
       public Container()
       {
            Cars = new List<Car>();
       }
       public List<Car> Cars { get; set; }
    }
     
    public class Car
    {
       public Car()
       {
           Doors = new List<Door>();
       }
       public List<Door> Doors { get; set; }
    }
     
    public class Door
    {
        public string Color { get; set; }
        public Size Size { get; set; }
    }
    (Wobei es für Farben auch eine entsprechende Enumeration Colors gibt, die verwendet werden kann)

    So in die Richtung sollte der Aufbau sein, dann hast du auch immer alles initiatilisiert und kannst darauf zugreifen. Im schlimmsten Fall sind deine Listen leer und enthalten kein Element.
     

  3. #3
    Augus Augus ist offline Grünschnabel
    Registriert seit
    Nov 2007
    Beiträge
    4
    Danke für die Antwort. Ja, ich hab zu komliziert gedacht.
    Die naheliegenste Lösung ist ja eine Instanz der Klasse anzulegen. In dem Fall in einer global.asax.cs Datei und schon hab ich ja meine Speicherlösung.
     

Ähnliche Themen

  1. C# schlechte Datenbank laufzeit
    Von xlon im Forum .NET Café
    Antworten: 20
    Letzter Beitrag: 03.09.10, 09:01
  2. C# schlechte Datenbank laufzeit
    Von xlon im Forum .NET Datenverwaltung
    Antworten: 1
    Letzter Beitrag: 20.08.10, 15:05
  3. StackTrace zur Laufzeit Erzeugen ohne Exception
    Von Thomas Darimont im Forum .NET Café
    Antworten: 0
    Letzter Beitrag: 19.12.06, 17:18
  4. JavaScript Probleme zur Laufzeit ohne Fehlermeldung
    Von Freakzilla im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 25.06.05, 19:50
  5. Datenbank zur Laufzeit erstellen?
    Von billyblue im Forum .NET Archiv
    Antworten: 1
    Letzter Beitrag: 19.03.04, 15:08

Stichworte