2016-05-10 4 views
0

Ich verfolge diese ältere Antwort, die ich auf ein Problem fand ich hatte: Set default for DisplayFormatAttribute.ConvertEmptyStringToNull to false across siteWo wir eine eigene DataAnnotationsModelMetadataProvider registrieren

Aber ich bin zu MVC ziemlich neu, so, wenn er sagt Then register it in your app_start:

Well App_Start ist ein Ordner mit einigen Klassen drin, ich habe BundleConfig, FilterConfig, RouteConfing and Startup.Auth Also in welcher dieser Klassen sollte ich es eintragen?

Antwort

1

Zunächst öffnen Sie Ihre Datei Global.asax. Dort finden Sie eine Application_Start-Methode. Es kann so etwas wie dieses (Sie eigentliche Code variieren) aussehen

protected void Application_Start() 
    { 
     AreaRegistration.RegisterAllAreas(); 
     FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); 
     RouteConfig.RegisterRoutes(RouteTable.Routes); 
     BundleConfig.RegisterBundles(BundleTable.Bundles); 
    } 

Die Application_Start Methode wird in jede der Klassen aufrufen Sie im App_start Ordner. Ursprünglich würden wir all diesen Code in Global.asax aufnehmen, aber er wurde ziemlich voll, also wurde ein Muster entwickelt, um in App_start einzelne Klassen zu erstellen und sie aufzurufen.

Die Zeile, die Sie hinzufügen müssen, um direkt wie diese

unter allen anderen Anrufe werden könnte
protected void Application_Start() 
    { 
     AreaRegistration.RegisterAllAreas(); 
     FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); 
     RouteConfig.RegisterRoutes(RouteTable.Routes); 
     BundleConfig.RegisterBundles(BundleTable.Bundles); 

     ModelMetadataProviders.Current = new CustomModelMetadataProvider(); 
    } 

Wenn Sie, dass die Application_Start Methode zu finden wird immer überladen, können Sie das Muster replizieren, indem eine statische Klasse zu schaffen, in den Ordner app_start und den Aufruf einer statischen Methode, um die eigentliche Arbeit zu erledigen.

1

Global.asax Datei im Root Ihres Projekts enthält Application_Start Methode

Verwandte Themen