Je travaille avec une base de données à l'aide de C #. Mon problème vient lorsque j'essaie d'obtenir une valeur de app.config à dire avec quelle base de données le projet doit fonctionner fort>. C'est ce que j'essaie: P> namespace LanzamientoProyectos.BD
{
public class ConsultasBD : IDisposable
{
private SqlConnection conexionBD;
Configuration config = ConfigurationManager.OpenExeConfiguration(Application.ExecutablePath);
string valEmp = config.AppSettings.Settings["EMPRESA"].Value;
private const string Empresa = "3";
public ConsultasBD()
{
conexionBD = new SqlConnection(ConfigurationManager.AppSettings["ggConnectionString"]);
}
4 Réponses :
Le problème réside dans ces deux lignes: c # ne vous permet pas de vous référer à d'autres champs ( Un regard sur la documentation est utile ici: Erreur du compilateur CS0236 . P> Si vous essayez d'initialiser une variable à l'extérieur d'une méthode, envisagez d'effectuer l'initialisation à l'intérieur du constructeur de classe. P>
blockQuote> p> config code> dans ce cas) de cette manière. Si vous souhaitez accéder à
config code>, vous devez le faire dans le constructeur ou toute autre méthode. P>
Les initialisations à l'intérieur du constructeur:
public class ConsultasBD : IDisposable { private SqlConnection conexionBD{get;set;}; Configuration config = null; string valEmp = String.Empty; private const string Empresa = "3"; public ConsultasBD() { config = ConfigurationManager.OpenExeConfiguration(Application.ExecutablePath); valEmp = config.AppSettings.Settings["EMPRESA"]; conexionBD = new SqlConnection(config.AppSettings["ggConnectionString"]); } }
Comment puis-je accéder à cette variable dans l'app.config dans cette classe? P>
Vous avez eu raison dans la deuxième utilisation dans votre exemple. p>
Accédez à la valeur comme ceci: p>
xxx pré> blockQuote>
supposons que vous stockez votre chaîne de connexion juste là où il doit être stocké: alors vous pouvez y accéder comme ceci: p>
Avez-vous essayé et Google ces messages d'erreur? Il y a beaucoup de réponses ici qui aideront.
Bien sûr, mais j'ai essayé tout ce que j'ai vu et je ne trouve pas de solution.
Pourquoi ne stockeriez-vous pas vos chaînes de connexion où il aurait dû être stocké?
Si vous souhaitez stocker la chaîne de connexion dans l'app.config, je vous suggère de pouvoir définir l'app.config dans le projet actuel au lieu d'autres endroits.