[EF][C#] Pas d'exception sur ouverture de base
Bonjour,
--------
J'ai ce code, destiné à connecter mon modèle sur une base en sqlite :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| public static BaseEntities OuvrirDataBase(string FileName)
{
BaseEntities result;
try
{
// Créer un constructeur automatique de chaîne de connexion
EntityConnectionStringBuilder ecsb = new EntityConnectionStringBuilder();
// Indique le serveur de bdd utilisé (SQLite = API ne nécessitant pas de serveur)
ecsb.Provider = "System.Data.SQLite";
// Indiquer les chemins d'accès au modèle (copié depuis app.config)
ecsb.Metadata = "res://*/Modele.csdl|res://*/Modele.ssdl|res://*/Modele.msl";
// Donner le nom du provider
ecsb.ProviderConnectionString = string.Format("data source={0}", FileName);
// ouvrir la base en utilisant la chaîne de connexion construite
result = new BaseEntities(ecsb.ConnectionString);
}
catch (Exception) // Echec de l'opération
{
MessageBox.Show("Impossible d'ouvrir le facturier\n" + FileName);
result = null; // échec de la tentative
}
// Retourne la base ou null
return result; |
Ca fonctionne, mais le problème est que même si le fichier "FileName" n'existe pas, je n'ai pas d'exception, et donc je n'ai jamais le message d'erreur.
Comment puis-je vérifier cette validité, sachant que si la base existe, mais est vide, je ne dois pas avoir d'erreur?
Merci
Claude