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 Christoph K.
Thema: Dictionary wird Exception beim Einfügen vielen Datensätze
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Es handelt sich um eine OutOfMemoryException

@T-Virus: Es handelt sich um die Abstraktion eines realen Problems. Es geht im Endeffekt darum, das ein RAM-Cache benötigt wird, der entsprechend viele Objekte in einem Dictionary beinhalten soll.

Thema: Dictionary wird Exception beim Einfügen vielen Datensätze
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Warum sollte die auftreten?
Es ist eine 64 Bit Applikation und auf dem Computer ist noch genügend freien RAM vorhanden.

Thema: Dictionary wird Exception beim Einfügen vielen Datensätze
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

ich habe folgenden Code zum Befüllen eines Dictionarys.
Wenn das 95991738 Element eingefügt wird, die Exception "Die Arraydimensionen haben den unterstützten Bereich überschritten." geworfen.
Kann sich das jemand erklären?


            var test = new Dictionary<int, int>();

            var count = 0;
            while (true)
            {
                test.Add(count++, 1);
            }

Thema: Algorithmus um zusammenhänge Gruppen zu erkennen
Am im Forum: Rund um die Programmierung

Hallo zusammen,

ich bin auf der Suche nach einem Algorithmus, der folgendes Problem löst.

Es sind 1000 Personen gegeben, die sich alle untereinander mehr oder weniger mögen. Wie doll sich zwei Personen mögen wird mit einer Gleitkommazahl zwischen 0 und 1 ausgedrückt. Bei 0.1 mögen sie sich eher weniger, bei 0.9 mögen sie sich schon sehr doll. Die Werte die diese Zahl annehmen kann sind aber fließend.

Es sollen nun n Gruppen gebildet werden, mit Personen die sich möglichst dolle mögen, somit n Gruppen, die möglichst gut zusammenpassen. Hierbei kann es natürlich auch sein, dass eine Person nicht mit der Person zusammen in einer Gruppe ist, die sie am meisten mag, jedoch im Ganzen besser in diese Gruppe passt. Die Eingabe der Gruppen n, die gebildet werden soll, soll dabei variabel sein.

Kann mir einer sagen, wie ich dieses Problem in einem Algorithmus löse?

Thema: Entity Framework - Wie EDMX neu generieren?
Am im Forum: Datentechnologien

Verwendetes Datenbanksystem: MsSql

Hallo zusammen,
wir verwenden das EntityFramework und (soweit ich mich erinnere) das Ado.net Entity Data Modell um von unserer MsSql-Datenbank die entsprechenden Klassen zu generieren.
Wenn sich etwas ändern, muss ich dazu jedes mal das .edmx File aufrufen und in dem Designer das EntityModell akualisieren. Teilweise muss man auch im Designer alles Löschen und komplett neu hinzufügen, damit das sauber läuft.
Ich suche nun eine einfachere Methode, bei der ich einfach (z.B. durch Rechtsklick auf die .edmx-Datei) den kompletten Code neu generieren lassen kann.

Gibts es so etwas?

Viele Grüße
Christoph

Thema: Wie Aufwendig ist die Umstellung von .NET 4.7 zu .NET 5.0
Am im Forum: Grundlagen von C#

Hallo zusammen,

wir überlegen gerade aus verschiedenen Gründen von .net 4.7 (das alte .net Framework) auf das neue universelle .net 5.0 zu migrieren.
Hat jemand Erfahrungen, wie aufwendig so etwas ist?
Ein Teil des Projektes ist ein ASP.net MVC 3.0 Projekt. Ist eine einfache Migration hier überhaupt machbar?

Viele Grüße
Christoph

Thema: StackOverflowException fangen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Danke für die Antwort.
Ich habe ja das Problem, dass es sich bei der betroffenen Library um eine externe Library handelt, die beim Aufrufen einer Funktion StackOverflowException wirft.

Daher kann ich hier nicht wirklich viel analysieren.

Thema: StackOverflowException fangen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo zusammen,

ich verwende eine externe Bibliothek, die zurzeit unter bestimmten Umständen eine "StackOverflowException" wirft.
Leider habe ich bisher nicht rausgefunden, wie ich in meiner Anwendung hier rauf reagieren kann (try-catch fängt diese Exception ja nicht).
Im Moment stürzt mir immer die ganze Anwendung ab, wenn dieser Fall eintritt.

Kann mir jemand helfen?

Gruß
Christoph

Thema: Visualle Unterschiede in einem Bild erkennen
Am im Forum: Grafik und Sound

Hallo zusammen,

ich suche nach einer Möglichkeit, visuelle Unterschiede in einem Bild (bzw. im Vergleich von zwei Bilder zu erkennen).
Hierbei geht es mir nicht um einen Pixelvergleicht, sondern um eine intelligentere Methode, die Vergleicht, in wie fern sich das Bild wirklich geändert hat.
Konkret möchte ich zwei Versionen einer Webseite vergleichen (die gerenderten Versionen). Wenn ich die Pixel 1 zu 1 vergleich, dann würde ich eine fast 100%ige Änderung erhalten, wenn ich oben auf der Webseite eine Zeile Text einfüge. Ich suche nun nach einem Verfahren/Algorithmus, der mir in diesem Fall ein realistischeres Ergebnis liefern würde.

VG
Christoph

Thema: Wieso startet mein ASP.NET Project nach 5/2 Minuten neu?
Am im Forum: Web-Technologien

Es ist ASP.Net
Auf dem Server laufen mehrere Projekte, aber nur das eine wird immer neu gestartet.
Der Neustart erfolg alle 2 Minuten.

Thema: Wieso startet mein ASP.NET Project nach 5/2 Minuten neu?
Am im Forum: Web-Technologien

Hallo zusammen,

ich habe ein ASP Projekt, was im Live-Betrieb ca. alle 5 Minuten neu startet.
Hierdurch wird jedes mal der sehr aufwendige Initialisierungsprozess angestoßen.

Weiss jemand woran das liegen könnte ?


VG
Christoph

Thema: Jegliche .NET DLL in dotnet core verwendbar?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Wow danke für die ausführliche Erklärung @gfoidl.

Jetzt hab ich schon nen ziemlich guten Überblick!

Thema: Jegliche .NET DLL in dotnet core verwendbar?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Vielen Dank für deine schnelle Antwort.

Was ist denn jetzt schon wieder dotnet Standard ? :-D

Das ist komplett an mir vorbei gegangen.

Thema: Jegliche .NET DLL in dotnet core verwendbar?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hi zusammen,

ich beschäftige mich gerade mit den Unterschieden zwischen .net Framework und dotnet core, weil wir eine Migration überlegen.

Mir ist aufgefallen, das ist fast jede .net DLL via nuget in ein core projekt importieren kann und auch unsere eigenen Projekte-DLL importierbar (und auch funktionstüchtig) sind.

Ist das richtig so? Bzw. wo sind hier die Grenzen? Oder kann ich quasi alles in core verwenden, was nicht plattformspezifisch ist, bzw. auf eine GUI angewiesen ist?

Thema: Frontend und Backend auf zwei verschiedenen Servern
Am im Forum: Web-Technologien

Hallo zusammen,

wir enwickelt zurziet die erste SPA, bei der das Frontend und das Backend auf zwei verschiedenen Server laufen sollen.

Dabei soll das HtmlJsCss Frontend nur über Ajax-Calls mit dem Backend kommunizieren. Die ersten Versuche ergaben eine Menge Probleme im Bereich Cross-Domain-Policies.

Habt ihr vielleicht eine Anleitung, was zu beachten ist, wenn man so etwas vorhat, oder ist es generell keine gute Idee, so etwas zu realisieren?

Vielen Dank

Thema: Port und Hub eines USB-Devices ermitteln
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo zusammen,

ich möchte in c# den Port (Address) und den Hub eines verbundenen USB-Devices ermitteln.
Mit dem USB-Device-Viewer von Microsoft (siehe Screenshot) ist dies wunderbar möglich.
Ich finde jedoch im Internet keine Hilfe, wie ich dies mit C# abfragen kann.

Hat jemand eine Idee?

Thema: MsSql - Server - Agent: Einfacher Job schlägt ständig fehlt
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: MsSql-Server

Halo zusammen,

ich habe einen SQL-Server-Agent-Job der immer fehlschlägt, wenn er automatisch ausgeführt wird. Die Fehlermeldung lautet:

Fehler
Ausgeführt als Benutzer: ''NT SERVICE\SQLSERVERAGENT''. Die Transaktion (Prozess-ID 72) befand sich auf Sperre Ressourcen aufgrund eines anderen Prozesses in einer Deadlocksituation und wurde als Deadlockopfer ausgewählt. Führen Sie die Transaktion erneut aus. [SQLSTATE 40001] (Fehler 1205). Fehler bei Schritt.

Der Job ist nicht sonderlich kompliziert und läuft normalerweise innerhalb von 10 Sekunden durch.

Führe ich den SQL-Code manuell aus, ergibt sich kein Problem. Stoße ich den Agent manuell an, wird der Job ebenfalls einfwandfrei durchgeführt. Der Benutzerkontext ist dabei der gleich:

Ausgeführt als Benutzer: ''NT SERVICE\SQLSERVERAGENT''. Der Schritt war erfolgreich.

Es ist auch vollkommen egal, um welche Uhrzeit der Job ausgeführt wird.

Hat jemand eine Erklärung?

Vielen Dank!

Thema: MessageBox nach Exception ohne Anwendung "am Leben zu halten"
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo zusammen,

ich möchte in meiner Anwendung unbehandelte Exception abfangen und via MessageBox anzeigen, wenn eine unbehandelte Exception aufgetreten ist.
So lange ich die MessagBox jedoch anzeige bleibt die Anwendung aktiv, bzw. nebenläufige Threads bleiben weiter aktiv.

Ich möchte die Anwedung jedoch unmittelbar nach der Exception beendet und dennoch einen Hinweis anzeigen.
Wie mache ich so etwas ?

Thema: Algorithmus um mehrere Texte miteinander zu vergleichen
Am im Forum: Rund um die Programmierung

Ganz so einfach ist das nciht.
Natürlich könnte ich die Texte einfach via Md5 hashen, jedoch soll der Vergleich nicht boolean sonder double als ergebnis haben :-D

Also ich möchte aus einer Menge aus n Texten ein Scoring habne, welche Texte sich am ähnlichsten sind (ähnlich -> nicht genau gleich).

Zum relativen Vergleich zweiter Texte kenne ich ein paar Algorithmen. Einer davon ist z.B. das ermittelt wird wie viele Wort-Einfüge-Lösche-Operationen nötig sind, um von dem einen Text auf den anderen zu kommen (eine Abwandlung der Levenstein - Distanz).
Mit lediglich zwei texten ist das auch nicht sonderlich aufwendig. Aufwendig wird es dadurch, dass beim Vergleich von n Texten eben genau n Texte mit n Texten verglichen werden müssen. Das wird sehr schnell sehr aufwendig/teuer.

Daher suche ich hier etwas performanteres. Ein erster Ansatz war es, die Top 10 Wörter der Texte herrauszusuchen (stoppwortbereiningt) und zu gucken bei welchen Texten diese ähnlich/gleich sind. Die Ergebnisse waren allerdings nicht so dolle.

Also wie schon gesagt, eigentlich suche ich genau den Algorithmus von Copy-Scape. Hier bekomme ich ja auch die relative Ähnlichkeit bezüglich eines eigenen Texten im Bezug auf einen vorhandene Index angezeigt.

Thema: Algorithmus um mehrere Texte miteinander zu vergleichen
Am im Forum: Rund um die Programmierung

Hallo zusammen,

ich suche einen Algorithmus, um eine große Anzahl von Texten miteinander zu vergleichen.
Bei einer geringen Anzahl von Texten ist der Vergleich ja kein Problem, nur wenn ich 1000 Texte jeweils miteinander vergleichen will, wird dieser Algorithmusschnell unperformant.

Ich suche nach einer Art Algorithmus, mit dem ich aus dem Inhalt eines Textes eine Art "Stempel" erstellen kann. Der sich danach schnell mit anderen "Stempeln" vergleichen lässt.

Gibt es sowas in der Art? Copyscape müsste doch so einen Algorithmus nutzen.

Gruß
Christoph

Thema: Linq Materialisierung-Problem
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: MsSql + EF

Hallo zusammen,

ich nutze das EF und mache damit Querys auf die Datenbank.
Sehr häufig habe ich den Fall, das ich den Query materialisieren muss, damit ich eigene Funktionen mit einweben kann.

Folgende Funktion schlägt z.B. fehl, da "locations" kein Objekt des EF-Context ist:


var data = from ko in KeywordObservers
			join ks in KeywordSpecifications on ko.KeywordSpecificationId equals ks.Id
			join k in Keywords on ks.KeywordId equals k.Id
		   where ko.ProjectId == 5
		   select new {
		   		keyword = k.KeywordValue,
				locationId = ks.LocationId,
				valid = locations.Any(x => x.Id == ks.LocationId)
		   };

Das ist auch insoweit gar nicht schlimm, da das ganze nach einer Materialisierung des Queries funktioniert. Leider wird hierdurch sehr viel nerviger Code erzeugt, da ich alle Properties, die ich im "select new" eingebunden habe, bei meiner zweiten LINQ-Abfrage (auf das materialisierte Ergebnis der ersten Abfrage) wieder zuweisen muss.

Gibts da irgendwie etwas einfacheres?

Gruß
Christoph

Thema: Mit Git auf verschiedenen Branches mit eventuell versch. Datenbanken arbeiten
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: MSSQL

Hallo zusammen,

wir entwickeln in verschiedenen Entwicklungszweigen (Branches) im Team eine Software.
Für die Versionsverwaltung des Quellcodes nutzen wir GIT. Hier können wir beliebig zwischen den verschiedenen Branches wechseln.

Ein Problem stellt jedoch die Datenbank dar. Diese läuft auf einem MSSQL-Server. Zurzeit müssen wir für jeden einzelnen Branch eine eigene Datenbank erstellen, da sich natürlich in jedem Branch die Datenbankfelder ändern können.
Da die Datenbank auch mittlerweile relativ groß ist, ist dies ein sehr träges und langwieriges Verfahren.

Gibt es hierzu irgendwie eine bessere Vorgehensweise ?

Gruß
Christoph

Thema: Webseite lokalisieren/übersetzen - Welche Möglichkeiten existieren
Am im Forum: Web-Technologien

Hi zusammen,

ich möchte gerne eine in ASP.net MVC geschriebene Webseite lokalisieren, sprich übersetzten.
Welche Frameworks gibt es hierfür? Das ganze sollte nicht darin ändern, dass ich meinen HTML/Javascript/etc. Code großartig ändern muss. Ich würde eher gerne so eine Art Proxy verwenden, der Strings in den Responses sucht und diese ersetzt.

Gibt es irgendwas in der Art?

Thema: Visual Studio 2017 stürzt wiederholt ab (alle 30 Min) - Was tun?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ich hab eine komplett frische Installation. Plugins verwende ich nicht.

Mein System: Win 10, Intel Core I7 , 32 GB DDR4-Ram
Die Projektdateien liegen auf einer seperaten SSD-Festplatte.

Mein Projekt ist allerdings auch sehr groß, aber es kann ja nicht angehen, das VS damit nicht klar kommt!?!?!

Thema: Visual Studio 2017 stürzt wiederholt ab (alle 30 Min) - Was tun?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hi Leute,

Visual Studio stürtz bei mir regelmäßig ab (ungefährt jede halbe Stunde). Dies passiert in den unterschiedlichsten Situationen, ein paar davon sind z.B.
- Ich suche nach einer Datei im Projektmappen-Explorer
- Ich lasse mir ausgeblendete Dateien im Projektmappen-Explorrer anzeigen / blende diese aus
- Ich füge Dateien über den Projektmappen-Explorer hinzu
- Ich gucke mir Variablen an, wenn ich in einen Break-Point gelaufen bin
- Teilweise Absturz, wenn ich eine Projektmappe lade
- Intellisense will mir Codevervollständigung vorschlagen

Alles in allem ist ein kontinuierliches Arbeiten kaum noch möglich. Ich habe bereits mehrfach VS neu installiert, alle Updates installiert. Vor ein paar Tagen habe ich mein gesamtes System neu aufgesetzt. Ebenfalls keine Besserung.

Der Absturz ist immer der gleich: VS friert ein und der Task im Taskmanager verbraucht kontinuierlich 20% CPU. Es geht dann nix mehr, nach ein paar Minuten meldet Windows, dass VS nicht mehr reagiert.

Was kann ich tun?

Thema: Ist beim Entity Framework das Singleton-Pattern Best-Practice?
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: MSSQL EF6

Hi zusammen,

ich wollte mal kurz nachhorchen, was mittlerweile BestPractise im Bereich EF-Context erzeugen ist.
Vor ein paar Jahren habe ich hier im Forum gelernt, das man immer (bei jedem ASP.NET Request) den EF-Context neu erzeugen soll. Eigentlich hieß es sogar, man sollte ihn immer neu erzeugen und so kurz wie möglich am Leben lassen.

Nun sehe ich teilweise im Netz Codeschnpsel, wo die Leute nur einen Context erzeugen und diesen mit Hifle eines Singletons verwalten.

Hat sich die BestPractise da mittlerweile geändert ?

Gruß
Christoph

Thema: Auf produktivem IIS wird Singleton mehrmals erzeugt
Am im Forum: Web-Technologien

Zitat von Sir Rufo
Nun ja, ich würde einen Check aussen und innen vornehmen um nicht jeden parallelen Zugriff in eine gezwungene Synchronisierung zu zwingen.


        private static object syncRoot = new Object();

        public static RamboService GetInstance(string pageDbPathForFastData, string pageDbPathForSlowData)
        {
            if (instance == null)
            {
                lock (syncRoot)
                {
                    instance = instance ?? new RamboService(pageDbPathForFastData, pageDbPathForSlowData);
                }
            }
            return instance;
        }
Das bedeutet jetzt nicht, dass ich diese Art des Singletons gutheißen möchte. Gerade auch im Hinblick auf die übergebenen Argumente. Sehr gruselig.

Was meinst du genau mit außen und innen ?
Bei dem Beispiel war der lock(syncRoot) an der falschen stelle. Ich habe ihn jetzt nach außen gebracht. Aber wozu brauche ich den inneren dann noch?

Das mit den Argumenten ist nicht schön, ich weiß - allerdings sind die Argumente immer die gleichen und hängen nur davon ab, in welchem Projekt ich die Klasse verwende.

Thema: Auf produktivem IIS wird Singleton mehrmals erzeugt
Am im Forum: Web-Technologien

Vielen Dank, dass mit dem Cache klingt sehr interessant

Was mich immer noch verwundert:

Ich habe gerade mal nachgesehen und es gibt bei meinem IIS Projekt nur einen Worker-Process. Auch die Kontrolle im Code liefert immer die gleiche ProcessId.

Laut der Dokumentation teilen sich alle Threads eines Processes die gleichen statischen Variablen. Wie kann es demnach sein, dass sich meine Singletons zweimal initialisieren?

Thema: Auf produktivem IIS wird Singleton mehrmals erzeugt
Am im Forum: Web-Technologien

Ich benutze ASP.NET 4.

Mein Cache ist auch komplett fertig entwickelt. Es ist eine Klasse, die bestimmte Daten bei Bedarf aus Dateien lädt und diese nach komplexen Kriterien von 1 Stunde bis zu mehreren Tagen im Cache hält. Das funktioniert auch wunderbar, so lange alle die selbe Instanz verwenden.

Thema: Auf produktivem IIS wird Singleton mehrmals erzeugt
Am im Forum: Web-Technologien

Zitat
Wieso liest Du nicht einfach die Doku? Keine Lust? Arbeit auf uns abwälzen?

Habe ich, entschuldige bitte, wenn ich ein für mich neues Thema nicht direkt verstehe :-/

Mein Kernproblem ist, dass ich einen Cache implementieren will, der einmalig ist. Was zwei Stunden vorher während irgendeinem Web-Request in den Cache geladen wurde, soll zwei Stunden später auch noch vorhanden sein.

Ich wüste nicht, wie ich das anders lösen kann außer durch eine Objekt, was genau einmal instanziert wird und dann global verfügbar ist.