Laden...

Forenbeiträge von hurricane Ingesamt 379 Beiträge

11.09.2006 - 14:18 Uhr

Hmm nach Splashscrrn habe ich schon gesucht. Habe nochmal rumprobiert und mein Fomular auf TopMost = true gesetzt. Jetzt klappt es zwar, aber der Dialog ist ja jetzt vor allen anderen Programmen, was ja wiederum doof ist wenn man sagen wir mal 3 Minuten warten muss und nebenbei etwas machen will, z.B. eine E-Mail lesen... dann ist der Dialog ständig im Vordergrund 🙁 er soll aber erst im Vordergrund sein wenn ich in der Taskbar das Hauptformular auswähle. Im Grunde genommen könnte der Bitte warten - Dialog in der Taskleiste angezeigt werden und das Hauptfomular müsste ausgeblendet werden, das müßte dann funktionieren, aber das möchste ich eigentlich nicht 🙁

11.09.2006 - 14:00 Uhr

Hallo Forum,

ich ärgere mich schon seit längerer Zeit mit einem "Bitte warten..." - Dialog rum. Ich weiß sowas ist nicht so toll, wird aber dringend benötigt, da zu Beginn viele Daten geladen werden und mit dem Dialog eine Fortschrittsanzeige ausgegeben wird.

Ich habe eine statische Klasse geschrieben die den Zugriff auf den Dialog (die Form) kapselt. Es existieren die Methoden Show, Update und Close.
Das ganze wurde in einen separaten Thread ausgelagert und funktioniert momentan auch gut. Lediglich wenn man den Bitte warten - Dialog nicht in der Taskbar anzeigen lässt dann gibt es dort ein Problem. Klicke ich ausserhalb des Programms komme ich nicht mehr auf mein Formular, weder auf das Hauptformular noch auf den Bitte warten - Dialog. Dies ist natürlich so überhaupt nicht gewollt. Hat jemand eine Ahnung wie man das beheben kann?

Momentan wird mein Formular wie folgt gestartet:


// Erzeugt einen neuen Thread und eine Instanz von WaitForm.
waitFormThread = new Thread(new ThreadStart(delegate()
{
           WaitDisplay.CreateInstance(
           parentSize,
           parentPos,
           showProgress,
           showInTaskbar);

           System.Windows.Forms.Application.Run(waitForm);
}));

// Nimmt Einstellungen für den Thread vor und startet diesen.
waitFormThread.IsBackground = true;
waitFormThread.SetApartmentState(ApartmentState.STA);
waitFormThread.Start();

Ich habe bereits versucht den Dialog modal aufzurufen, also statt

System.Windows.Forms.Application.Run(waitForm);

// habe ich folgendes ausprobiert:
waitForm.ShowDialog();

Ich hoffe das war jetzt einigermaßen verständlich... Der Dialog soll halt in entsprechendem Fall nicht in der Taskleiste angezeigt werden, aber trotzdem jederzeit aktiv sein...

ciao Anke

29.08.2006 - 09:24 Uhr

Hallo MS Master,

herbivore meinte das der Bootstrapper lediglich vor der Installation prüft ob das Framework installiert ist. Wenn es installiert ist, zw der Anwender es installiert hat, wird dein Programm installiert.
Deinstalliert der Anwender nun aber das Framework und du versuchst dein Programm zu starten, dann wird das nicht mehr durch den Bootstrapper abgefangen, falls du verstehst was ich meine... In diesem Fall würde es dann zu einer Exception kommen 😉

ciao Anke

29.08.2006 - 09:05 Uhr

Ruf doch bitte mal nach dem zuweisen deines Textes ein


StatusLabel.Refresh();

auf ...

ciao Anke

22.08.2006 - 14:04 Uhr

Ich habe eine Webanwendung geschrieben die eine ganze Menge Seiten enthält und die auch einige Klassenbibliotheken verwendet. Debugg ich nun meine Seite zum Beispiel mittels F5 dann dauert der ganze Spaß fast 2 Minuten, bis er dann meine Website anzeigt.
Es kommen überhaupt keine Meldungen im "Ausgabe"-Fenster. Erst wenn er fast fertig ist kommt die Meldung:

Website wird validiert

danach kommt

Verzeichnis /XXX/Pages/Errors/ wird erstellt.
Verzeichnis /XXX/Pages/Verwaltung/DataSource/ wird erstellt.
Verzeichnis /XXX/ wird erstellt.
Verzeichnis /XXX/Pages/Verwaltung/User/ wird erstellt.
Verzeichnis /XXX/Pages/Verwaltung/ wird erstellt.
Verzeichnis /XXX/Plugins/ wird erstellt.

Das kommt aber halt alles erst nach 1 1/2 - 2 Minuten, das ist doch nicht normal, kann man da irgendwas einstellen, damit das schneller geht?

Danke schonmal,
Anke

21.08.2006 - 08:22 Uhr

schau dir mal in den Eigenschften der TextBox "TestMode" an und stelle das auf MultiLine!

ciao Anke

17.08.2006 - 09:05 Uhr

Suche doch bitte mal im Forum, auf die schnelle habe ich folgendes gefunden: einfaches Datei drucken

Man kann einen String drucken, oder auch Linien, Kreise, Elipsen... Musst du halt mal rumprobieren was du genau brauchst, aber so hast du erstmal einen Anfang 😉

ciao Anke

16.08.2006 - 16:33 Uhr

Ja wenn du das sagst, ich kenne mich da nicht so aus. Ich habe nurmal so was gehört das der Forenbesitzer haftet wenn jemand z. B. in einem Sort-Forum sich "Adidas" nennt... Aber habe mich mit der Materie nie weiter beschäftigt...

16.08.2006 - 15:52 Uhr

So spontan weiß ich jetzt keine, aber ich dachte schonmal welche gesehen zu haben...

Bei den Avataren weiß ich nicht welche vom Forum bereits angeboten werden, z.B: Homer Simpson, Matrix oder ähnliches...

Also mein Avatar habe ich selber gemacht das ist mein Monster Truck 😁

ciao Anke

16.08.2006 - 15:44 Uhr

Wenn es um Markenrechtsverletzungen geht dürften ehrlich gesagt einige Usernamen und Avatare auch nicht bestehen, oder?

ciao Anke

16.08.2006 - 15:40 Uhr

Nee nicht wirklich. Reichen dir die WebCasts dort denn nicht?

ciao Anke

16.08.2006 - 15:40 Uhr

Warum nimmst du denn nicht ein generisches Dictionary, das ist doch wesentlich einfacher anzuwenden...


using System.Collections.Generic;

...

public Dictionary<string, string> CreateKeys(params string[] Keys)
{
  Dictionary<string, string> result = new Dictionary<string, string>();

  int iCount = 0;


  foreach (string Key in Keys)
  {
    result.Add(iCount, Key);
    iCount++;
  }
  return result;
} 

Ist jetzt frei Haus geschrieben und ungetestet 😉

Willst du nicht eigentlich einen Key und eine Value haben? Schau dir doch mal NINI an, die Klassnebibliothek ermöglicht einen einfachen Zugriff auf INI-Dateien... http://nini.sourceforge.net/manual.php

ciao Anke

11.08.2006 - 13:32 Uhr

Hmm ich binde immer nur die DLL ein, also ich gehe auf durchsuchen, dann gehe ich in den bin/debug-Ordner des einzubinden Projektes und wähle die DLL aus. Und bei den anderen Solutions funktioniert das so korrekt. Aber ich kann man versuchen das Projekt einzubinden...

ciao Anke

10.08.2006 - 13:30 Uhr

Hallöchen,

ich habe da ein kleines Problemchen.

Ich habe 2 Klassenbibliotheken. Nennen wir sie einmal A und B und eine Windows-Anwendung C!
Die Klassenbibliothek B enthält einen Verweis auf A. Erstelle ich die Bibliothek B wird die A autoamtisch ind Debug-Verzeichnis kopiert (ich debugge halt...). die Anwendung C enthält enthält nun den Verweis auf B jedoch nicht auf A, da dieses nicht benötigt wird.
Nun wird normalerweise immer A mit ins Debug-Verzeichnis der Anwendung kopiert wenn ich diese erstelle, weil ja B abhängig davon ist. Seit gestern geht das aber in einer meiner Solutions nicht mehr in der die 3 Projekte enthalten sind.
Hat jemand eine Idee an welcher Einstellung das leigen könnte? Bei anderen Projekten klappt das noch einwandfrei...

Ich finde es jetzt nervig immer die aktuelle DLL von A ins Debug-Verzeichnis kpieren zu müssen X(

Danke schonmal im vorraus,

Anke

10.08.2006 - 11:11 Uhr

Also ich finde die Idee auch super, ich fände es übersichtlicher wenn alle DLLs in einem Unter-Ordner wären, aber mir ist auch keine Lösung bekannt. Ich habe jedoch auch noch nie danach gescuht...

04.08.2006 - 09:27 Uhr

😄Ja danke habe es gerade selber gesehen, muss wohl durch Zufall darauf geklickt haben, ist ja in der Debug-Symbolleiste direkte neben dem "Ausführen bis Rücksprung" da muss ich wohl daneben geklickt haben X(

Danke Anke 😁

04.08.2006 - 09:18 Uhr

Ich habe seit neuestem ein merkwürdiges Phänomen. Ich deklariere mit einen INTEGER-Wert z.B. so:

int sampleValue = -1;

Wenn ich beim Debuggen nach dieser Zeile mit der Maus über die Variable gehe steht da nicht wie gewohnt "-1" sondern es steht dort "0xffffffff" bei einer 18 steht dort "0x00000012" usw. Ich kann mich nicht entsinnen irgendwas geändert zu haben ausser das ich einige Klassen in eine andere Klassenbibliothek ausgelagert habe.
Das ist ein sehr komisches Phänomen und ich kann mir das nicht so recht erklären X( Scheinbar hat er jetzt auch bei einem Vergleich Probleme...

ciao Anke

03.08.2006 - 15:25 Uhr

Versuche es einmal so


string databasePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "geburtstage.mdb");

dazu musst du System.IO noch einbinden...


using System.IO;


dbconn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                          "User ID=Admin;" +
                          "Data Source=" + databasePath + ";" +
                          "Mode=ReadWrite;" +
                          "Persist Security Info=False";

So sollte es gehen 😉 habe das jetzt allerdings frei Hand gemacht, also könnte sich eventuell ein kleiner Fehler eingeschlichen haben...

ciao Anke

03.08.2006 - 13:33 Uhr

Wenn die PictureBox immer gleich groß sein soll und das Bild immer verschieden groß sein kann und nicht gezerrt werden soll, musst du dir wohl oder übel einen Algorythmus überlegen um im korrekten Verhältnis die Bildgröße zu ändern.
Wahrscheinlich gibt es dazu Codebeispiele unter www.codeproject.com oder ähnlichem, aber wenn du ein Noob bist solltest du dich vielleicht selber dran versuchen. Ich habe das auch einmal gemacht und ich finde das ist eine sehr gute Übungsaufgabe 😉

Du musst zuerst ermitteln ob das Bild im Quer- oder Hochformat ist, also ob der X- oder der Y-Wert auf den der PictureBox gesetzt werden muss und welcher der beiden berechnet werden muss.

Sagen wir das Bild ist 100 x 500 (breite x höhe) die PictureBox 100 x 400. Die PictureBox ist also genauso breit wie das Bild aber nicht ganz so hoch. Du müßtest das Bild also in der Breite anpassen, also verkleinern. Nun musst du die proportionale neue Breite ermitteln, es muss IRGENDWAS x 400 rauskommen.

Die Berechnung musst du dir schon selber überlegen 😉

ciao Anke

03.08.2006 - 10:58 Uhr

Wenn du denn unbedingt eine Uhr einbinden willst, kannst du ja auch die Sekunden weg lassen und nur jede Minute den Timer ticken lassen 😉

ciao Anke

03.08.2006 - 10:56 Uhr

Was willst du denn eigentlich erreichen? Möchtest du das das Bild so groß ist wie deine PictureBox? Dann setz doch einfach die Eigenschaft "SizeMode" der PictureBox auf "StretchImage". Wenn du natürlich willst dass das Bild nicht gezerrt wird (enn ein anderes Format des Bildes besteht) dann musst du das Bild in der Höhe und der Breite anpassen, aber natürlich relativ zu den Ursprunsmaßen des Bildes 😉

ciao Anke

02.08.2006 - 15:36 Uhr

Hallo pSyCHo_SolDiEr,

versuche es mal so


DirectoryEntry user = /* Hier kommt dein Code hin...*/;

user.Invoke("ChangePassword", new object[]{oldpass,newpass});

ciao Anke

02.08.2006 - 11:22 Uhr

Ist eigentlich nicht weiter kompliziert das ganze... wenn du NUR das Login-Control benutzen möchtest und keine Rollen dann reicht es vollkommen aus die ValidateUser-Methode zu implementieren, da dort nur diese verwendet wird. Wenn du jedoch noch das Anlegen von Usern oder das Passwort ändern... implementieren möchtest, musst du auch für die entsprechenden Methoden Code hinterlegen.

ciao Anke

02.08.2006 - 10:40 Uhr

Hier ist ein Beispiel-Provider: http://msdn2.microsoft.com/en-us/library/6tc47t75.aspx

und hier noch was nützliches:

Der eigene Custom MembershipProvider in 10 Minuten
http://blog.thomasbandt.de/PermaLink,guid,a88a923d-77a6-45f3-b9f4-fd1ba38cd07c.aspx

ciao Anke

01.08.2006 - 13:09 Uhr

Ich finde das Programm nicht schlecht, aber...

es ist schade das ich nicht eine Farbe komplett transparent machen kann, sondern nur einzelne Pixel. Diese Funktion gab es im alten Microsoft Photo Editor von Windows XP und die war super. Mir ist kein anderes Programm mit dieser Funktion bekannt, aber ich mache auch nicht oft Fotobearbeitung.

Blöd finde ich auch, das wenn man auf Öffnen oder auf Neu geht, das dann das vorher geöffnete Bild weg ist, schöner wäre es wenn man dieses über den Menüpunkt "Fenster" noch aufrufen könnte, wie es auch bei anderen Programmen ist.

Sonst ist das Programm echt praktisch und man kann ne ganze Menge damit erreichen.

Leider lädt es wie bereits erwähnt recht lange und es ist ein klein wenig nervig, dass es ständig irgendwelche Updates gibt bei denen es teilweise sehr lange dauert bis sie installiert sind! An und für sich sind Updates und Patches ja positiv, da eine Veränderung stattfindet, aber so oft wie das ist, nervt das langsam X(

ciao Anke

31.07.2006 - 09:31 Uhr

Ich kann herbivore nur zustimmen, genauso würde ich RadioButtons und CheckBoxen auch anwenden 😉

ciao Anke

27.07.2006 - 15:56 Uhr

Wie versuchtst du denn die Weite zuöffnen?

Mit

http://localhost/projektName/default.aspx

oder so

C:\Projektverzeichnis\Default.aspx

Letzteres funktioniert nämlich nicht. Du musst das Projekt in deinem IIS veröffentlichen und dann über die obere Variante öffnen!

ciao Anke

19.07.2006 - 14:02 Uhr

Könnte es nicht auch sein, dass eine andere DLL eben diese DLL verwendet und automatisch die benötigte DLL zum Beispiel in einer anderen Version dort hineinkopiert (Projektabhängigkeit).
Sowas passiert bei mir auch manchmal, da kommt so eine Meldung 😉

ciao Anke

19.07.2006 - 14:00 Uhr

Hatte nochmal nachgeschaut, ich habe dann doch einen StreamWriter genommen, aber es spricht ja nichts dagegegen, das du das auch machst, oder?


// Erzeugt einen StreamWriter zum Erstellen der CSV-Datei.
System.IO.StreamWriter csvDoc = new System.IO.StreamWriter(fileName, false, System.Text.Encoding.GetEncoding("ISO-8859-1"));

Desweiteren habe ich damals die Trennung der einzelnen Spalten über ein Semikolon (😉 gehandhabt, denke aber das es mit TAB genauso gehen müßte...

ciao Anke

19.07.2006 - 09:13 Uhr

Hallo

Versuch doch bitte mal für den Memory-Stream folgende Codierung zu verwenden:


System.Text.Encoding.GetEncoding("ISO-8859-1")

Das hat bei mir einwandfrei geklappt 😉

ciao Anke

12.07.2006 - 09:20 Uhr

@Tott666: Du könntest statt einem UserControl natürlich auch einen Repeater oder eine DataList verwenden. Dort kannst du eine Tabelle verwenden die du nach deinen wünschen gestalten kannst und die Datenbindung ist auch ganz einfach.
Kannst es dir ja mal anschauen 😉

cioa Anke

03.07.2006 - 16:24 Uhr

Es gibt aber auch tatsächlich einige Bugs beim Drucken, zumindest gab es diese unter Framework 1.1.
Zum Beispiel mit den Printermartings: http://www.codeproject.com/csharp/DotNetprinterbounds.asp#xx1126523xx

ciao Anke

03.07.2006 - 15:11 Uhr

Schau doch mal bei www.codeproject.com nach, da gibt es einige Druck-Beispiele.

z. B: http://www.codeproject.com/vb/net/datagridprinter.asp

Du musst halt deine Daten (Tabelle) einfach nur "Zeichen" also jeweils einen Rahmen zeichenen und da drin Text. So kannst du dir deine Tabelle zusammenbasteln. Bedenke aber das die Seite irgendwann zu Ende ist. In diesem Fall musst du halt auf der nächsten Seite an der letzten Position weiterzeichenen... Ist etwas komplizierter, aber hinzubekommen 😉

ciao Anke

30.06.2006 - 10:22 Uhr

Da wirst du wohl eine RichtTextox nehmen müssen 😉

ciao Anke

30.06.2006 - 08:42 Uhr

Also ich habe sie mir abonniert. Wollte das eigentlich schon länger mal tun, aber das war jetzt ein guter Anlass 😉

28.06.2006 - 12:52 Uhr

Ich weiß nicht ob ich dich jetzt korrekt verstehe aber versuche es mal so:


namespace Option 
{
  public enum Default 
  {
      Option1,
      Option2
  }

  public enum Common
  {
      Option1,
      Option2
  }
} 

Gibst du jetzt z. B. in einer Form "Option" und dann einen Punkt ein, solltest du die 2 Enums sehen 😉

ciao Anke

27.06.2006 - 09:54 Uhr

Ich verwende auch Access 2003 und OleDb, dabei ist es egal ob man


select mitarbeiter.*
from mitarbeiter
where (personalnr = @personalnr)

oder


select mitarbeiter.*
from mitarbeiter
where (personalnr = ?)

angibt, wenn man den Parameter hinzufügt, sollte beides das gleiche Ziel haben. Es ist lediglich zu beachten das OleDb den Parameter @personalnr nicht mit @personalnr ersetzt, sondern die Parameter müssen der Collection in der korrekten Reihenfolge hinzugefügt werden!
Ich verwende deswegen "@personalnr" und nicht "?", da ich so auch einfach mal auf eine andere Datenbank umsteigen könnte 😉

ciao Anke

26.06.2006 - 16:21 Uhr

Du musst dem Kommando noch deinen Parameter übergeben.


string dql = "select mitarbeiter.* from mitarbeiter where (personalnr =  @personalnr)";
int id = 1;

OleDbCommand cmd = new OleDbCommand(dql, myConnection, myTransaction);
              
cmd.Parameters.Add("@personalnr", id);

ciao Anke

P.S.: Habe das jetzt "frei Hand" gemacht, kann also eventuell ein kleiner Fehler drin sein...

26.06.2006 - 14:55 Uhr

@purplestar:

Also ich wäre da schon mal eine 😉

26.06.2006 - 09:06 Uhr

Kann man sowas nicht auch mit WMI auslesen?

22.06.2006 - 09:31 Uhr

So ganz spontan würde ich sagen, nehme das SelectedItem des TreeView und suche in dessen Knoten nach dem Namen der in der ListView ausgewählt wurde, also z.B. "Ordner 1". Das agnze kannst du ja in einer Schleife vollführen, da die Namen ja eindeutig sind, sollte das klappen und relatif schnell gehen

ciao Anke

20.06.2006 - 09:35 Uhr

Hihi ich bin der erst rote (weibliche) Eintrag 🙂 Ich habe meinen Ort ausgewähl, aber der Punkt wurde einen Ort weiter eingetragen, habe es dann händisch angepasst 😉

14.06.2006 - 21:47 Uhr

Nein die Items werden aus der web.Sitemap-Datei geladen. Wenn ich die Items direkt im Code der Page setzt, also über <asp:MenuItem> dann klappt es. Wenn man mit der Maus über einen EIntrag also z.B. Home geht dann steht bei der Variante aus der web.sitemap-Datei http://localhost:port/projektname/index.aspx und wenn ich mit der Maus über einen durch <asp:MenuItem>-erzeugten EIntrag gehe steht dort: http://localhost:port/projektname/Session/index.aspx (oder so ähnlich, habe das Projekt jetzt nicht vor Augen da ich zu hause bin 😉 )

Dadurch das er scheinbar einen festen Link verwendet wird scheinbar die Session abgeschnitten und eine neue erzeugt.

Ich hoffe das war jetzt nicht zu unverständlich 🤔

ciao Anke

14.06.2006 - 15:37 Uhr

Ich habe eine Website mit einem Menu (asp:Menu) und einem TreeView (asp:TreeView). Ich verwende keine Cookies also wird die SessionID jeweils an die URL herangehangen.

Klicke ich ein Item im TreeView an reagiere ich auf diesen Klick und öffne mittels Response.Redirect(url) die entsprechende URL, z. B.


Response.Redirect("~/seite1.aspx");

Das Menu habe ich über eine Sitemap-Datei gelöst. Die Links sind ebenfalls mit einer Tilde (~) hinterlegt, z. B.:


<siteMapNode  title="Startseite" description="Startseite" url="~/index.aspx" />

Eine Navigation über die TreeView erfolgt problemlos, klicke ich jedoch auf einen Eintrag im Menu dann geht die Session verloren. Es wird scheinbar einfach eine neue Session erzeugt und alle bisherigen Einträge sind verloren.

Ich habe es jetzt mal mit einem Menu versucht, in dem ich feste Items angegeben habe, und dort geht NICHT die Session verloren. Woran kann das liegen, Kann man das verlieren der Session unterbinden? Ich konnte leider zu diesem Thema nichts finden X(


<asp:MenuItem Text="Index" Value="Index" NavigateUrl="~/index.aspx"></asp:MenuItem>

Vielen Dank schonmal fürs lesen

Anke

14.06.2006 - 10:29 Uhr

Du könntest Ajax verwenden, aber dafür müsstest du dich schon ein wenig in Javascript einarbeiten. So könntest du aber anfragen an den Server stellen und z. B. eine Suche durchführen ohne die Seite neu zu laden...

ciao Anke

14.06.2006 - 10:21 Uhr

Hallo derobiwan,

deine Exception scheint vom Webservice zu kommen, da es eine SoapException ist.

Verwendest du eine DLL die nicht als Verweis im WebService eingebunden ist? Die Meldung lautet ja: "Fehler beim Laden der Typbibliothek/DLL". Es kann auch sein dass eine von dir eingebunde DLL wiederum eine DLL verwendet, die jedoch nicht als Verweis beim WebService zugeordnet ist...

System.Web.Services.Protocols.SoapException was unhandled
Message="Server was unable to process request. ---> Exception has been thrown by the target of an invocation. ---> Fehler beim Laden der Typbibliothek/DLL. (Exception from HRESULT: 0x80029C4A (TYPE_E_CANTLOADLIBRARY))"
Source="System.Web.Services"

ciao Anke

13.06.2006 - 09:59 Uhr

Kannst du denn über Datei --> Neu --> WebSite keine Website anlegen? Siehst du diesen Menüpunkt nicht, oder wie?

ciao Anke

24.05.2006 - 13:31 Uhr

Ich würde es eher so machen 😉


foreach(Control c in this.Controls)
{
    TextBox tbx = c as TextBox;

    if (tbx != null)
    {
        tbx.Text = string.Empty;
    }
}

ciao Anke

23.05.2006 - 09:16 Uhr

Du kannst dir zum Beispiel eine <asp:table> anlegen und für diese im Code Zeilen und Spalten anlegen. Vielleicht kannst du für dein Problem aber auch einen Repeater oder ähnliches verwenden?

ciao Anke

17.05.2006 - 15:17 Uhr

Hallo,

ich brauche da mal Eure Hilfe. Ich habe einen MembershipProvider und einen RoleProvider implementiert. Von diesen Providern will bzw. muss ich auf eine Session (oder ähnliches) zugreifen.

In der Methode ValidateUser(string username, string password) des MembershipProviders geht dies auch über:


string xyz = (string)HttpContext.Current.Session["xyz"];

Ich brauche diesen Wert weil der Username bei mir nicht eindeutig ist, da ich den Provider noch um Filialen erweitert habe.
Auf der Startseite wähle ich halt eine Filiale und für je eine Filiale sind die User eindeutig! Wenn ich nun also die Login-Daten auf Gültigkeit prüfen wil. Dies wollte ich über Session lösen.
In der Methode ValidateUser kann ich noch auf die Session zugreifen, aber in der Methode GetRolesForUser(string username) im RoleProvider ist die Session im HttpContext.Current dann NULL.

Hat jemand eine Ahnung warum die Session auf NULL gesetzt wird, bzw. eine Idee wie ich das Problem umgehen kann?

Wie kann man sich sonst die Filiale merken um von den Providern aus darauf zuzugreifen? Diese muss sich ja für jeden Benutzer einzeln gemerkt werden, deswegen dachte ich an die Session...

Ich bin für jeden Vorschlag offen,

ciao hurricane