Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von MarsStein
Thema: Changes eines DataSet in einem DataGridView anzeigen?
Am im Forum: GUI: Windows-Forms

Ich bin mir nicht sicher, aber bielleicht wird der DataGridView nach der Zuweisung des neuen DataSet einfach nicht neu gezeichnet. Dann könnte ein dgv.Invalidate() helfen.

Thema: Geschicktes Ersetzen von Mustern
Am im Forum: Rund um die Programmierung

string result = String.Format("Das {0} ist ein {1} Test.",objectA,objectB);

Thema: Problem bei Array in einer Klasse
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Das ist immer dann so, wenn Du eine Variable nicht zusammen mit der Deklaration initialisieren kannst. Wenn Du also im gleichen Aufruf deklarierst und zuweist, geht das auch bei Arrays:


int[] test = new int[]{1,2,3,4};
Wenn die Zuweisung erst nach der Deklaration erfolgt, muss es in einer Methode geschehen.

Thema: Auf einem externen IIS debuggen
Am im Forum: Web-Technologien

Sowas geht. Dazu muss auf dem Server, auf dem der IIS läuft, der RemoteDebugger installiert werden und laufen, ist mit auf der VS2005 CD. Dann kannst Du über das Debug-Menü von Deinem PC aus Dich auf den Server verbinden. Mehr dazu unter "RemoteDebugger" im Google.

Oder direkt hier:http://msdn.microsoft.com/netframework/programming/64bit/remotedebugging/

Thema: Problem bei Array in einer Klasse
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hier nochmal Dein Code mit dem Konstruktor, bei mir läßt sich das so übersetzen und läuft auch!!

using System;
using System.Diagnostics;

//Klasse zum Ausgeben des Menüs
class ProgrammeMenue {

   string[,] Applikationen = new string[3,2];
   public ProgrammeMenue(){
    Applikationen[0,0] = "Editor";
    Applikationen[0,1] = "notepad.exe"; 
   }

  private int LetzteAuswahl = 0;
  
  public void Ausgeben()
  {
    Console.WriteLine("---------------------------------------------------------------------------");
    Console.WriteLine("Hallo Welt - Ein Menueprogramm fuer Systemapplikationen *lol*");
    Console.WriteLine("---------------------------------------------------------------------------\n");
    Console.WriteLine("Um eine Systemprogramm zu starten, geben Sie die entsprechende Zahl ein.\n");
    
    Console.WriteLine("<1> Explorer");
    Console.WriteLine("<2> Editor");
    Console.WriteLine("<3> Registrierungseditor");

    Console.Write("\n");

    Console.WriteLine("<0> Beenden");
    
    Console.Write("\n");
  }
  
  public void Eingeben()
  {
    Console.Write("--> Ihre Eingabe: ");
    string Eingabe = Console.ReadLine();
  }
  
  public void Auswaehlen(int AuswahlNr)
  {
    if (AuswahlNr == 0)
    {
      LetzteAuswahl = 0;
    } else {
    
    } 
  }
  
  public int GetLetzteAuswahl()
  {
    return LetzteAuswahl;
  }

    // Process.Start("regedit.exe");
}


public class Test01
{
  public static void Main()
  {
    // Hauptmenü deklarieren als Instanz der Klasse "Menue"
    ProgrammeMenue Hauptmenue = new ProgrammeMenue();
    // 
    bool Hauptmenue_schliessen = false;

    while (!Hauptmenue_schliessen) {
      Hauptmenue.Ausgeben();
      Hauptmenue.Eingeben();
      if (Hauptmenue.GetLetzteAuswahl() == 0)
      {
        Hauptmenue_schliessen = true;
      }
    }

  }
}

Thema: Problem bei Array in einer Klasse
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Versuch mal einen Konstruktor für Deine Hauptmenüklasse zu schreiben und das Array erst dort mit Werten zu initialisieren.

class Hauptmenue
{
  private string[,] Applikationen = new string[3,2];

  Hauptmenue(){
    Applikationen[0,0] = "Editor";
    Applikationen[0,1] = "notepad.exe";  
  }
/* usw. */
}

Thema: WebService-Lastverteilung
Am im Forum: Web-Technologien

lock(var){...} ist eine Blockanweisung, wenn die geschweifte Klammer geschlossen wird, ist die Variable wieder frei. Ein "unlock" gibts meines Wissens nicht.

Thema: Klassenstruktur
Am im Forum: Rund um die Programmierung

Ich würde das so machen:
Das Interface IRotatableAds


public AdType Type
{
  get;
}

void BuildNewAd(RotateAds myControl);
Die Implementierung von BuildNewAd erfolgt dann in den DataSet-Klassen und kann die Funktion von GetNewAd() mit der zum jeweiligen DataSet passenden Formatierung der übergebenen Control kombinieren.
Die DataSets müssen in der Implementierung der Property "Type" den jeweils passenden Typ zurückliefern.

Dann kannst Du eine Liste aller DataSets erstellen (evtl. static), und zwar als IRotatableAds, also wie folgt:


public static List<IRotatableAds> adsList;
Dieser Liste fügst Du die DataSets durch AdsList.Add(dataSet) an.

Dann kannst Du schließlich in deiner Control folgendes tun:


foreach(IRotatableAds ads in adsList)
{
  if(ads.Type == adType)
  {
    ads.BuildNewAd(this)
  }
}

Thema: Seite Speichern
Am im Forum: Web-Technologien

In der Global.asax kannst du einen Handler für das Ereignis HttpApplication.PostRequestHandlerExecute schreiben. Google hierzu mal nach "global.asax" und "PostRequestHandlerExecute". Da müsstest du dann irgendwie auf die gerenderte Page zugreifen können - notfalls über den Response-Stream.

Thema: WebService-Lastverteilung
Am im Forum: Web-Technologien

Wenn das alles auf einem IIS läuft, kannst du so vorgehen, wie ich oben gepostet habe. Der asp.net-Prozess stellt dem Webservice die Appliation-Collection zur Verfügung. So eine Collection gibts einmal für jeden Webservice im IIS. Da der asp-Prozess weiterlebt und nicht beendet wird ausser wenn Du den IIS beendest, ist diese Collection dann quasi für alle Threads statisch.

Andersrum gesagt: Es werden zwar 2 Instanzen des Webservice erdtellt, diese laufen aber im selben Prozesss. Dies ist der ASP-Prozess (aspwp.exe), der weiterlebt un damit Applikationsdaten für den gesamten Webservice halten kann.

Thema: WebService-Lastverteilung
Am im Forum: Web-Technologien

Wenns mehrere Server gibt, kann man einen zentralen Webservice zur Verfügung stellen, der nichts anderes als mein Beispiel von oben tut und dann "selector" per WebMethod zurückgibt. An den können sich dann die verteilten Server wenden

Thema: WebService-Lastverteilung
Am im Forum: Web-Technologien

Wie meinst Du das mit der neuen Instanz?
Wenn es sich um einen ASP.NET Webservice handelt, laufen die alle unter dem aspnet-workerprozess, und der wird nicht beendet. Dann reicht dir ein statischer Member in deiner Webservice-Klasse oder ein Eintrag in der Application[]-Collection. Im Konstruktor kannst Du dann diesen dann durch lock() threadsafe für weitere Auswertungen puffern.

class MyWebService: System.Web.Services.WebService
{
  int selector = 0;
  MyWebService()
  {
     if(Application["Selector"]==null)
     {
        Application["Selector"] = selector;
     }
     else
     {
        lock(Application["Selector"])
        {
          selector = (int)Application["Selector"];
          selector  ++;
          Application["Selector"] = selector;
        }
     }
  }
  /*
  WebMethods
  */
}

Oder hab ich Dich jetzt völlig falsch verstanden?