Benutzer mit den meisten Antworten
Datenbank oder XML-Datei?

Frage
-
Liebe Community,
ich mag google und auch die Forensuche, nur leider fehlen mir ein paar Begriffe und eine Menge Sachverständnis um hier weiterzukommen. Also meine Herausforderung sieht folgendermaßen aus:
Ich bin blutiger Anfänger und habe mich schon mit Tutorials auseinandergesetzt die mir die Sprache c# näher gebracht haben. Leider bekomme ich das Wissen jetzt nicht in eine Programmstruktur. Um C# zu lernen habe ich mir ein Mammutprojekt überlegt um das dann Schritt für Schritt durchzuarbeiten, weil ich keine Lust mehr habe, denn 10 Taschenrechner mit + - * / zu schreiben.
Also habe ich mir als erstes WindowsForm in meinem Visual Studio Express 2013 für Desktop angesehen um eine Programmoberfläche zu erstellen. Per Drag and Drop habe ich mir ein paar Textfelder in mein Fenster gezogen, mir einen Button erstellt (er heißt "Speichern" und nicht "Button_1") mit dem ich zuerst eine gewöhnliche Textdatei und später dann eine XML-Datei erzeugen konnte. Mein Ziel ist es, eine Art Steckbrief mit Bildern über das Programm in eine Datei und/oder Datenbank einpflegen zu können. Das soll dann so aussehen:
Nutzer > Eingabe in das Programm > Speichert > Datei/Datenbank
Das ganze soll dann im selben Programm wieder abrufbar sein. Dann möchte ich ein PDF davon schreiben können und das ganze per Klick in die Datenbank im Web hochladen und auch wieder herunterladen können.
Ich weiß das ganze klingt für einen Anfänger wie die Eierlegende Wollmilchsau. Aber das ist ja auch nur mein Ziel. Ich freue mich da schon über kleine Erfolge in diese Richtung. Leider weiß ich nicht wie ich anfangen soll...
Was schlagt ihr vor? Ist WindowsForms sinnvoll (machen das Profis auch damit?)? Kann ich einem Benutzer anbieten Bilder einzuladen und die eingeladenen dann anzeigen lassen?
Ich erwarte hier keinen Code oder ähnliches, sondern ein paar Links zum selbststudium die mich in die richtige Richtung dafür bringen. Also bitte nicht lmgtfy oder gidf.
Vielen Dank für Eure Geduld und Eure Hilfe! Wenn ihr noch infos in eine Richtung braucht die ich vergessen habe schreibt es bitte! Nich schimpfen ;)
Liebe Grüße
probaton
Antworten
-
Hi,
zuerst mal *schimpf* :) Ne, war nur ein Späßle :)
Grundsätzlich ist WindowsForms für bestimmte Zwecke sehr sinnvoll einzusetzen. WPF wäre auch etwas, mit dem man sich beschäftigen könnte, wobei sich deine derzeitigen Anforderung für mich eher nach WinForms anhören. Also würde ich auch mal dabei bleiben. Wenn Du dich in C+ und das .NET Framework an sich eingearbeitet hast, kommst Du ggfs. eh noch zu WPF.
Sich jetzt schon mit WPF anstelle von WinForms zu beschäftigen wäre sinnvoll, wenn Du vor hast, später auch viel in Richtung Windows Store Apps bzw. Windows Phone Apps zu machen. Da bringt dir das WinForms Wissen nicht mehr wirklich viel.
Für kleine Datenmengen und unabhängige Anwendungen kann man problemlos mit XML Dateien arbeiten. In dem Fall würde ich dir aber empfehlen, dich mal mit Serialisierung/Deserialisierung zu beschäftigen. Damit kannst Du auch komplexe Objekte/Listen/... in XML serialisieren und umgekehrt daraus auch wieder Objekte erzeugen, mit denen Du in deiner Anwendung arbeiten kannst.
Ich hatte vor längerer Zeit mal eine WinForms Demo mit Serialisierung/Deserialisierung erstellt.
http://www.aspnetzone.de/files/folders/stefanfalz/entry222489.aspx
Code ist allerdings in VB.NET, da der Code aber nur einen geringen Umfang hat, sollte sich das problemlos in C# übersetzen lassen. Notfalls nimm einen Online Codekonverter wie bspw. http://converter.telerik.com/ zu Hilfe.
Kommunikation mit einer Webanwendung sollte über Webservices stattfinden. Ein direkter Zugriff auf eine Datenbank im Internet ist meist nicht möglich. Wie genau Du serverseitig arbeiten musst, hängt von der verwendeten Technologie auf Serverseite ab. Wenn Du dort ASP.NET verwendest, ist es recht einfach.
http://msdn.microsoft.com/de-de/library/t745kdsh.aspx
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort markiert probaton Samstag, 5. April 2014 19:23
Alle Antworten
-
Hi,
zuerst mal *schimpf* :) Ne, war nur ein Späßle :)
Grundsätzlich ist WindowsForms für bestimmte Zwecke sehr sinnvoll einzusetzen. WPF wäre auch etwas, mit dem man sich beschäftigen könnte, wobei sich deine derzeitigen Anforderung für mich eher nach WinForms anhören. Also würde ich auch mal dabei bleiben. Wenn Du dich in C+ und das .NET Framework an sich eingearbeitet hast, kommst Du ggfs. eh noch zu WPF.
Sich jetzt schon mit WPF anstelle von WinForms zu beschäftigen wäre sinnvoll, wenn Du vor hast, später auch viel in Richtung Windows Store Apps bzw. Windows Phone Apps zu machen. Da bringt dir das WinForms Wissen nicht mehr wirklich viel.
Für kleine Datenmengen und unabhängige Anwendungen kann man problemlos mit XML Dateien arbeiten. In dem Fall würde ich dir aber empfehlen, dich mal mit Serialisierung/Deserialisierung zu beschäftigen. Damit kannst Du auch komplexe Objekte/Listen/... in XML serialisieren und umgekehrt daraus auch wieder Objekte erzeugen, mit denen Du in deiner Anwendung arbeiten kannst.
Ich hatte vor längerer Zeit mal eine WinForms Demo mit Serialisierung/Deserialisierung erstellt.
http://www.aspnetzone.de/files/folders/stefanfalz/entry222489.aspx
Code ist allerdings in VB.NET, da der Code aber nur einen geringen Umfang hat, sollte sich das problemlos in C# übersetzen lassen. Notfalls nimm einen Online Codekonverter wie bspw. http://converter.telerik.com/ zu Hilfe.
Kommunikation mit einer Webanwendung sollte über Webservices stattfinden. Ein direkter Zugriff auf eine Datenbank im Internet ist meist nicht möglich. Wie genau Du serverseitig arbeiten musst, hängt von der verwendeten Technologie auf Serverseite ab. Wenn Du dort ASP.NET verwendest, ist es recht einfach.
http://msdn.microsoft.com/de-de/library/t745kdsh.aspx
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort markiert probaton Samstag, 5. April 2014 19:23
-
Hi Stefan, vielen Dank für die superschnelle Antwort.
Da ich mich im botanischen Sektor bewege kommt da schon einiges an Daten zusammen.
Habe mir in den Forms mehrere Tabs eingestellt da ich da pro Pflanze schon auf eine Menge Daten unterteilt in vielen Bereiche komme. Vom Umfang her denke ich das das sicher so 3-4 DinA4-Seiten sind die ich dann ablegen muss. Pro Kraut.
Auserdem brauche ich ja noch eine Möglichkeit Bilder einzustellen, hab da bei Datenbanken was von BASE64 gelesen, was ich aber nur aus dem Email-bereich kenne.
Also der Umfang wird so ca. 300-500 Kräuter a 3-4 DinA4-Seiten ausmachen!
Geht das denn überhaupt noch?
Schaue mir jetzt Deine Dateien mal an THX auch dafür...
liebe Grüße
probaton