2017-03-10 6 views
0

Mon entreprise possède trois bases de données différentes auxquelles nous nous connectons: Production, Testing et Development.Besoin de vérifier laquelle de mes trois bases de données je suis connecté à ASP.Net MVC

Existe-t-il un moyen simple de vérifier à quelle base de données le site est actuellement connecté depuis mon contrôleur C#? Motif: Ma gestion des exceptions est configurée pour déclencher l'envoi d'un e-mail lorsqu'une erreur se produit, mais parfois je ne souhaite pas recevoir toutes les erreurs Development DB dans ma boîte de réception et je préfère obtenir la DB de production ou la base de données emails.

Je voudrais faire quelque chose de simple comme

if(CurrentDatabaseConnection.Name == "Dev") 
{ 
    // don't email me 
} 

Répondre

-1

Vous pouvez apprendre à connaître le nom de la base de données avec le code ci-dessous

dbContextInstance.Database.Connection.Database

+0

J'ai répondu comment vous pouvez obtenir le nom de la base de données dans le code. C'était vous attendiez. –

2

Je pense que la base de données en cours d'utilisation, ne doit pas déterminer le comportement.

Ma suggestion serait de créer un appSetting dans votre web.config qui dit ce « mode » que votre application est.

<appSettings> 
    <add key = "Mode" value="Dev"/> <!-- Dev, Staging, Prod --> 
</appSettings> 

Et puis vérifier cette valeur par le biais ConfigurationMananger.AppSettings [ « Mode »] à voir.