Laden...
E
Benutzerbeschreibung

Forenbeiträge von empty.at Ingesamt 151 Beiträge

23.02.2011 - 15:55 Uhr

*beim lesen*

Danke schon mal!

23.02.2011 - 15:49 Uhr

@MrSparkle: Leider bin ich auf WP7 unterwegs und da gibt es die nicht =(

@JAck30lena: WP7 mit Silverlight(WPF) Databinding... Ich hab im VM eine Liste von Strings die ans Dropdown hänge... Dh im Setter von meinem Property das am SelectedItem des Controls hängt, bekomm ich nur einen String.
Wenn du sagt, dass es vom Design her schlecht ist glaub ich dir gerne... wie würdest du es machen?

LG

edit: TryParse wäre genau was ich brauche... ich kennen exacten value da ich im resx die keys mit [EnumName]_[EnumWert] anlege und nur durch die resx values durchsuche die zu dem passenden enum gehören.

23.02.2011 - 15:24 Uhr

Hi!

Ich habe folgenden Fall:
Im GUI gibt es ein paar Listen die auf Enums basieren.
Diese Enums haben eine Textrepresentation die in einem Resx liegt.
Deshalb bin ich dabei einen Konverter zu schreiben der mit Enums und diese Strings übersetzt, in beide Richtungen. Enum zu Text ist nicht schwer und funktioniert auch schon wunderbar. Probleme hab ich jetzt dabei, mir aus dem Text ein Enum zu erstellen...

        public static T ConvertStringToEnum<T>(string stringRepresentation)
        {
            Type enumType = typeof(T);

            T ret;

            if (!enumType.IsEnum)
            {
                throw new ArgumentException("Type '" + enumType.FullName + "' is not an enum");
            }

            var resFields = Resources.Enums.ResourceManager.GetType().GetFields().Where(field => field.Name.StartsWith(enumType.Name));

            foreach (var resField in resFields)
            {
                string resString = Resources.Enums.ResourceManager.GetString(resField.Name);
                if (resString == stringRepresentation)
                {
// TODO: Enum-Wert zurück geben.                    
                }
            }

            throw new ArgumentException("No value in the given enum " + enumType.FullName + " has the representatin " + stringRepresentation);
        }

Wie ihr seht will ich nicht einfach nur dumme Konverter die im Switch durchgehen für jedes einzelne Enum sonder das ganze möglichst generisch...

Jedenfalls komme ich jetzt beim TODO nicht weiter... wie erstelle ich mir, wenn ich das Enumfeld kenne jetzt das entsprechende "Objekt" ???

LG & danke für jede Hilfe!!!
Dominik

edit:
Im resx liegen die string-Representationen unter den Keys "[EnumName]_[EnumWert]". Dh im resFields stehen alle Felder die zum enum T gehören.

13.12.2010 - 14:14 Uhr

Und selbst beantwortet...

Der Code ist einwandfrei (nach bestem Wissen und Gewissen 😛)... die URL hat nicht gestimmt -.-

13.12.2010 - 10:33 Uhr

Hi!

Ich habe eine kleine Doku bekommen um sein REST-Service an zu sprechen.
Ganz kurz: Es geht darum News zu laden und auch Neue erstellen zu können.

Laden funktioniert wunderbar nur wenn ich ein neues Item erstellen will bekomme ich immer "The remote server returned an error: NotFound."

Die Doku:
ERZEUGEN (POST):

curl -i -X POST -H "Content-Type:application/html" -H "Accept:application/json" -d [{&quot;serNo&quot;:7,&quot;subtitle&quot;:&quot;7&quot;,&quot;text&quot;:&quot;77&quot;,&quot;title&quot;:&quot;7&quot;,&quot;version&quot;:1}] http://localhost:8080/DemoApp/newsitems/jsonArray

Wichtig:

* Angabe des Content Type!
* Angabe der [] Klammern, das ist nämlich eine Collection!
* Weglassen der ID im Json String - Mit Id kommt zwar kein Fehler, es wird die Transaktion aber geRollbacked!

Mein Code:


        public void SaveNewsItem()
        {
//der Helper funktioniert, zu mindest liefert er mir den gewünschten String wie in der Doku verlangt
            string serializedObject = NewsItemJsonSerializeHelper.SerializeNewsItem(_newsItem.GetNewsItem());

            WebClient client = new WebClient();
            client.Headers[HttpRequestHeader.Accept] = "application/json";
            client.Headers[HttpRequestHeader.ContentType] = "application/html";

            client.UploadStringCompleted += new UploadStringCompletedEventHandler(AsyncServiceCompleted);
            client.UploadStringAsync(new Uri(AddServiceUrl, UriKind.Absolute), "POST", serializedObject);
        }

        private void AsyncServiceCompleted(object sender, UploadStringCompletedEventArgs args)
        {
            if (args.Error == null && args.Result != null)
            {
                //TODO: ...
            }
        }

Habt ihr eine Idee woran das liegen kann?
Ich bin am Ende mit meinem Latein -.-

Danke & LG

28.04.2010 - 08:48 Uhr

Ein Kollege hat es ausprobiert und es scheint nicht zu funktioniere.

Ich nehme an das es SOAP da irgendwie eine Art Versionnummer mit überträgt...

Aber trotzdem danke!!!

LG

27.04.2010 - 11:48 Uhr

Servus!

Eine Frage aus aktuellem Anlass:
Angenommen ich habe ein WebService mit diversen Methoden, nenn wir sie A(), B(), C().
Jetzt ändere ich das Service und füge D() hinzu und geben C() einen Parameter C(par1).
Dann erstelle ich mir eine kleine Applikation und referenziere die aktuelle Version. In dieser Applikation verwende ich nur A() und B(), die sind ja in beiden Versionen gleich und unverändert.

Was passiert wenn ich nun die alte ServiceVersion hoste und meine Applikation mit der Referenz auf die neue Version auf diese alte Version zeigen lasse (über den Pfad in der .config).

Kurz:
Was passiert wenn ich eine Referenz auf ein Service in einem Projekt habe, dann aber auf eine ältere Version des Services zugreife in dem aber alle Methoden und Typen die ich verwende gleich sind?

LG
empty

14.04.2010 - 13:54 Uhr

Danke für die Tipps!

LG

13.04.2010 - 12:24 Uhr

Servus!

Kennt jemand einen guten HTML-Editor den man in eine WebSite einbaun kann?
Im Prinzip braucht er nur die üblichen Dinge wie Farben, Schriftgrößen,... zu können.

Was ev. noch wichtig wäre ist, dass man den Editor erweitern und anpassen kann.

LG
Dominik

19.03.2010 - 10:34 Uhr

Weiß es niemand oder ist das Problem unverständlich bzw die Frage dumm?

Werde aus den Infos die ich im Netz finde nicht wirklich schlau...

17.03.2010 - 13:55 Uhr

Hi!

Ich habe eine LDAP-Suche bei der ich bis jetzt immer "ReferralChasingOption.All" verwendet habe. Einfach um sicher zu sein, keine Ergebnise zu verlieren da so ja auch Referenzen ausgewertet werden.
Bei einem AD mit ~5000 Usern habe ich allerdings Suchzeiten von knapp 40sec.

Deswegen die Frage:
Für welche AD-Strukturen macht das eigentlich Sinn?
Habe es jetzt mit "ReferralChasingOption.None" getestet und komme auf Bruchteile der Suchzeit. Kann es sein, dass ich da etwas verliere? Wenn ja was und warum?
Aufgefallen wäre es mir zwar noch nicht aber...

Kurz zur Erklärung was die Suche liefern soll:
Es wird eine Domäne angegeben und die Suche soll alle (objectClass=user) Objekte in der Domäne zurückgeben. Danach verwende ich [userprincipalname], [samaccountname], [givenName], [sn],

16.03.2010 - 08:46 Uhr

Funktioniert!

Vielen Dank für den Link.
Hab zwar gesucht aber nachdem ich nicht einmal genau wusste wonach eigentlich... daher auch nichts gefunden =(

Nochmals danke!

LG

15.03.2010 - 16:33 Uhr

Hi!

Ich habe eine Seite auf der ein Grid ist, und ein paar DropDownListen in denen man Filter für die Daten im Grid setzen kann.
Jetzt hab ich die Anforderung mir die Einstellungen der Filter in der Session zu merken da der Benutzer diese auch nach verlassen der Seite wieder so vorfinden soll. Funktioniert auch alles wunderbar, nur nicht wenn man mit dem "Back"-Button des Browsers auf die Seite zurück kommt.
Da dürfte er nur die im Cache liegende Seite laden, dh mit den Einstellungen des letzten Aufrufs... nicht den geänderten.

Gibt es eine Möglichkeit den Browser dazu zu bringen immer einen neuen Request an den Server zu schicken und nicht die Seite aus dem Chache zu laden?

LG & Danke!
empty

08.03.2010 - 16:59 Uhr

Hallo MarsStein!

Ich hab es jetzt so umgebaut, dass ich ein Textfeld verwende.
Die Listeneinträge sind eh nur Informationen (was ist ausgewählt...), da genügt ein "readOnly" Textfeld mit Zeilenumbrüchen auch =)

Aber danke und entschuldige die späte Antort!

LG

03.03.2010 - 12:33 Uhr

Servus!

Die Frage gehört vielleicht eher in ein HTML-Forum...

Problem ist folgendes:
Ich habe eine <INPUT ... /> welchem clientseitig (JS) options hinzugefügt werden. Jetzt kann es passieren, dass der Text zu lange ist und nicht ganz angezeigt wird.
Kennt jemand einen Weg einen horizontalen Scrollbar anzuzeigen oder das Control nach dem hinzufügen neu zu rendern?

LG

PS: das INPUT ist anfangs leer und hat deswegen style="width:200px"... aus optischen gründen.

edit: die Größenänderung ist hinfällig, das control muss immer eine bestimmte länge haben und den inhalt irgendwie scrollbar anzeigen können...

01.03.2010 - 13:02 Uhr

<asp:Hiddenfield runat="server" id="hidWHATEVER">

Ohne runat="server" kennt der Server das Control nicht und du kannst sowieso nicht darauf zugreifen!

Allerdings bin ich mir jetzt nicht sicher ob, wenn du mit JS den Value änderst, dieser Wert auch beim PostBack mitgeschickt wird... habe ich noch nie versucht.

LG

19.02.2010 - 11:58 Uhr

Vielleicht auch noch wichtig zu erwähnen:

Was du nicht machen kannst wäre


ClassB instanz = new ClassA();

Da gibt dir der Compiler einen Fehler. Was auch logisch ist da ClassA ja nicht alle Methoden, Properties,... von ClassB unterstützt!

Außerdem, außgehend von Femaref's code:
Wenn du


ClassA instanz = new ClassB();
instanz.Update();

ausführst, werden beide Methoden (sowohl von ClassA als auch von ClassB) ausgeführt. Grund dafür ist base.Update()! Mit "base" kann man auf die "Vater"-Klasse zugreifen. Wenn du soetwas verhindern möchtest muss die Methode im Vater "abstract" sein.

LG

19.02.2010 - 11:29 Uhr

Verstehe ich das richtig?
Du hast ein UserControl auf dem du, wie auch immer, eine auswahl triffst, was du statt dem UserControl angezeigt werden soll. Jetzt brauchst du eine Funktion die dir das


parentsplit.Panel2.Controls.Clear();
parentsplit.Panel2.Controls.Add(UC_Licht); 

abnimmt.

Wenn ja wieso nicht einfach sowas:
Auf der Form mit dem Splitter diese Methode


public void changePanelContent(Control content)
{
    content.Dock = DockStyle.Fill; //ist Dock eine Control Eigenschaft? Wenn nicht dann musst du es vor dem Aufruf setzen, kommt weiter unten
    [SplitContainerName].Panel2.Controls.Clear();
    [SplitContainerName].Panel2.Controls.Add(control);
}

//und der Aufruf:
form.changePanelContent(new UC_1Licht()); 
//bzw wenn du Dock setzen musst
form.changePanelContent(new UC_1Licht() { Dock = DockStyle.Fill });

LG

17.02.2010 - 09:23 Uhr

Kurze Erklärung warum das so ist:

Das liegt daran, das du die Pfade der Bilder auf der MasterPage wahrscheinlich ohne Pfad angegeben hast. Damit geht er davon aus, dass sie im selben Verzeichniss wie die aufrufende Seite liegen.

Die MasterPage selbst wird so aber nicht aufgerufen...
Wenn du deine Member/NewPassword.aspx anwählst (was eine ContentPage von deinem Master sein müsste), weiß diese Page das sie einen Master hat und es werden die beiden Pages in einem HTML-Dokument zusammengefügt. Die aufrufende Seite bleibt aber Member/NewPassword.aspx und damit sucht er auch in deren Verzeichniss nach den Bildern. Deswegen geht es auch wenn die aufgerufene Seite im selben Verzeichniss wie die MasterPage liegt, da findet er sie ja (Aber ausgehen von der Page nicht vom Master!)

Schau dir die Links von Peter an, der weiß was er tut;)
("" bzw "../" sind vermutlich was du suchst. ~ stellt das Verzeichniss auf Root und dann kannst du in die Unterordner gehen: "/images/meinBild.png". Mit "../" gehst du eine Ebene nach oben und kannst dann weiter navigieren.)

Hoffe das hilft ein wenig das Problem zu verstehen.

15.02.2010 - 11:07 Uhr

Hast du nur diesen string oder willst du die URL einer Seite auswerten?

Wenn es die URL ist kannst du

HttpContext.Current.Request.QueryString

verwenden.

Da bekommst du ein Dictionary mit key/value aus allen Parametern in der URL.

Z.B.:
var value = HttpContext.Current.Request.QueryString["test"];
//value ist "value_value"

29.01.2010 - 11:16 Uhr

Hallo!

Angeblich gibt es im AD ein Attribut mit dem man einen User aktivieren bwz deaktivieren kann.
Was ich in google dazu gefunden habe ist [userAccountControl] das bei 514 inaktiv und 512 aktiv signalisieren soll...
Laut unserem Admin ist das aber etwas anderes...
Kenn jemand von euch ein passendes Attribut?

LG

PS: Gerade noch etwas mit 66048 = Enabled, 66050 = Disabled gefunden. Da ist noch ein anderes Attribut dazu addiert... was gibt es da noch für Möglichkeiten?

15.01.2010 - 16:56 Uhr

Das ist natürlich die professionellere Variante =)

13.01.2010 - 22:07 Uhr

Kein Problem!

Übrigens kannst du beim asp:label im CssClass-Attribut eine css klasse angeben die dann auch für den link gilt.

13.01.2010 - 21:29 Uhr

Den Text für den Label übergibts du?

Rein theoretisch könntest du den html tag für den link einfach an den text übergeben.
Das müsste eigentlich funktionieren (ohne es probiert zu haben...)
Aber was spricht gegen einen link nach dem label?

Lg

edit: ja das funktiniert

label1.Text = "test " + "<a href=\"http://www.google.at\">qaqa</a>";
11.01.2010 - 13:20 Uhr

Das mache ich auch.
Ich gehe durch alle Rows und pro Row durch alle Cells. Deren Text in Data schreibe in meinen "Buffer" DataTable.
Das Problem ist, dass die Zuordnung abhängig von der Reihenfolge ist...
Dh:
ActionID steht in der 1. Cell
UserGivenActionID in der 2.
... usw.

Wenn jetzt eines fehlt, verschiebt sich der rest und ich kann nicht nachvollziehen welches fehlt.

Habe aber jetzt entdeckt, dass Excel immer ein ss:Index Attribut setzt wenn etwas ausgelassen wird. Damit werde ich mir jetzt etwas bauen...

11.01.2010 - 13:00 Uhr

Der Export funktioniert, dh da bekomme ich das hinaus was ich haben will.

Das Problem ist nur das einlesen des XMLs nachdem es im Excel bearbeitet wurde.
Da habe ich dann kein xslt mehr sondern nur noch das XML wie es von Excel gespeichert wurde.


 <Table ss:ExpandedColumnCount="19" ss:ExpandedRowCount="3" x:FullColumns="1"
   x:FullRows="1" ss:StyleID="s62" ss:DefaultRowHeight="15">
   <Column ss:StyleID="s62" ss:Width="99.75" ss:Span="1"/>
   <Column ss:Index="3" ss:StyleID="s62" ss:Width="200.25" ss:Span="1"/>
   <Column ss:Index="5" ss:StyleID="s62" ss:Width="99.75"/>
   <Column ss:StyleID="s62" ss:Width="50.25" ss:Span="3"/>
   <Column ss:Index="10" ss:StyleID="s62" ss:Width="80.25"/>
   <Column ss:StyleID="s62" ss:Width="99.75" ss:Span="2"/>
   <Column ss:Index="14" ss:StyleID="s62" ss:Width="150"/>
   <Row ss:AutoFitHeight="0" ss:StyleID="s63" name="CaptionRow">
    <Cell ss:StyleID="s64"><Data ss:Type="String">ActionID</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">UserGivenActionID</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">ActionName</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">                   ActionName_en-GB</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">                   ActionName_de-AT</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">Code</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">StartDate</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">EndDate</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">CreationDate</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">LastModified</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">Status</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">ResponsibleUserName</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">CreatorName</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">LinkedActions</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">Date</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">Money</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">List</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">Text</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">User</Data></Cell>
   </Row>
   <Row ss:AutoFitHeight="0" ss:StyleID="s63">
    <Cell><Data ss:Type="String">itm00001</Data></Cell>
    <Cell><Data ss:Type="String"></Data></Cell>
    <Cell><Data ss:Type="String">InApp01</Data></Cell>
    <Cell><Data ss:Type="String">InApp01_englisch</Data></Cell>
    <Cell><Data ss:Type="String">InApp01_deutsch</Data></Cell>
    <Cell><Data ss:Type="String">imported</Data></Cell>
    <Cell><Data ss:Type="String">2010/01/11</Data></Cell>
    <Cell><Data ss:Type="String">2010/01/11</Data></Cell>
    <Cell><Data ss:Type="String">2010/01/11</Data></Cell>
    <Cell><Data ss:Type="String">2010/01/11</Data></Cell>
    <Cell><Data ss:Type="String">in Planung</Data></Cell>
    <Cell><Data ss:Type="String">Administrator</Data></Cell>
    <Cell><Data ss:Type="String">Administrator</Data></Cell>
    <Cell><Data ss:Type="String"></Data></Cell>
    <Cell><Data ss:Type="String">2010/01/11</Data></Cell>
    <Cell><Data ss:Type="String">2020.1</Data></Cell>
    <Cell><Data ss:Type="String">d;a;</Data></Cell>
    <Cell><Data ss:Type="String">imported</Data></Cell>
    <Cell><Data ss:Type="String">peter.müller;test2;</Data></Cell>
   </Row>
   <Row ss:AutoFitHeight="0">
    <Cell ss:Index="2"><Data ss:Type="String">1</Data></Cell>
    <Cell><Data ss:Type="String">a</Data></Cell>
   </Row>
  </Table>

Diese Datei lade ich mittels asp:uploader hoch und lese dann das Byte[] so ein:


var stream = new MemoryStream(file);
var xml = new XmlDocument();
xml.Load(stream);

Dann geh ich durch das XML und bau mir einen DataTable auf den ich befülle und dann auswerte.

Vielleicht gibt es da eine besser Lösung um das Problem zu umgehen...

LG

11.01.2010 - 12:40 Uhr

Hi!
Ich habe gehoft, dass es im xslt irgendein Attribut gibt mit dem Excel dazu bringen kann...

Das Problem ist, dass ich keine Zuordnung der Daten zu meinen Variablen habe... nur die Reihenfolge in der die Nodes im XML stehen. Und wenn da nun welche fehlen kann ich nicht nachvollziehen welche das sind...

11.01.2010 - 11:23 Uhr

verwendetes Datenbanksystem: <XSLT>

Hallo!

Folgendes Problem:
Ich exportiere Daten aus unerer Datenbank via XSLT in ein für Excel formatiertes xml. Dort soll der Benutzer dann Daten verändern/hinzufügen können.
Dieses XML lese ich dann wieder ein und mache die entsprechenden Änderungen in der Datenbank. Funktioniert auch alles, bis auf die Tatsache, dass beim anlegen einer neuen Row im Excel leere Zellen nicht ins xml übernommen werden...

Weiß jemand vielleicht wie/wo man das einstellen kann?

LG
empty

17.12.2009 - 16:23 Uhr

Hatte ich vorher auch schon da stehen, aber LINQ ist einfach zu cool um es nicht zu erwähnen 😉

@joola: Wenn du Fragen zu List hast sag bescheid, ist aber gut dokumentiert und man findet sicherlich auch viel im Netz!

17.12.2009 - 15:31 Uhr

Es gibt eine sehr einfache Lösung dafür:
Du musst in deinem File ein using hinzufügen (die dll sollte per default dabei sein, das using eigentlich auch)
#using System.Linq

Wenn du das hast, bekommst du am Array von VS ein paar neue Methoden angezeigt. Dann kannst du folgendes nachbauen:


var ar = new string[] { "a", "b" };
var ar2 = new string[] { "c", "d" };

ar = ar.Union(ar2).ToArray();

Nach der letzten Zeile hast du in ar { "a", "b", "c", "d" }.

Wenn du Zeit und Lust hast schau dir LINQ an, das ist genial für operationen mit Listen und der gleichen!

17.12.2009 - 11:12 Uhr

Keine Ahnung was "_txtInputTester[0][1]" ist aber ich verstehe es so das du die Checkbox in dem Array setzen willst oder?

08.12.2009 - 22:05 Uhr

//Auch wieder was gelernt...

08.12.2009 - 19:52 Uhr

Erste Idee:
Erstell dir ein Interface das alle Klasse implementieren die deine "Device" instanzieren. Dann erstell in deiner "Device" ein Feld mit dem Typ dieses Interfaces und setz es beim instanzieren mit dem Konstruktor. Wenn du aber nur die Art des Erstellers brauchst, kannst du das auch über den Konstruktor mit einem Enum machen...

Bin mir gerade nicht sicher ob das mit Interfaces funktioniert, mit einer "Über"-Klasse aber auf jedenfall!

LG

23.11.2009 - 09:09 Uhr

Alles klar!
Vielen Dank für die Infos!

LG

20.11.2009 - 15:12 Uhr

Danke für dich schnelle Antwort!

==> MSDN lesen, bis gleich g

edit:
Perfekt!!!! Vielen Dank =)

Eine Frage noch, was passiert wenn ich beim Format 2 Kommastellen angebe, die Zahl aber mehr hat?
rundet er oder schneidet es einfach weg?

20.11.2009 - 15:03 Uhr

Hi!

Ich habe das Problem, einen Double Wert als string darstellen zu müssen.
Wäre ja auch überhaupt kein Problem...
Nur leider muss der string (Andwender- und Culturabhängig) mal mit und mal ohne Tausendergruppierung angezeigt werden. (10000,20; 10.000,20; 10000.20; 10,000.20;......)
Außerdem kann der User einstellen wieviele Nachkommerstellen er sehen will.

Kenn da jemand einen guten Weg?

Am nähesten komme ich mit


var currentCult = Thread.CurrentThread.CurrentCulture;
var ret = value.ToString(currentCult);

Nur das er mir da keine Tausendertrennung macht und auch die nachkommastellen ignoriert...

LG

30.10.2009 - 09:11 Uhr

Hab was gefunden...

DirectoryEntry.Exists("path")

So einfach kann es sein -.-

Danke trotzdem!

30.10.2009 - 08:25 Uhr

Das ist auf jedenfall wesentlich einfacher als alles andere was ich für einen AD login gesehen habe =)

Aber leider nicht was ich brauche...
Ich will wirklich nur überprüfen ob der angegeben Pfad existiert bevor ich in eine Exception laufe (wie gesagt bis jetzt fange ich alles mit try/catch ab, aber da muss es doch noch eine sauberere Lösung geben...)

29.10.2009 - 16:23 Uhr

Hi!

Ich habe eine Aufgabenstellung bei der ich mehrere ActiveDirectory Domains bekomme und dann eine Suche ausführen muss (in allen Domänen, in nur einer...).
Das suchen selbst funktioniert!

Mein Problem ist es, wie ich den Pfad den ich bekomme authentifizieren kann. D.h. wie ich sicher stellen kann, dass es diese Domäne auch wirklich gibt.

Der Code ist wahrscheinlich nichts besonderes...


var entry = new DirectoryEntry(path);

var searcher = new DirectorySearcher(entry);
searcher.SearchScope = SearchScope.Subtree;
searcher.ReferralChasing = ReferralChasingOption.All;

 searcher.Filter = "(&(&(&(&(objectClass=user)(samaccountname=" + _username + "))(givenName=" + _fname +
                                  "))(sn=" + _lname + "))(mail=" + _email + "))";

var results = searcher.FindAll();

foreach (SearchResult res in results)
{
      //tu was damit
}

Was mir eingefallen wäre:
Wenn der Pfad ungültig ist, werden div. DirectoryEntry-Attribute nicht geladen. Dh man könnte z.B. adsObject ansprechen und bei einer Exception weiß man das der Pfad ungültig war.
Aber gibt es da keine bessere Lösung?

Danke & LG
empty

03.09.2009 - 11:31 Uhr

Servus Herbi!

Die Daten sollen nicht von Anwender sondern von uns, bzw dem Systembetreuern geändert werden können.
Hab aber auf MSDN schon was gefunden das funktioniert!

ResXResourceReader-Klasse

Diesem ResXResourceReader gibt man eine .resx-File (den Pfad via Konstruktor) und er ließt die Key/Value-Pairs aus.
Ziehmlich cool und genau was ich brauche =)

LG

03.09.2009 - 10:53 Uhr

Servus!

Ich habe folgendes Problem:
Ich soll ein kleines ConsolenProgramm schreiben, dass für unsere Hauptapplication eine NotificationFunktion übernimmt. Dh bei bestimmten Triggern benutzern E-Mails schickt.
Mail-Versandt usw funktionieren schon, leider habe ich jetzt noch die Anforderung, dass der Inhalt der Mail in einem ResourceFile stehen muss, und dieses jederzeit änderbar sein soll. Dh nicht in die Application eingebettet, bzw compiliert...

Weiß zufällig jemand wie man so etwas machen kann bzw ob es überhaupt möglich ist?

LG
Dominik

26.06.2009 - 10:44 Uhr

War ja wiedermal klar -.-

Vielen Dank für den Link!!!

26.06.2009 - 10:12 Uhr

Guten Morgen!

Ich habe eine Seite, auf der ein User Icons auswählen kann.
Dafür lese ich ein Verzeichniss aus und erstelle dynamisch einen HTML Table welcher in jeder Cell einen RadioButton und ein Icon hat.
onChange rufe ich eine Javascript Methode auf die mir das selectierte Icon in einem HiddenField speicher.

So sieht die Definition aus:


var radioButton = new HtmlInputRadioButton();
radioButton.ID = imageList[i].Split(new char[] { '.' })[0];
radioButton.Name = "Icon";
radioButton.Attributes.Add("onChange", "setSelectedIcon('" + radioButton.ID + "');");

Es funktioniert auch, nur habe ich das merkwürdige verhalten, dass der Button sein Event erst nach dem nächsten Click ausführt.

Bsp:
User wählt Button1 --> nichts passiert
User wählt Button2 --> Button1 feuert sein Event
User wählt Button3 --> Button2 feuert sein Event

Aber auch:
User wählt Button1 --> nichts passiert
User clickt irgend wo hin --> Button1 feuert sein Event

Weiß jemand was hier passiert?
Und vielleicht auch wie man das umgehen kann?

LG
empty

edit:
Hab das Event auf onClick geändert, es funktioniert...
sollte onChange nicht auf feuern wenn der Button selectiert wird, nicht nur wenn er sein check verliert?

19.05.2009 - 10:43 Uhr

Habe was ich brauche!

Danke dir, warst wieder einmal eine große Hilfe!

19.05.2009 - 09:48 Uhr

Ahhh, servus Peter!
Wiedermal du g

Repeater klingt schon sehr gut!
Die MSDN Seite gibt auch einiges her, bin am lesen und melde mich wenn ich nicht weiter komm! Wäre toll wenn du ab und zu wieder rein schaun könntest.
Schon mal vielen Dank!

LG

19.05.2009 - 09:16 Uhr

Guten Morgen!

Ich habe das Problem ein Set an Icons darstellen zu müssen wobei der User eines auswählt und das dann in der Datenbank gespeichert wird.

Kennt jemand ein Control mit dem man so etwas gut machen kann?

Alternative Idee wäre einfach ein UserControl mit einem Tabel der Image und RadioButton zum selectieren verbindet...

TY & LG
empty

06.05.2009 - 15:42 Uhr

Ahaaa...

Dh er hat beim ersten Register nur das Codebehindfile geladen und das XML File einfach ausgelassen...

06.05.2009 - 14:42 Uhr

@ Jürgen: Jaja.. ich weiß, dass ich nicht rechtschreiben kann 😛
Wo ist da der Unterschied? Bzw wieso gabs dann keinen Error und er konnte die Controls im Namespace finden?

@Peter: Leider doch... hab nichts geändert als das Register...

06.05.2009 - 14:16 Uhr

Hab es gerade hinbekommen...
Wenn ich die Controls einzeln einbinde, dh


<%@ Register TagName="ListDetail" TagPrefix="aa" Src="~/Popups/PopupControls/ListDetail.ascx" %>
<%@ Register TagName="TextDetail" TagPrefix="aa" Src="~/Popups/PopupControls/TextDetail.ascx" %>

dann funktioniert es...

Kann mir jemand erklären wieso?

LG

06.05.2009 - 13:32 Uhr

Servus!

Folgendes Problem:
Ich habe 2 Controls welche ich abhängig von einem in der Url übergebenem Parameter auf in-/visible setzen möchte.

In den CostumControls werden Daten eingeben, dh sie beinhalten Textboxen und der gleichen.

So sind die Controls in die Page eingebunden:


<%@ Register Assembly="Avedos.R2V.Web" Namespace="Avedos.R2V.Web.Popups.PopupControls" TagPrefix="cc" %>

<div>
   <cc:ListDetail ID="listDetail" runat="server" />
   <cc:TextDetail ID="textDetail" runat="server" />
   <label>test text</label>
</div>

Wenn die Seite aufgerufen wird, zeigt er jedoch nur den label an...
Er geht zwar nach dem Page_Load der Page ins Page_Load der Controls aber trotzdem wird nichts angezeigt...
Laut FireBug sind die Controls nichtmal im HTML-Tree...

Hat jemand vielleicht eine Idee?
Mir gehn sie langsam aber doch aus...

MfG