ASP.NET MVC

Beiträge zum Thema ASP.NET MVC

ADO.NET: Datenbankstruktur aktualisieren

2

Angenommen ihr habt eine Tabelle, auf die ihr mit dem ADO.NET Provider zugreift. Ihr habt ihn schön konfiguriert und nutzt ihn auch schon produktiv. Dieses Model könnte in etwa so aussehen:

ADO.NET Model

Auch wenn man sich vorher Gedanken gemacht hat, kann es sein, dass sich die Struktur der Datenbank ändert. Ein neues Feld muss hinzugefügt werden als Beispiel. Wie in meinem Beispiel.
Datenbankänderung

Nun möchte ich diese Änderungen natürlich auch möglichst einfach in mein Model bekommen, ohne dies neu anzulegen. Öffnet das Model in Visual Studio per Doppelklick, so dass ihr in den Designer kommt. Rechtsklickt dort irgendwo und wählt “Modell aus Datenbank aktualisieren”.
ADO.NET Modell aktualisieren

Wählt im folgenden Bildschirm den Reiter “Aktualisieren”. Hierbei sei erwähnt, dass nun alles aus der Datenbank aktualisiert wird! Also solltet ihr euch die Änderungen dann noch mal ansehen.
ADO.NET Aktualisieren

Zu guter letzt habt ihr nun das neue Feld in eurem Ado.Net Modell.
adonet5

Buch: jQuery – Kurz und gut

1

Ich beschäftige mich immer mehr mit ASP.NET MVC und komme so nicht vor JavaScript Frameworks wie jQuery herum. Ich finde das Framework sehr mächtig und es erleichtert einem die Arbeit ungemein. Daher habe ich mir ein kleines Taschenbuch dazu gekauft:

jQuery - kurz und gut

Ich habe bis jetzt zwar nur mal kurz durchgeblättert, aber es scheint recht interessant zu sein und einen kleinen Einblick ins innere zu geben.
Nun brauch ich nur noch ein ordentliches Buch über LINQ

C#: Hashes versalzen

1

Kleine Vorgeschichte
Heute habe ich mir die Möglichkeit angeschaut, eigene MembershipProvider für ein ASP.NET MVC Projekt zu schreiben. Selbstverständlich wollte ich die Passwörter in der Datenbank nur als Hash speichern. Gleich ist mir wieder ein altes Problem aufgefallen, welches mir auch damals bei PHP aufgefallen ist. Vorteil der Hashmethode ist die fehlende Möglichkeit, wieder in Klartext umgewandelt zu werden. Allerdings ist der Hash immer gleich.
So wird aus

md5(“test”) immer “098f6bcd4621d373cade4e832627b4f6″

Das Problem
Selbst wenn nun ein böser Hacker die Datenbank ausliest, kommt er so an das Passwort. Der einfachste Weg liegt dabei so nahe, dass man gar nicht drauf kommt. Gebt mal so einen Hash bei Google ein, man wird das Passwort herausfinden können. Und mittlerweile gibt es ganze Rainbow-Tabellen, so dass es immer einfacher wird, die Werte zu vergleichen.
Aufgrund des Einfallsreichtums mancher Menschen tippe ich mal darauf, dass man ca. 50% der Passwörter der Otto-Normal-Benutzer daher innerhalb weniger Minuten knacken könnte.
(weiterlesen …)

ASP.NET MVC: Seiten gehen nicht auf IIS5.1

0

Wir hatten folgendes Problem, wir entwickeln an einer ASP.NET Seite. Mit dem lokalen Entwicklungswebserver funktionierten die Seiten tadellos.
Als wir sie dann hochluden, gingen einige Seiten nicht und wir wussten nicht genau warum.

Nach einiger Sucherei konnten wir dies auf die <connectionStrings> in der web.config zurückführen.
Durch einen Kollegen stand dort folgende zwei Einträge drin:

    <add name="PersonalSettingsEntities"
    connectionString="metadata=res://*/Models.Personal.csdl|res://*/Models.Personal.ssdl|res://*/Models.Personal.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=WXPAPP02\SQLEXPRESS;Initial Catalog=IntranetDB;User ID=sa;Password=sa;Pooling=False;MultipleActiveResultSets=True&quot;"
    providerName="System.Data.EntityClient" />
    <add name="PersonalEntities"
    connectionString="metadata=res://*/Models.Home.csdl|res://*/Models.Home.ssdl|res://*/Models.Home.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=WXPAPP02\SQLEXPRESS;Initial Catalog=IntranetDB;User ID=sa;Password=sa;Pooling=False;MultipleActiveResultSets=True&quot;"
    providerName="System.Data.EntityClient" />

Der Unterschied zu den anderen Connectionstrings war, dass diese Einträge die Einträge “Pooling=False;” enthält, und den Eintrag “Persist Security Info=True;” war nicht enthalten.
Die Zeilen entsprechend abgeändert, schon ging es.
Werde nachher noch mal genaue Erklärung zu den beiden Parametern raussuchen.

ASP.NET MVC: nl2br() Ersatz für HtmlHelper

3

Da ich ja ursprünglich von PHP herkomme, habe ich natürlich eine schöne Funktion wie nl2br() vermisst.
Da ich nichts gescheites gefunden habe, habe ich natürlich die Funktionen von C#3.0 ausgenutzt und einfach die HtmlHelper Class erweitert.
Vielleicht kann es ja wer gebrauchen.

using System.Web.Mvc;

namespace MyProject.CustomExtensions
{
    public static class MyHtmlHelperExtensions
    {
        public static string Encode(this HtmlHelper html, string text, bool convertNewLine)
        {
            if (convertNewLine)
            {
                return html.Encode(text).Replace("\n", "<br />");
            }
            return html.Encode(text);
        }

        public static string Encode(this HtmlHelper html, object text, bool convertNewLine)
        {
            if (convertNewLine)
            {
                return html.Encode(text).Replace("\n", "<br />");
            }
            return html.Encode(text);
        }
    }

}

nach oben