Zum Inhalt springen

Gooose

Mitglieder
  • Gesamte Inhalte

    427
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    9

Alle Inhalte von Gooose

  1. Nachdem ich im Juli meine Stelle gewechselt habe, bin ich von SVN auf Git umgestiegen. Es war schon eine kleine Umstellung, da mehr Leute mit dem Repository arbeiten. Ich musste mich erst mal daran gewöhnen, dass viel lokal passiert. Ich erstelle schon mal lokale Branches, wenn ich während der Entwicklung Dinge teste, die nicht produktiv gehen sollen. Generell sind die Commits eher kleiner, damit sie auch nachvollziehbarer sind. Unter Windows nutze ich die Git-Extensions.
  2. mal so auf die Schnelle Algorithmen WS 2011/12
  3. Kleiner Bericht bei Gulp: In Deutschland herrscht kein IT-Fachkräftemangel. Oder doch?
  4. Bis zum 1.7. Alter: 34 Wohnort: Dortmund letzter Ausbildungsabschluss (als was und wann): FIAE 2009 Berufserfahrung: 3 Jahre Vorbildung: Fachabitur, abgebrochenes Studium Arbeitsort: Düsseldorf Grösse der Firma: 200 Tarif: - Branche der Firma: Gesundheitswesen Arbeitsstunden pro Woche laut Vertrag: 40 Arbeitsstunden pro Woche real: 40 Gesamtjahresbrutto: 37872 - 41028 Anzahl der Monatsgehälter: 12 Anzahl der Urlaubstage: 30 Sonder- / Sozialleistungen: 600 Euro Rentenfont Variabler Anteil am Gehalt: Ein Monatsgehalt Verantwortung: - Tätigkeiten (Aufgaben/Aufgabenbereich): Konzeption und Entwicklung von Software im Bereich eProcurement / Content Management Ab dem 1.7. Alter: 35 Wohnort: Dortmund letzter Ausbildungsabschluss (als was und wann): FIAE 2009 Berufserfahrung: 3 Jahre Vorbildung: Fachabitur, abgebrochenes Studium Arbeitsort: Dortmund Grösse der Firma: 100 Tarif: - Branche der Firma: Hotel- und Gaststättengewerbe Arbeitsstunden pro Woche laut Vertrag: 40 Arbeitsstunden pro Woche real: findet sich Gesamtjahresbrutto: 49000 Anzahl der Monatsgehälter: 12 Anzahl der Urlaubstage: 28 Sonder- / Sozialleistungen: - Variabler Anteil am Gehalt: - Verantwortung: - Tätigkeiten (Aufgaben/Aufgabenbereich): Backend Entwicklung / DWH / BI / Reporting / Messaging / tba...
  5. Vielleicht kommst du mit dem Open XML SDK 2.0 for Microsoft Office weiter. Du kannst dir mal Using LINQ to Query Tables in Excel 2007 anschauen. Einfach mal ausprobieren.
  6. Zum QR-Code testen lohnt sich ein Blick auf die Google Chart Tools. So können auf die Schnelle Test Codes erstellt werden. z.B. https://chart.googleapis.com/chart?chs=150x150&cht=qr&chl=Hello%20world&choe=UTF-8
  7. Mit der PowerShell sollte dies funktionieren: Compare-Object $(Get-Content c:\temp\test\komplett.txt) $(Get-Content c:\temp\test\def30.txt) | Format-Table InputObject -HideTableHeaders | Out-File New.txt Vgl. hierzu: Compare-Object Get-Content Format-Table OutFile
  8. Merk dir die Zwischenergebnisse, dann wird es übersichtlicher. zb. $differenz = $heimtore - $auswaertstore $hatHeimGewonnen = $differenz > 0 $hatGastGewonnen = $differenz < 0 $istUnentschieden = $differenz = 0 Spiel ein wenig mit den Werten herum.
  9. Sicherlich wird auch speicher allokiert, doch ich meinte hier Resourcen im allgemeinen, sprich z.b. Anzahl von offenen Verbindungen zu einer Datenbank. Listen sind grundlegende Datenstrukturen. Vielleicht solltest du dich mit den Grundlagen auch nochmal auseinandersetzen.
  10. Nehmen wir doch mal das obere Beispiel mit der Adventureworks DB: Mal angenommen eine Klasse für Employee würde so aussehen: public class Employee { public int EmployeeID { get; set; } public string LoginID { get; set; } public DateTime? BirthDate { get; set; } } Wenn man jetzt eine Liste von Employee aus der Datenbank haben wollte, könnte die Abfrage so ausehen: SqlCommand cmd = new SqlCommand("select * from [adventureworks].[humanresources].[employee] where hiredate between @lowest and @highest", conn); cmd.Parameters.AddWithValue("lowest", new DateTime(2000, 1, 1)); cmd.Parameters.AddWithValue("highest", new DateTime(2002, 1, 1)); SqlDataReader reader = cmd.ExecuteReader(); List<Employee> result = new List<Employee>(); while (reader.Read()) { Employee currentEmployee = new Employee(); currentEmployee.LoginID = (string)reader["LoginID"]; currentEmployee.EmployeeID = (int)reader["EmployeeID"]; currentEmployee.BirthDate = (DateTime?)reader["BirthDate"]; result.Add(currentEmployee); } reader.Close(); conn.Close(); Jetzt könnte man die Liste zurückgeben und damit weiterarbeiten. Dies ist auch ein Beispiel dafür, wie man die SQL-Datentypen wieder "zurückmappt". Kurze Anmerkung zu dem "DateTime?": Beim SQL-Server lassen sich Datumsspalten nullen, was unter .NET nicht geht. Schau dir hierzu mal Nullable Types (C# Programming Guide) an. Wenn du unter .NET mit Datenbanken arbeitest, solltest du dich mit den Datentypen genau auseinandersetzen. Das erspart dir später viel Arbeit Schaue dir auch die beiden close Methoden an: SqlConnection.Close Method SqlDataReader.Close Method Das Freigeben von Ressourcen ist gerade bei Datenbanken wichtig.
  11. Hier wird beschrieben wie der Parameter an den Sql-Server übergeben wird. Einfacher währe es hier zu sagen: command.Parameters.AddWithValue("@ID", customerID); Das währe das gleiche Verhalten. Davon wird hier ausgegangen. In meinem Beispiel erzeuge ich ja ein DateTime Objekt ohne Zeitangabe. die Zeit wird hier mit Nullen belegt. Du kannst dir das beispielsweise im Command Window des Visual Studios anschauen: >? new DateTime(2012,1,1).ToString() "01.01.2012 00:00:00" Weiteres kannst du unter DateTime in der MSDN nachlesen. Das müsste ich auch ausprobieren Ich denke aber, das mögliche auftretende Probleme durch das Verwenden von Parametern minimiert werden. Kompatibel ist vielleicht ein wenig ungenau. Wir haben hier zwei Welten. Zum einen haben wir den SQL-Server, zum anderen die .NET Umgebung. Im Endeffekt hilft dir die SqlCommand Klasse SQL Statements an den Sql Server zu schicken. Aus dem Command SqlCommand cmd = new SqlCommand("select * from [adventureworks].[humanresources].[employee] where hiredate between @lowest and @highest", conn); cmd.Parameters.AddWithValue("lowest", new DateTime(2000, 1, 1)); cmd.Parameters.AddWithValue("highest", new DateTime(2002, 1, 1)); kommt folgendes am SQL-Server an: exec sp_executesql N'select * from [adventureworks].[humanresources].[employee] where hiredate between @lowest and @highest',N'@lowest datetime,@highest datetime',@lowest='2000-01-01 00:00:00',@highest='2002-01-01 00:00:00' Mit Hilfe von sp_executesql können SQL-Statements mit Parametern aufgerufen werden. Genau dabei hilft dir die SqlCommand Klasse. Am Rande: Was würdest du bei einem Insert / Update Statement machen? Wie würde wohl das SQL ohne die Verwendung von Parametern aussehen, wenn die Tabelle 10 oder mehr Spalten hat? Mein Tipp: Wenn ich mich in neue Themengebiete einarbeite, versuche ich die Komplexität so gering wie möglich zu halten. In diesem Fall, baue dir erst mal eine einfache Konsolen-Anwendung, die nichts weiter macht als dieses Statement abzusetzen. Wenn Fehler auftreten, kann man diese leichter lokalisieren.
  12. Hierbei ist das Datentyp-Mapping zwischen .NET und SQL-Server gemeint. Hier mal eine Übersicht: Mapping CLR Parameter Data Schau dir mal oben den Link an. Da ist es gut erklärt. Gerade am Anfang ist die MSDN ein guter Freund. Innerhalb des Visual Studios kommst du meistens direkt auf die passenden MSDN Seiten, wo du weitere Erklärungen zu .Net Klassen, - Methoden und - Properties findest. Die MS SQL Server Express Version kannst du dir kostenlos runterladen. Die Beispiel Datenbank Adventure Works findest du unter Codeplex. So kannst du dich projektunabhängig mit dem Thema beschäftigen. Probiere einfach mal ein wenig was aus. Dann bekommst du ein Gefühl für die Technik und merkst schneller was zielführend ist und was nicht. Wenn dt1 und dt2 vom Typ System.DateTime sind, kann die Abfrage so aussehen: cmd.CommandText = "SELECT * FROM Calibration WHERE end_time BETWEEN @lowest AND @highest"; cmd.Parameters.AddWithValue("lowest", dt1); cmd.Parameters.AddWithValue("highest", dt2); Das Ziel des Ganzen ist es ja, auf die Datentyp Umwandlung nach Möglichkeit zu verzichten. Nimm dir die Zeit, und versuche nachzuvollziehen, was dort passiert. Das hilft dir, wenn du zukünftig auf ein ähnliches Problem triffst.
  13. Hier mal ein Thread wo es um ein ähnliches Thema geht: MSSQL / SqlCE DateTime Where Global halten
  14. Das Format ist regionsabhängig. Bsp.: CultureInfo ci = CultureInfo.GetCultureInfo("fr-FR"); Console.WriteLine(DateTime.Now.ToString(ci)); // Ausgabe: 27/01/2012 07:11:46 Je nach dem an welchem Rechner gearbeitet wird, kann der String anders aussehen. Deswegen sollte man nach Möglichkeit mit DateTime Objekten arbeiten. Da die Spalte in der DB auch vom Typ DateTime ist, sollte ein Mapping kein problem sein. Die Vergleiche in der Query sind alphanumerisch. Dies kann dazu führen, das falsche oder keine Ergebnisse zurückgegeben werden. Wenn man keinen Einfluss mehr auf die Eingabeparameter DT1 und DT2 hätte, kann folgendes funktionieren. SELECT * FROM [AdventureWorks].[HumanResources].[Employee] WHERE HireDate BETWEEN CAST('2000-01-01' AS DATETIME) AND CAST('2002-01-01' AS DATETIME) Hierbei müsste man sich aber wiederum auf die Ländereinstellungen des DBMS verlassen. Bei dieser Darstellung sind im angloamerikanischen Raum gerne mal Tag und Monat vertauscht. Das sind später Fehler, die schwer zu finden sind. Die Verwendung von DateTime Objekten nimmt dir diese Arbeit ab. Bei floating-points ist das Problem übrigens ähnlich, wenn man mit Strings arbeitet. Auch die String Repräsentation von Zahlen sind länderabhängig. (Dezimal- / Tausendertrenner)
  15. Ich würde eher mit Parametern arbeiten. SqlParameterCollection.AddWithValue bietet dir eine Übersicht. Hier mal ein Beispiel unter der Verwendung der Adventureworks-Datenbank: SqlCommand cmd = new SqlCommand("select * from [AdventureWorks].[HumanResources].[Employee] WHERE HireDate BETWEEN @lowest AND @highest",conn); cmd.Parameters.AddWithValue("lowest", new DateTime(2000, 1, 1)); cmd.Parameters.AddWithValue("highest", new DateTime(2002, 1, 1)); Die String-Verkettung fällt weg, und die Lösung ist weniger fehleranfällig.
  16. Schau dir mal die Datumsfunktionen deines DBMS an. Für MSSQL gibt es unter anderem die DATEPART Funktion. Bsp. für KW des aktuellen Datums: SELECT DATEPART(wk, GETDATE()) Ein Artikel bei StackOverflow geht in die Richtung. Google - Suche nach "sql get dates from week number" bringt dich sicherlich auf die Richtige Fährte.
  17. Hier und da mal eine Prüfung ist sicherlich ok. Ich wurde letztes Jahr zusammen mit einer Kollegin auf eine Schulung geschickt. Wir sollten uns mit dem SQL Server Analysis Service vertraut machen. Drei Tage "Druckbetankung". Die Transferleistung auf konkrete Projekte musste aber immer noch gestemmt werden. Die Schulung hat die Sache vielleicht ein wenig beschleunigt, doch das eigentliche Lernen begann beim ersten Projekt. Die Schulung war richtig gut, wäre aber nicht zwingend notwendig gewesen. Wenn ich mich an neue Themen heranwage, besorge ich mir Literatur. Es gibt mittlerweile so viele Online Quellen, die man abarbeiten kann, dass einem eher die Zeit fehlt sich alles im Detail anzueignen. Interessant werden Zertifikate/Schulungen, wenn sie als "Türöffner" dienen. Gute Entwickler/Administratoren hat es aber schon gegeben, bevor die Firmen damit angefangen haben eine neue Einnahmequelle zu erschließen. Eine Fachkraft zeichnet sich nicht zwangsweise durch Zertifikate aus. Wenn ich einem Kollegen etwas über den Analysis Service erzählen müsste, sind die gesammelten Projekterfahrungen "wertvoller" als die Informationen bzw. der Nachweis, dass ich an dieser 3-Tages-Schulung teilgenommen habe. Es ist eher die Frage, wie man seinem Gegenüber glaubhaft vermitteln kann, dass man sich in einem bestimmten Bereich gut auskennt.
  18. mal wieder was Aktuelles aus der Presse: Spezialistenmangel hausgemacht?
  19. Im Prinzip läuft es bei jeder DB-Abfrage ähnlich hab. Man benötigt jeweils den notwendigen Data Provider / Connector für die jeweilige Datenbank. Eine Google Suche nach "mysql linq" liefert schon einige Treffer. Unter anderem Tutorial: Databinding in ASP.NET using LINQ on Entities direkt aus der MySQL Dokumentation. In der Doku heißt es: Du könntest versuchen, die Assemblies per Hand einzubinden. Der Data-Explorer wird hier wahrscheinlich nicht funktionieren. Wie man dies macht, kannst du bei diversen Online-Quellen nachlesen. An dieser Stelle ist ein wenig Eigeninitiative gefragt. "Online-Shop mit ASP.NET" ist zunächst erst mal ein ambitioniertes Projekt. Ich würde mich zunächst mit den einzelnen Komponenten vertraut machen, bevor ich mich an so etwas heranwage. Grundlegende Voraussetzung ist auch eine eigenständige Informationsbeschaffung. Damit man weiß, wonach man suchen muss, sind Kenntnisse der Grundlagen unabdingbar. Im oberen Bereich des .NET Bereichs findest du eine Linkliste für Openbooks und Tutorials Zerlege deine Probleme in Teilprobleme, dann sind die Fragen die sich aufstellen übersichtlicher und man kann einfacher nach Antworten suchen. Wenn du Beispielsweise das Suchergebnis nach "Web Developer Express Mysql-connector" nicht interpretieren kannst, fehlen hier noch Grundlagen. Kein Forum wird dir das eigenständige Erarbeiten von Grundlagen abnehmen können. Der Vorteil ist, das sich bei soliden Grundlagenkenntnissen einige Fragen von selbst beantworten lassen. Auf dem Weg zum "Online-Shop mit ASP.NET" werden sicherlich noch andere Fragestellungen relevant werden, z.B. das Thema Sicherheit, welche sich durchaus innerhalb von einem Forum diskutieren lassen (bzw. schon etliche Male diskutiert wurden, und wonach man dann suchen kann ). Fazit: Gehe dein Problem Schritt für Schritt an.
  20. Zunächst solltest du dir überlegen, was du genau willst. Ist das erst mal nur eine Testanwendung? Wenn nicht, wie viele Benutzer sollen mit deiner Anwendung arbeiten? Liegen Datenbank Server und Web Server auf einer Maschine?... sprich, die Anforderungen sollten zumindest grob stehen. Anforderungen können auch ohne technischen Bezug erhoben werden. Welche Technik die Beste für eine Lösung ist, wird dann später ermittelt. Wenn man sich auf Grund der Anforderung für eine Technik entschieden hat, sollte man sich mit den einzelnen Komponenten auseinander setzen. In deinem Falle MySQL, IIS, ASP.NET und deren Zusammenspiel untereinander. Dies ist erst mal viel Arbeit, lohnt sich aber langfristig. Überlege dir, wie die Kommunikation zwischen Client und WebServer stattfindet. Frage dich, wie der Datenbankserver mit dem Webserver kommuniziert. MySQL bietet einen Connector an, mit dem man auf die Datenbank zugreifen kann. In der Dokumentation kannst du nachlesen wie du ihn installierst und verwenden kannst. Die Visual Studio Helferlein sind nützlich. Probiere es am Anfang mal "zu Fuß" eine Verbindung herzustellen. Die dazu benötigten Klassen werden hier beschrieben. Du kannst dir eigene Datenklassen erstellen, oder für den Anfang mit DataTables arbeiten. Häufig ist das Zusammenspiel der einzelnen Komponenten eher komplex als kompliziert. Ich würde an deiner Stelle zunächst in einer Konsolen-Anwendung auf die Datenbank zugreifen, oder mit dem WebDeveloper eine Seite erstellen und "Dummy-Objekte" darstellen. Später kannst du immer noch alles zusammen bringen. So verliert man am Anfang nicht so schnell den Überblick.
  21. Lies dich einfach mal in das Thema Serialisierung ein: Serialisierung XML Schema Definition-Tool (Xsd.exe) Letzteres ist nützlich, wenn du schon eine Xml Datei hast. Generiere aus der Datei das Schema, passe es gegebenenfalls an, und aus dem Schema kannst du dann Klassen generieren. Für übersichtliche Datenstrukturen ist das Tool ganz hilfreich. Du kannst ein XML Dokument auch einlesen und mit XPath Abfragen erstellen. Auch bei SelfHTML findest du den XPath-Syntax. Es gibt genügend Quellen im Web, wo du dir Informationen holen kannst. Das Visual Studio bietet eine Menge kleine Helferlein. Doch nicht jedes ist unbedingt nützlich oder passen zu jedem Problem. Setze dich mit Zettel und Stift hin und überlege dir, wie du dein Problem lösen kannst. DataSet-Lösungen sind bequem, können aber auch sehr komplex werden. Manchmal ist es "zu Fuß" einfacher als man denkt.
  22. Schau dir mal How can I override the OnBeforeUnload dialog and replace it with my own? an. Vielleicht kommst du in der Richtung weiter.
  23. Du könnstest das onSubmit Event des Form Tags nutzen <form method="post" action="xxx.htm" onsubmit="return IsConfirmed();")> JavaScript: function IsConfirmed { var message = "Sicher, dass du die Seite verlassen möchtest?"; return confirm(message)); } oder kurz <form method="post" action="xxx.htm" onsubmit="return confirm('Sicher, dass du die Seite verlassen möchtest?');")> confirm liefert schon true oder false zurück. Bei solchen Fragestellungen, wirf ein blick in die Dokumentation, oder baue dir ein minimales Beispielprojekt <html> <head> <title>Confirm Test</title> </head> <body> <form method="post" action="xxx.htm" onsubmit="return confirm('Yes?');")> <input type="submit" name="Name" value="Beschriftung"> </form> </body> </html> So etwas reicht zum testen schon aus.
  24. Trigger sind ja auch prädestiniert dafür. In Abhängigkeit des DBMS und des Problems was zu lösen ist, gibt es halt mehrere Möglichkeiten. Wir evaluieren gerade Möglichkeiten, wie wir Systemweit "Telemetriedaten" sammeln können. Deswegen viel mir der CDC wieder ein
  25. ... Ab dem Sql Server 2008 gibt es die Möglichkeit mittels Change data capture Änderungen an Daten nachzuverfolgen. Möglicherweise findest du in dem Bereich eine Lösung zu deinem Problem. Der Trigger wird auch funktionieren. Die mögliche Lösung ist abhängig von den Anforderungen die du hast/bekommen hast.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...