Wie man den ersten Buchstaben Rasiermesser groß schreibt

7

Ich bin neu bei MVC und habe online keine Lösung dafür gefunden.

Ich habe den HTML-Code als:

%Vor%

Ich möchte, dass der erste Buchstabe der Adresse 1 Großbuchstaben sind, z. Etwas Straße statt etwas Straße.

Jetzt habe ich einen Klassenclient und eine Eigenschaft Address1 und benutze EF, um die Adresse wie folgt zu erhalten:

%Vor%

Ich hoffe, es macht Sinn.

    
Zaki 03.10.2012, 16:33
quelle

8 Antworten

5

Es ist am besten, die Präsentationsschicht und die Datenzugriffsebene getrennt zu halten. Erstellen Sie ein Ansichtsmodell, das die ORM- / Entitätsrahmenobjekte umschließt oder übersetzt.

%Vor%     
McGarnagle 03.10.2012, 16:47
quelle
13

einfache Lösung könnte sein

%Vor%

Verwenden Sie dann unten css, um Ihren ersten Buchstaben groß zu schreiben und dann fertig.

%Vor%     
kiflay 24.08.2015 10:28
quelle
6

Sie könnten eine Teilklasse für Client mit einer Eigenschaft hinzufügen, die Address1 im Titel zurückgibt:

%Vor%

Sie würden dann TitleCaseAddress1 in Ihrem Razor verwenden:

@Html.DisplayFor(model => model.TitleCaseAddress1) <br />

Referenz: Ссылка

    
Gromer 03.10.2012 16:44
quelle
3

Hier ist der korrekte Weg, um zu erreichen, was Sie wollen, ich habe es für Sie implementiert.

Es gibt ein HtmlStringFormatter.Create() , mit dem Sie einen Delegaten übergeben und Ihren eigenen anonymen Formatierer erstellen können.

Codebeispiel:

%Vor%

Wenn Sie einen benutzerdefinierten Formatierer erstellen möchten, leiten Sie von HtmlStringFormatter ab und legen Sie seine Delegat-Eigenschaft auf die von Ihnen gewünschte Manipulation fest.

Codebeispiel:

%Vor%

Alle Klassen:

%Vor%

Vergessen Sie nicht, der Web.Config im Ordner "Views" die folgenden Zeilen hinzuzufügen:

%Vor%

Dies schließt die Formatierungen und die Helfererweiterung automatisch mit ein, so dass Sie sie nicht in jede Ansicht einfügen müssen, in der Sie sie verwenden möchten.

    
Aviran Cohen 03.10.2012 19:36
quelle
3

Für jeden, der dies unbedingt in Razor machen möchte.
In diesem Beispiel wird der angemeldete Benutzername konvertiert. Ersetzen Sie sie durch Ihre String-Variable.

Dies erhält den ersten Buchstaben und konvertiert ihn in den oberen:

@ (@ User.Identity.GetUserName (). ToString (). Teilzeichenfolge (0, 1). ToUpper ())

Dies erhält die verbleibende Zeichenfolge.

@ (@ User.Identity.GetUserName (). ToString (). Substring (1, User.Identity.GetUserName (). ToString (). Länge - 1))

Setze sie einfach zusammen, um die ganze Zeichenfolge zu erhalten.

@ (@ User.Identity.GetUserName (). ToString (). Teilzeichenfolge (0, 1) .ToUpper ()) @ (@ User.Identity.GetUserName (). ToString (). Teilzeichenfolge (1, Benutzer. Identity.GetUserName (). ToString (). Länge - 1))

    
TomS 06.01.2016 17:50
quelle
2

Sie können dafür einfach C # -Code verwenden: Beispiel aus: Ссылка

%Vor%     
Rob 03.10.2012 16:37
quelle
0

Ich weiß, dass die ursprüngliche Frage darin bestand, jedes Wort in der ganzen Zeichenfolge groß zu schreiben. Aber ich habe hier versucht, eine Lösung zu finden, um den ersten Buchstaben einer Zeichenkette groß zu schreiben. Ich stimmte Kiflays Antwort als beste Lösung für das OP zu. Aber erweitert, um nur den ersten Buchstaben zu ändern, in meiner Verwendung.

CSS:

%Vor%     
Khaneliman 18.04.2017 20:45
quelle
0

Verwenden Sie einfach wie folgt

%Vor%     
shana 21.02.2018 04:53
quelle