Zusätzlich kann man (z.B.) System.IO.Ports auch GUI-basiert installieren: Link bei Social MSDN
Von C# mal abgesehen, kann man sich an Perl i.V. mit dem Modul Tie::File probieren. Aus der Textdatei dann die passenden Zeilen (vrmtl. 3. und 4. sowie plus x bei nachfolgenden Ergebnissen) extrahieren lassen.
Grundlagenbuch Wie heisst das Buch ? Aufgrund der restlichen Beschreibung ist allerdings zu befürchten das ein älteres Lehrwerk auf ein aktuelleres .NET Framework inkl. IDE trifft.
nächste Buch machen bzw. Anleitungen aus dem Internet Siehe eben
weitere Alternativen bei SQL Zugriffen
ADO.NET wäre die Standardtechnologie von Microsoft, sog. OR-Mapper für .NET wären z.B. Entity Framework, Dapper
Es sollte localhost:3306 heissen (Doppelpunkt statt Komma): https://dev.mysql.com/doc/connector-net/en/connector-net-connections-string.html
Was andere Probleme (falscher Port, Treiber,...) aber nicht ausschliesst: https://stackoverflow.com/questions/32022580/failed-to-connect-to-mysql-at-localhost3306-with-user-root
Zusätzlich:
von <list> nur von gehört, aber ich denke es sollte wie bei C++ wie der <vector> sein oder?
Das könnte sogar passen, vgl. Vector & C++ sowie List & C#
Der gepostete Code scheint auch teilweise von C-Richtlinien (Stichwort: Unterstriche, Ungarische Notation) beeinflusst zu sein ? Diese hat(te) in C/C durchaus Sinn, sollte in C# aber vermieden werden: https://stackoverflow.com/questions/450238/to-underscore-or-to-not-to-underscore-that-is-the-question
Was Architektur und Software-Design angeht, siehe den kurzen Beitrag unter java-forum.org
Die Firma JetBrains (u.a. bekannt durch ReSharper) hat die Videos der .NET Days veröffentlicht: https://pages.jetbrains.com/dotnet-days-2020
Auf dem Server laufen mehrere Projekte
Weiterhin: startet das Projekt auch neu wenn es alleine betrieben wird ? Wenn nein, könnte ein Resourcenkonflikt (oder zu schwache Hardware) vorliegen.
Wirklich ASP ? Das ist immerhin uralte Technologie (im Ggs. zu ASP.NET (Core)) Abgesehen davon wären Quellcodes und eine Beschreibung der (Server-)Umgebung nicht verkehrt
Kostenloses Whitepaper zum Thema "ASP.NET Core Blazor WebAssembly - das SPA-Framework für .NET-Entwickler?" (49 Seiten pdf, 2.3 MB): https://www.thinktecture.com/de/whitepapers/blazor-webassembly
Auf jeden Fall gibt es am 30.03. um 19.00 Uhr einen LiveStream zum Thema: https://twitter.com/BMBF_Bund/status/1244563556210802688
"ASP.NET Core Blazor WebAssembly – Single-Page Applications mit C# "
Obwohl der 1.April als Datum vielleicht etwas ungeschickt gewählt wurde: ASP.NET Core Blazor WebAssembly – Single-Page Applications mit C#
man Daten aus pdf-Files sehr gut exportieren kann
Das kann mit geeigneten Werkzeugen sogar stimmen. Aber wenn die Quell-pdf-Datei aus Bildern besteht (Stichwort Freepdf oder print2pdf) hat man bzgl. Text- oder anderer Daten ein kleines Problem...
Bei jedem Eintrag in a soll anhand eines Wertes, Übereinstimmungen in b gesucht,
ein weiterer Wert der gleichen Zeile in b ausgelesen und in a eine weitere Zeile mit diesem Wert ergänzt werden.
Vielleicht empfiehlt es sich das Endergebnis in eine dritte csv-Datei zu schreiben. Evtl. hilft der Thread bei SO weiter: https://stackoverflow.com/questions/5154370/compare-two-csv-file-using-in-c-sharp
Oder man verwendet eine 'datenfreundlichere' Sprache, z.B. Python: https://pypi.org/project/csv-diff/
Weiterhin könnte man sich auch um andere Aspekte wie Funktionalität, Erweiterbarkeit,... bemühen. Siehe auch die Anmerkung von wg. Monolith (wobei auch Microservices geeignet koordiniert werden wollen). Zum Ansehen ein YT-Video von David Tielke: Arch. -Von Mono. bis Microservices
Wo auch immer C# ins Spiel kommen soll...
Mit PHP 7.x wären noch andere Aspekte zu beachten: https://phptherightway.com (z.B. MySQLi und PDO) Und evtl. könnte ein Framework (z.B. Laravel) sich im Hintergrund um den Kleinkram kümmern.
DotnetPro gibt es auch digital. Aber 1x im Jahr gibt es den Entwickler Almanach (z.B. von 2019)
Siehe die aktuellen Tweets von David Tielke
Tag 1: Backlog in Azure
Tag 2: agile Planung in AzureDevops
Tag 3: Fünf Features die Euren C#-Code schlechter machen
...könnte für manche Person interessant sein.
OOP ist ein Ansatz die Erfahrungen/ Beobachtungen/... der menschlichen analogen Welt auf die Welt des Rechners (Strom fliesst oder fliesst nicht) zu übertragen. WIE man die Software zusammenstellt / modelliert oder die Sinnhaftigkeit derselben ist dem Rechner (im Ggs. zum Menschen) dabei egal. Aber siehe noch den einen Beitrag von java-forum.org .
Nur als Hinweis (pdf-Version bis Montag 2.12.19 kostenfrei) : https://sql-performance-explained.com
Quelle: Tweet des Autors
Sowas "zu Fuss" zu programmieren kann durchaus sinnvoll sein, wenn man die dahinterliegenden Zusammenhänge näher kennenlernen will. Sinn und Zweck einer IDE ist aber gerade z.B. Routinetätigkeiten zu reduzieren und Fehler in manuellen Prozessen zu vermeiden (oder zu minimieren). Als IDE könnte man sich auch das -mittlerweile veraltete und nicht mehr gepflegte- SharpDevelop mal anschauen. Und für die neue Frage darf man durchaus einen neuen Thread eröffnen und dort Beispielcode posten.
...Der C#-8-Spickzettel von Dr. Holger Schwichtenberg zeigt Ihnen kurz
und bündig, die Neuerungen der Sprache mit Blick auf das aktuelle .NET Core 3.0 bzw. .NET Standard... Siehe Link bei basta.net
Die .NET Developer Conference ist gerade am Laufen ( https://www.dotnet-developer-conference.de/ )
Die Keynote von David Tielke ( Die Zukunft gehört dem .NET Framework) gibt es hier ( 1:00:11 ): https://www.youtube.com/watch?time_continue=63&v=JRiDkQwxPu4&feature=emb_logo
Der Anhang scheint wohl entfernt worden zu sein. Aber spricht etwas dagegen den Code unter http://www.codeplanet.eu/tutorials/csharp/4-tcp-ip-socket-programmierung-in-csharp.html?showall=1 mit VS selbst zusammenzustellen (auch wenn es evtl. neuere Methoden zur Problembearbeitung gibt) ?
Also so etwas wie ein Chat-Programm ? Da könnte dieser Artikel inspirieren: https://www.codeproject.com/Articles/732190/Real-Time-Web-Solution-for-Chat-by-MVC-SignalR-H
Ansonsten ist ASP die uralte Technologie und ASP.NET (Core) das neuere.
Es wäre ganz sicher interessant zu erfahren welchen Kalibers die Fragen waren. Hier ein Beispiel für eine einfach aussehende Zahlenreihe: 1,2,4,8,16, ? (32 ist übrigens nicht die Lösung, siehe Quanta Magazine - Where Proof, Evidence and Imagination Intersect
Weiterhin kann man sich in Programmierforen wie mycsharp.de, java-forum.org (da Doppelpost), entwickler-forum.de, ... mal umsehen, welche Probleme dort womit gelöst werden wollen. Ob da ein überdurchschnittliches oder gar 100%-Ergebnis in den Tests effektiv geholfen hätte ?! (das soll nicht heissen, dass logisches Denken, Abstraktionsfähigkeit oder Anwenden ausgefallener Wege gänzlich uninteressant wären)
In der Java-Welt gibt es für DB-Migration und Verfolgen von Änderungen Werkzeuge namens "Flyway" und "Liquibase". Vielleicht gibt es etwas Analoges für .NET (ausser der "zu-Fuss-Methode" )
Ich gucke mir gRPC mal an.
Die druckfrische Ausgabe des DNC-Magazins behandelt gRPC i.Z. mit ASP .NET Core 3.0: DNC - Ausgabe 44 (pdf)
Tweet von Scott Hanselman:
Surprise! A full series of C#, @dotnet and @aspnet 101 tutorials for newbies! Over 80 free YouTube videos!
> GO GO GO!
Rateversuch - Teil 2:
ein lokaler Test unter Windows 7 mit gestartetem Server und dem Clientprogramm ergibt -nach manuellem Eintragen der IP-Adresse und des Ports im Clientprogramm- ein Bild ähnlich wie im Anhang gezeigt. Aber so richtig viel weiter ging es mit dem Testsystem nicht...
Evtl. wurden auf dem Netbook die Werte nicht richtig eingegeben oder ein anderer Prozess stört die Verbindung. Beim Schreiben dieses Posts ist das Serverprogramm abgestürzt und will via VS Community '19 debuggt werden: "Unbehandelte Microsoft .NET Framework-Ausnahme in asynchServerSocketBeispiel.exe [2428]"
Und wer sich für den Code interessiert: github.com - suche nach Uncloud (aktuell erste Seite, Treffer unten)
Ein weiterer Rateversuch:
Das Netbook, dass Probleme macht, zeigt keine Reaktion, wenn ich auf den Verbinden Button Klicke. Laufen dort andere Prozesse, die Ports blockieren können ? Zu prüfen mittels "netstat " (und Parametern)
Ich würde am liebsten dort Visual Studio installieren, CSharp lässt sich auch über die Kommandozeile kompilieren via csc (und nmake): https://docs.microsoft.com/de-de/dotnet/csharp/language-reference/compiler-options/command-line-building-with-csc-exe Das dürfte das Netbook wohl schaffen.
Bei NuGet muss ich erst passen. Hier geht es zur Doku: https://docs.microsoft.com/en-us/nuget/
Switch-case kann man auch i.V. mit enum verwenden: http://dotnetperls.com/switch-enum
gRPC geht übrigens auch mit C++: https://www.codeproject.com/Tips/1279881/RPC-with-Protocol-Buffers
Lösung.
Von der expliziten "!= null"-Prüfung mal abgesehen, könnte man sich die Null-Coalesce oder Null-Conditional-Operatoren mal ansehen: http://dotnetperls.com/null-coalescing
Auf die Schnelle könnte man sich die IS NOT NULL-Prüfung ansehen: https://chartio.com/resources/tutorials/how-to-select-records-with-no-null-values-in-mysql/ Für C# den sog. "Null-Coalesce-Operator"
Als Alternativvorschläge: die auszufüllenden Dokumente als .doc zum Download anbieten, vom Benutzer ausfüllen lassen und ins pdf-Format konvertieren lassen (hierzu OpenOffice oder MS Word / ... verwenden). Danach hochladen lassen.
Noch schnell zwei Treffer von Codeproject zwecks Inspiration: PDF File Writer C# Class Library
Creating PDF documents with iTextSharp
Dürfte für manch eine(n) interessant sein:
"Wir freuen uns, dass wir heute mit docs.microsoft.com einen einheitlichen, unternehmensweiten Browser für Codebeispiele anbieten können. Navigieren Sie in Ihrem Browser zu docs.microsoft.com/samples, um die neue Funktion zu testen. Mit diesem Release möchten wir Ihnen die Suche nach relevanten Codebeispielen erleichtern, unabhängig davon, welches Microsoft-Produkt oder welchen Microsoft-Dienst Sie verwenden.(...)" Quelle: Blogpost bei microsoft.com
https://docs.microsoft.com/samples
Im Selbstversuch (VS '19 mit C-Plugin, CGAL inkl. Beispiele heruntergeladen und in C:\dev\CGAL-4.13.1 entpackt, VC-Projekt anlegen (BGL_LCC_clone), Quelldateien hinzufügen) hatte die Option die zusätzlichen Include-Verzeichnisse zu konfigurieren (https://stackoverflow.com/questions/335408/where-does-visual-studio-look-for-c-header-files ) einen Teilerfolg erzielt ( mit C:\dev\CGAL-4.13.1\include ). Bei den Boost-Bibliotheken kann es sein, dass noch einige Dateien fehlen, weswegen mit dem Testprojekt BGL_LCC auch keine Kompilierung möglich war... Kann sein, dass die anderen Beispiele einfacher einzurichten sind.
frisch im Programmieren Kleine Randbemerkung: "combine" i.V. mit path lässt sich i.Z. mit dem verlinkten Openbook oder guidetocsharp.de (welches offline ist) nicht entdecken. Trotzdem sollte man beim Programmieren manuelle (z.B. die \) und automatische (z.B. combine) Vorgehensweisen -inkl. deren potentiellen Stärken und Schwächen- kennen.
Aus dem Newsletter zur Basta! 2019: "(..)Als Dankeschön für Ihr Vertrauen in uns, bieten wir Ihnen heute unser aktuellstes Dossier zum Download an. Darin finden Sie 14 Artikel zu Themen wie Entwicklung von Microservices, DevOps-Challenge, ASP.NET Core und Cloud-Architekturen von BASTA!-Speakern und .NET-Experten wie Rainer Stropek, Manfred Steyer, Oliver Sturm und Dr. Holger Schwichtenberg.
Wir wünschen Ihnen viel Spaß beim Lesen!(..)"
Zum Download (4,5 MB): hier
Naiver Vorschlag: statt über die URL zu gehen könnte man den Inhalt des DOM-Explorers in eine lokale HTML-Datei speichern. FF -Link zu Pilz- alles markieren - rechte Maustaste - Ausgewählten Quelltext anzeigen. Dort wieder alles markieren und kopieren via Ctrl+C. Macht immerhin 2361 Zeilen vs. 681... Und die Links mit /open/ oder /restricted/ erscheinen auch
Addendum: die Anleitung von wg. lokaler Datei könnte man befolgen C-Sharp Corner - HTML Web Agility Pack
Und noch ein kleiner Randhinweis von wg. dynamischer Arraygrösse: die ganz alte Methode ging über ArrayList, eine neuere Option ab .NET 3.5 ist die Array.Resize()-Methode.
Siehe auch SO - how-to-extend-arrays-in-c-sharp und DotnetPerls - ArrayResize
Doch wie gebe ich die Ergebnisse meines Programmcodes in die Textbox aus?
Z.B. mittels AppendText i.V. mit MultiLine: https://www.dotnetperls.com/textbox-appendtext
Die Menge an Daten in der Datei für die Highscore könnte man auch auf z.B. 40 Einträge limitieren. Ein Array lässt sich mittels der Sort-Methode bearbeiten (ascending/descending): https://www.dotnetperls.com/array-sort
Bei der gegebenen Liste und dem Endresultat kann man erkennen, dass einige Zahlenkombinationen nur gemeinsam auftreten, z.B. 17+3, 15+5... Damit könnte man den Rechenaufwand beim Iterieren auch etwas reduzieren.
in Mathe echt nicht aufgepasst Kann sein, zusätzlich ist Gleitkommadarstellung im Rechner ein Problem der Numerischen Mathematik
Den Personaler, bei dem das kein Mega-Pluspunkt wäre, gibt's nicht. Wohl weniger jemand aus dem Personalbereich, als mehr jemand vom Fach. Und selbst mit dem Verweis auf die Github Projekte kann man sich auf die unglaublichsten Arten und Weisen schlecht(er als nötig) präsentieren: z.B. durch fehlende Dokumentation, veraltete / ungetestete Codes, ... Der erste Teil des Udemy-Kurses "Python for Data Structures" befasst sich damit: Udemy - Python for Data Structures
WAS genau in dem Telefongespräch abgefragt wird, weiss man natürlich nicht. Trotzdem könnte eine Vorab-Beschäftigung mit Unity nicht ganz verkehrt sein: Udemy - Introduction to Game Development with Unity oder Udemy - Intro to Game Development using Unity - Part I (evtl. kostenpflichtig)
Das könnte i.V. mit C++ und der WinAPI / WinUSB möglich sein:
How to Access a USB Device by Using WinUSB Functions
Beispiel mit C# unter Codeproject: How to Communicate with its USB Devices using HID Protocol
MS-Seite bei Github: Windows Driver Samples (C/C++)