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 jreusch
Thema: DataContractJsonSerialzer Problem
Am im Forum: Datentechnologien

Hallo rollerueckwaerts,

auf der Seite json2csharp kannst du dir Klassen zu einem Json-Objekt generieren lassen. Die Ergebnisse sind dort meistens ganz vernünftig:


public class Result
{
    public string kontaktid { get; set; }
    public string typ { get; set; }
    public string nachname { get; set; }
    public string vorname { get; set; }
}

public class RootObject
{
    public string id { get; set; }
    public List<Result> result { get; set; }
    public object error { get; set; }
}

Was man im Json-String nicht direkt sieht, wird dann sofort klar: In deinem Rootobjekt steckt also mehr als nur eine Liste von Results.

Kann mir denken, dass der (De-)serializer da nicht drauf klarkommt.

Beim object error könnte er danach auch noch Probleme machen... zur Not rauslöschen bzw. den Typ ersetzen.


Grüße

Thema: Wo finde ich eine C#-Outline (Liste aller Methoden) in Visual Studio?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hallo jimmyBi,

im Quellcodeeditor sind oben zwei Combo-Boxen. In der Linken wählst du Klasse, Interface, etc. aus der derzeitigen Datei aus. In der rechten kannst du dann zwischen den Methoden hin und herspringen.

Viele Grüße
Julian

Thema: Geschwindigkeit verschiedener Operationen
Am im Forum: Rund um die Programmierung

Also ich habe mit dem ANTS Performance Profiler von Redgate ziemlich gute Erfahrungen gemacht.

Den gibts auch als Trial-Version mit voller Funktionalität für 14 Tage zum Testen.

Thema: Abfangen ob WCF-Service (Asynchron) verfügbar ist (WP7)
Am im Forum: Netzwerktechnologien

Der generierte asychrone Completed-Handler stellt ein Property "Error" bereit. Da steckt auch die Exception drin, falls eine aufgetreten ist.

Also einfach:


if(Error != null)
   throw Error;

Thema: [WCF] Rest-Service, Custom Authentification über SessionParameter, Custom RoleProvider
Am im Forum: Netzwerktechnologien

Hi Roland,

ich habs inzwischen hinbekommen.

Ich habe einen eigenen AuthentificationManager geschrieben, der jede Nachricht mitliest und ggf. einen Custom Principal einklinkt.

Dann gibt es eine eigene AuthorizationPolicy, die den Principal wiederrum aus der Nachricht holt und in den evaluationContext der Abfrage setzt.

Das wars dann auch schon.


Ja ich wollte es gerne über die WCF-Funktionalitäten veröffentlichen. Gibts da Probleme?


Viele Grüße
Julian

Thema: [WCF] Rest-Service, Custom Authentification über SessionParameter, Custom RoleProvider
Am im Forum: Netzwerktechnologien

Hallo liebe Community,

ich stricke gerade an einem Service und umschreibe kurz meine Anforderungen:

Die Schnittstelle sollte nachher über ein Rest-Interface angeboten werden und folgendermaßen aufgebaut sein:


        // Returns SessionKey
        string Login(string username, string password);

        void Logout(string sessionKey);

        [PrincipalPermission(SecurityAction.Demand, Role = "Administrator")]
        void DoSth(string sessionKey);

        [...]

Sprich: Bis auf Login geht jedem Aufruf ein SessionKey vorran, mit dem der User zunächst authentifiziert und danach ggf. authorisiert werden soll. Dazu würde ich gerne das rollenbasierte Modell aus dem Framework nutzen.


Ich habe also zunächst einen eigenen RoleProvider implementiert, der das Rollenmodell aus einer SQL Azure DB bereitstellt und diesen entsprechend konfiguriert.

Das Problem ist nun die Authentifizierung. Wie kriege den Principial im HttpContext -vor dem Aufruf- entsprechend auf den User eingestellt, der hinter dem SessionKey steckt?

Der Service wir später auch auf Azure gehostet.

Vielen Dank und viele Grüße
Julian

Thema: Rectangle über Panel zentrieren
Am im Forum: Grafik und Sound

Hallo Crone,

ich habe deinen Beitrag nun dreimal gelesen und immer noch nicht wirklich verstanden was du willst. Du musst unbedingt üben dich besser auszurdücken.

Kannst du vielleicht eine Skizze anfertigen und daran beschreiben was du vor hast?


Viele Grüße

Thema: Multmediatimer.Tick >> invoke
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo Maddinel,

hast du schon [FAQ] Controls von Thread aktualisieren lassen (Control.Invoke/Dispatcher.Invoke) gelesen?

Ohne die Klassen genauer zu kennen ist MediaPlayer wohl ein Control und das Tick-Event wird nicht im GUI-Thread ausgelöst.

Thema: SerialPort: Mehrere Daten aus Wetterstation auslesen und zusammenfassen
Am im Forum: Rund um die Programmierung

Nein,

du liest gerade alle übertragenen Zeichen aus dem Buffer und schreibst diese viermal hintereinander in den StringBuilder.

Ich dachte an sowas:


StringBuilder builder = new StringBuilder();

while(builder.Length < 4) {
   builder.Append(serialport1.ReadChar());
}

int value = int.Parse(builder.toString());

Thema: SerialPort: Mehrere Daten aus Wetterstation auslesen und zusammenfassen
Am im Forum: Rund um die Programmierung

Hallo bZzR,

Zitat von bZzR
nun muss ich beim einlesen diese ziffern zwischen speichern? in form in einem array und einer schleife?

Habt ihr ein Steuerzeichen vereinbart, das angibt wann die letzte Ziffer gesendet wurde? Oder sind es immer vier Ziffern?

Eigentlich egal... das einfachste ist wohl ein StringBuilder, wo du jede Ziffer einfach anhängst und am ende den String in den richtigen Typ parst.

Thema: TraceEye - Professional LogViewer
Am im Forum: Projekte

Gibts auch die Möglichkeit das Tool als Logger an ein Programm anzuhängen?

Thema: Welchen Bookmarking-Dienst verwendet ihr?
Am im Forum: Smalltalk

Ich nutze schon seit einigen Jahren Xmarks und bin damit super zufrieden. Neben Bookmarks stehen auch noch viele andere Optionen zur Verfügung, welche ich aber teilweise auch für kritisch halte, z.B. Passwortsynchronisation, aber die muss man ja nicht nutzen.

Thema: C# DLL in Visual Basic einbinden
Am im Forum: Rund um die Programmierung

Hallo cRz_-,

Zitat von cRz_-
EDIT: Ich kann keinen Verweis in VB machen, sondern die DLL muss genau so implementiert werden wie im Code ("Private Declare Function...usw"), da meine .dll am Ende einfach mit der original .dll ausgetauscht werden soll!

ich bin mir nicht sicher, aber ich glaube das steht nicht im Widerspruch. Solange die Schnittstellen deiner .dll und die der orginal.dll gleich sind, solltest du sie nachher einfach austauschen können.

Thema: VS: Event registrieren, so dass die Zeile "Event += EventHandler" in der .designer.cs landet
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hallo StefBauerBauer,

herzlich willkommen im Forum. Zu Beginn solltest du [Hinweis] Wie poste ich richtig? lesen, denn deine Frage fällt ganz klar in die Grundlagen.


Mit


this.Kasse.AccountClickEvent += new MySoftware.Kasse.AccountClickEventHandler(this.Kasse_SaldoClick);

abbonierst du das besagte Event und die Methode "Kasse_SaldoClick" wird aufgerufen, andernfalls eben nicht. (C# arbeitet nicht mit Namenskonventionen für die Eventbindung).

Also hast du drei Möglichkeiten:
  • Du abbonierst das Event selbst (bspw. im Konstruktor der Klasse, nach Initialize)
  • Du kannst unter den Properties im Designer das Event binden lassen, dann taucht es auch in der .designer.cs Datei auf.
  • Du schreibt die Zeile in die .designer.cs Datei selbst rein. Dabei muss du aber vermutlich die gleiche Notation wie der Designer verwenden, sonst wirft ers wieder raus oder macht Mist.



Viele Grüße

Thema: Zur Laufzeit Controls aktualisieren ...
Am im Forum: GUI: Windows-Forms

Hallo mrennen,

jedes Control hat eine Eigenschaft Controls in der alle Kinderelemente enthalten sind.

Du musst also nur rekursiv vom obersten Control (Form) alle Controls einsammeln und darauf dann deine Übersetzung anwenden.

Es gibt aber wesentlich konfortablere Methoden zum Thema Lokalisierung. Aber du schreibst ja "besondere Anforderungen".

Grüße

Thema: Alle Paare von Zahlen ermitteln, aber ohne (i,i) und ohne (i,j), wenn (j,i) schon vorhanden ist
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat von MarsStein
Bei der Methode mit dem Hashwert müsste ebenfalls darauf geachtet werden, dass dieser Wert bei allen erdenklichen Kombinationen immer ein eindeutiges Ergebnis liefert.

Deshalb meinte ich ja eine injektive Funktion. Ich habe mal eine reineditiert.

Thema: Alle Paare von Zahlen ermitteln, aber ohne (i,i) und ohne (i,j), wenn (j,i) schon vorhanden ist
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo masterkrueger,

uff, ich habe den Text nun 3x lesen müssen, um eine Ahnung davon zu bekommen, was du vor hast.

Du willst alle Permutation von [0, 0] bis [n, n] berechnen und doppelte (bzw. die die in umgekerhter Reihenfolge schon einmal aufgetaucht sind) aussortieren?


Eine schöne Lösung fände ich, diese Paare [x,y] als Klasse zu kapseln und HashCode() so zu überschreiben, dass [x,y] und [y,x] den gleichen Hashwert liefern. Das würde ich so machen, dass ich diese sortiere (bspw. größere Zahl immer links) und danach eine bijektive Funktion von N² -> N (eigentlich reicht sogar eine injektive) konstruiere. Google sollte dir da helfen.

Weil es mich grad interessiert hat und ich nochmal kurz auffrischen wollte habe ich eine gesucht: hash = 2^(x-1)*(2y-1)

Im Anschluss einfach alle erzeugen und in ein HashSet packen.


Grüße

Thema: Startfenster wieder anzeigen
Am im Forum: GUI: Windows-Forms

Hallo Thorus,

Zitat
Die Methode existiert an sich, nur wie du schon richtig bemerkt hast, laesst er mich nicht auf das Objekt zugreifen...

und genau aus diesem Grund hat dich Grumbler85 explizit aufgefordert, dich mit Scopes zu beschäftigen.

Es ist logisch, dass du die Variable, die du in der statischen Main-Methode definierst, nicht aus irgendeinem Objekt heraus sehen kannst.

Thema: Kein FormClosed Event, wenn das Form schon in Form.Load geschlossen wird? [und Alternativen]
Am im Forum: GUI: Windows-Forms

Hallo MonkeyT,

Zitat von MonkeyT
Dieses Aufrufen der Form soll von mehreren Stellen aus möglich sein. So erzeuge ich die Form und übergebe die ID, den Rest macht die Form...
Weiß nicht, gilt es als schlechter Stil wenn man das so macht?

Die Validierung ist eigentlich die Aufgabe der Business Logic. Die Form sollte nur die Daten präsentieren und die Aktionen des Benutzers an die BL weiterreichen.

Thema: Sauberes beenden eines Threads
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat von Midnight Run
Ich habe zur Zeit ein Programm das viele Daten über FTP bezieht und [...]
Zitat von Midnight Run
Sollte man den Benutzer warten lassen ?

Die zweite Möglichkeit wäre die Daten mit der Zeit nachzuliefern. Dann muss der Benutzer nicht warten, bis alles runtergezogen ist und kann mit den bestehenden Daten schon arbeiten.
Zitat von Midnight Run
Das bedeutet wenn ich in meinem Thread mehrere Methoden aufrufe, sollte man auch diese mit einer Überprüfungen ausrüsten ? Mir würde das jetzt aus dem Kopf dann zu Komplex werden oder verstehe ich da was falsch ?

Eine allgemein gültige Antwort hierzu gibts wahrscheinlich nicht, aber in der Regel ist das nicht oder nur bei wirklich zeitintensiven Operationen nötig und dann nicht unbedingt komplex.

Wo meinst du denn so eine Überprüfung zu benötigen?

Thema: Sauberes beenden eines Threads
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo Midnight Run,

meiner Meinung nach wird ein Thread sauber beendet, nachdem die Methode die er ausführt zurückkommt.

Deshalb findest du auch teilweise Konstrukte wie:


void run() {
   while(!_stopThread) {
      [DoSth]

      if([condition])
         break;

      [DoSth]
   }
}

Für das beenden des Threads "von außen" wird die Variable _stopThread auf wahr gesetzt. Dabei ist natürlich klar, dass er seine derzeite iteration noch beendet. Dann kann man davon ausgehen, dass der Datenzustand noch konsistent ist, und nicht halb fertige Operationen ausgeführt wurden.

Mit Thread.Abort() wird in der Methode die besagte Exception geworfen. Die kannst du fangen und behandeln.

Um den Thread beim schließen des Programms zu beenden, kannst du ihn als "Background-Thread" flaggen. Das heißt er stirbt, wenn der Erzeuger stirbt (bpsw. dein GUI-Thread).


Ist dein Codeschnipsel da nur ein Beispiel oder machst du das 1:1 so? In dem Fall bringt dir Threading nichts, weil du nur die Arbeit in einen anderen Thread verlagerst und den derzeitigen Thread solange blockierst, wie dieser beschäftigt ist.

Thema: Interface für Kommunikation von Form und Skripten nötig?
Am im Forum: GUI: Windows-Forms

Dann leg dir zur Speicherung der Daten eben eine Klasse an. Wie die Kommunikation zweier Formulare funktioniert findest du hier: [FAQ] Kommunikation von 2 Forms .

Und hier gibts auch noch was zum erstellen von SQLCommands: [Artikelserie] SQL: Parameter von Befehlen


Hättest du aber auch alles selbst über die Forensuche finden können.

Thema: Interface für Kommunikation von Form und Skripten nötig?
Am im Forum: GUI: Windows-Forms

Hallo reico,

du wirfst hier glaube ich einiges durcheinander, oder drückst dich nicht klar genug aus was du vor hast. Ich vermute bei der Formulierung das gleiche wie Grumbler85, nämlich dass du dich nochmal mit den Grundlagen von C#.Net auseinander setzen solltest.

Mir kommt es so vor als würdest du mit dem Interface die ".h"-Datei der üblichen C-Vorgehensweise ersetzen wollen, sprich die Methoden deklarieren, die die Klasse zur Verfügung stellt. Das brauchst du in C# nicht mehr - ein Interface ist dafür da, strikt vorzuschreiben, welche Methoden eine Klasse, bzw. später ein Objekt zur Verfügung stellen muss.


Wenn das wieder erwartens doch eine lose Kopplung der dahinter befindlichen Datenbank werden soll (zum leichten Ausstaussch), gibt es dafür schon fertige Lösungen.

Thema: Suche WPF für Windows Forms Entwickler
Am im Forum: Buchempfehlungen

Super,

danke euch zwei für die schnelle Antwort.

Das ist alles einleuchtend und klingt vernünftig. Ich habe jetzt noch einen Monat Semesterferien, da sollte doch noch einiges drinnen sein :-)


Viele Grüße

Thema: Suche WPF für Windows Forms Entwickler
Am im Forum: Buchempfehlungen

Einen schönen guten Morgen liebe Community,

ich suche zurzeit nach einer Möglichkeit einen schnellen Einstieg in WPF zu finden. Vor einem halben Jahr habe ich mal die ersten kleineren Sachen zusammengefriemelt um ein Gefühl für WPF zu bekommen, aber hatte irgendwie noch sehr das Gefühl, dass ich gegen das System anprogrammiere.

Nachdem ich nun endlich wieder etwas mehr Freizeit habe, würde ich mich gerne nochmal mit dem Thema befassen, weil ich einfache davon ausgehe, dass es in den nächsten Jahren sehr essentiell für Windows Programmierer sein wird (oder schon ist).

Was Windows Forms angeht, bin ich denk ich ganz fit und suche eher nach einem "Schnelleinstieg", "Was ist anders?", ...

Hier im Forum findet man in manchen FAQs genau das was ich Suche, z.B. in [FAQ] Controls von Thread aktualisieren lassen (Control.Invoke/Dispatcher.Invoke) , Abschnitt: Wie geht es in WPF?.

Ich suche ein Buch, Tutorial, Webcast, was auch immer, das so oder so ähnlich aufgebaut ist und mit dem man einen sauberen und schnellen Einstieg in die WPF findet.
Oder würdet ihr mir empfehlen, ein komplettes Buch durchzuarbeiten?, mit den Galileo Computing Bücher hatte ich eigentlich immer recht gute Erfahrungen gemacht. Dann liest man nur vermutlich viel Zeug, das man schon kennt, weil es eben gleich geblieben ist.

Freue mich auf eure Antworten,
viele Grüße

Thema: Kein FormClosed Event, wenn das Form schon in Form.Load geschlossen wird? [und Alternativen]
Am im Forum: GUI: Windows-Forms

Hallo Stefan.Haegele,

ich denke es sollte klar sein, dass das von vorne rein nur eine Demo war, um das Problem nachzustellen.

Er wird in der richtigen Anwendung sicherlich eine entsprechende Abfrage formuliert haben.

Aber die Frage von ujr ist allerdings berechtigt. Vielleicht gibt es dort auch noch mehrere Fälle (Datensatz nicht korrekt, kann korrigiert werden, etc...). Naja alles nur Raterei und der TS scheint zufrieden zu sein...

Thema: Kein FormClosed Event, wenn das Form schon in Form.Load geschlossen wird? [und Alternativen]
Am im Forum: GUI: Windows-Forms

Hallo MonkeyT,

sowas habe ich mir schon gedacht und habe dir im ersten Beitrag schon geraten, dafür das Shown-Event zu benutzen, an Stelle von Load.

Thema: Kein FormClosed Event, wenn das Form schon in Form.Load geschlossen wird? [und Alternativen]
Am im Forum: GUI: Windows-Forms

Zitat von karim_mailt
In C# wird es auch ausgelöst im Load Event, zumindest wenn ich eine Form habe und bei dieser direkt im Load-Event wieder Close aufrufe.

Bei mir funktionierts nicht mit dem Code vom TS, erst im Shown gehts. Vielleicht Systemabhängig? Nutze Win7 Pro 32bit, mit Aero.

Thema: Kein FormClosed Event, wenn das Form schon in Form.Load geschlossen wird? [und Alternativen]
Am im Forum: GUI: Windows-Forms

Nein, er registriert das Event doch bevor er Form2 anzeigt.


FormClosed triggert erst, nachdem der Form Event Lifecycle einen bestimmten Zustand erreicht hat. Load ist dort zu früh.

Benutze stattdessen lieber das Shown-Event (wenn es auf den speziellen Anwendungsfall passt).

Thema: Öffnen & Vorverarbeiten eines Bildes in einen extra Thread packen, um das GUI nicht zu blockieren?
Am im Forum: GUI: Windows-Forms

Hallo el_vital,

kurz und knackig: Ja, warum auch nicht?