J'essaye d'écrire la chaîne de connexion à Web.config comme ceci:
<connectionStrings>
<add name="Dbconnection" connectionString="Server=localhost;
Database=OnlineShopping ; Integrated Security=True"/>
</connectionStrings >
et lisez-le comme ceci:
string strcon =
ConfigurationManager.ConnectionStrings["Dbconnection"].ConnectionString;
SqlConnection DbConnection = new SqlConnection(strcon);
lors de l'exécution du programme, j'obtiens une erreur en raison de la référence nulle. mais quand j'utilise ce code:
SqlConnection DbConnection = new SqlConnection();
DbConnection.ConnectionString =
"Server=localhost; Database=OnlineShopping ; Integrated Security=True";
Je ne reçois aucune erreur et le programme fonctionne correctement! Quel est le problème?
Ajouter une référence pour ajouter System.Configuration
: -
System.Configuration.ConfigurationManager.
ConnectionStrings["connectionStringName"].ConnectionString;
Vous pouvez également modifier le fichier WebConfig pour inclure le nom du fournisseur: -
<connectionStrings>
<add name="Dbconnection"
connectionString="Server=localhost; Database=OnlineShopping;
Integrated Security=True"; providerName="System.Data.SqlClient" />
</connectionStrings>
Web.config:
<connectionStrings>
<add name="ConnStringDb" connectionString="Data Source=localhost;
Initial Catalog=DatabaseName; Integrated Security=True;"
providerName="System.Data.SqlClient" />
</connectionStrings>
c # code:
using System.Configuration;
using System.Data
SqlConnection _connection = new SqlConnection(
ConfigurationManager.ConnectionStrings["ConnStringDb"].ToString());
try
{
if(_connection.State==ConnectionState.Closed)
_connection.Open();
}
catch { }
Êtes-vous sûr que votre fichier de configuration (web.config) est au bon endroit et que la chaîne de connexion est réellement dans le fichier (généré)? Si vous publiez votre fichier, le contenu de web.release.config peut être copié.
La configuration et l'accès à la chaîne de connexion me semblent corrects. Je voudrais toujours ajouter un nom de provid
<connectionStrings>
<add name="Dbconnection"
connectionString="Server=localhost; Database=OnlineShopping;
Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
Essayez ceci Après avoir ouvert le fichier web.config dans l'application et ajouté un exemple de connexion à la base de données dans la section connectionStrings comme ceci
<connectionStrings>
<add name="yourconnectinstringName" connectionString="Data Source= DatabaseServerName; Integrated Security=true;Initial Catalog= YourDatabaseName; uid=YourUserName; Password=yourpassword; " providerName="System.Data.SqlClient"/>
</connectionStrings >
essaye ça
var configuration = WebConfigurationManager.OpenWebConfiguration("~");
var section = (ConnectionStringsSection)configuration.GetSection("connectionStrings");
section.ConnectionStrings["MyConnectionString"].ConnectionString = "Data Source=...";
configuration.Save();
Essayez d'utiliser WebConfigurationManager
au lieu de ConfigurationManager
Après avoir ouvert le fichier web.config dans l'application, ajoutez un exemple de connexion à la base de données dans la section connectionStrings comme ceci:
<connectionStrings>
<add name="yourconnectinstringName" connectionString="Data Source= DatabaseServerName; Integrated Security=true;Initial Catalog= YourDatabaseName; uid=YourUserName; Password=yourpassword; " providerName="System.Data.SqlClient" />
</connectionStrings>
Déclaration de connectionStrings dans le fichier web.config:
<add name="dbconnection" connectionString="Data Source=Soumalya;Integrated Security=true;Initial Catalog=MySampleDB" providerName="System.Data.SqlClient" />
Aucun nom d'utilisateur ni mot de passe n'est nécessaire pour accéder au serveur de base de données . Maintenant, écrivez le code pour obtenir la chaîne de connexion à partir du fichier web.config dans notre fichier codebehind. Ajoutez l'espace de noms suivant dans le fichier codebehind.
using System.Configuration;
Cet espace de noms est utilisé pour obtenir les détails de la section de configuration à partir du fichier web.config.
using System;
using System.Data.SqlClient;
using System.Configuration;
public partial class _Default: System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) {
//Get connection string from web.config file
string strcon = ConfigurationManager.ConnectionStrings["dbconnection"].ConnectionString;
//create new sqlconnection and connection to database by using connection string from web.config file
SqlConnection con = new SqlConnection(strcon);
con.Open();
}
}