2017-05-23 3 views
0

Hy, Ich habe das Problem, dass ich eine Website für Multi-Unternehmen programmieren. Ich verwende DisplayName und LabelFor. Die Site ist für jedes Unternehmen ähnlich, nur der LabelFor-Name ändert sich. Ich habe viele mehrsprachige Möglichkeiten mit Ressourcendateien (resx) und Kultur gefunden. Aber ich möchte das nicht verwenden, weil es kein Kultur- "Problem" ist. So ist die Frage ...MVC 4 - multi DisplayName in Modell

  1. Kann ich Resx-Dateien ohne Kultur verwenden? Vielleicht steuern mit einem anderen globalen Parameter
  2. Kann ich die Zeichenfolge aus der Datenbank erhalten mit „Stringkey“ und Unternehmen „id“ (zB: Search.Label.Firstname,
  3. Gibt es eine andere Möglichkeit/Idee, dies zu tun
  4. ?

Thx viel Chris

Antwort

1

Hier sind ein paar Optionen:

  1. erstellen custom HTML helper (vielleicht nur eine Überlastung der LabelFor), um Ihr Label aus clientbasierten Ressourcendateien zu ziehen. Benennen Sie jede Ressourcendatei nach dem Geschäft, für das sie gilt. Sie könnten leicht einen globalen Status von einem HTML-Helfer lesen. Sie haben weiterhin die Möglichkeit, die Labels für jedes Geschäft zu lokalisieren.
  2. Anstatt LabelFor zu verwenden, machen Sie den Etikettentext zu Ihrem Ansichtsmodell. Sie hätten dann viele Möglichkeiten, wo Sie es abrufen können.

public class MyModel 
{ 
    public string NameLabel { get; set; } 
    public string Name { get; set; } 
}