come da titolo ho un problema di connessione ad un database sql server 2005 creato su [nomecomputer]\SQLEXPRESS ;
ho qst pagine:
1. default.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
DataSet DSet = new DataSet();
string Cnnstr = System.Configuration.ConfigurationSettings.AppSett ings["CN1"].ToString();
bool ret = false;
ret = clsFunctions.LoadDataSetFromSqlStatement(Cnnstr, "SELECT cognome FROM utente", "PROVA", ref DSet, true);
if (ret == true)
{
DSet.Tables["PROVA"].Rows[0]["cognome"].ToString();
System.Console.Write(DSet.Tables["PROVA"].Rows[0]);
}
else
{ Response.Write("c'è un errore"); }
}
}
2. web.config
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="CN1" value="Data Source= WXP-ILARIA\\SQLEXPRESS;Initial Catalog=utenti.mdf;User Id=myUsername;Password=myPassword;" />
</appSettings>
<system.web>
<authentication mode="Forms" />
<compilation debug="true" explicit="true" />
<pages>
<namespaces>
<clear />
<add namespace="System" />
<add namespace="System.Collections" />
<add namespace="System.Collections.Specialized" />
<add namespace="System.Configuration" />
<add namespace="System.Text" />
<add namespace="System.Text.RegularExpressions" />
<add namespace="System.Web" />
<add namespace="System.Web.Caching" />
<add namespace="System.Web.SessionState" />
<add namespace="System.Web.Security" />
<add namespace="System.Web.Profile" />
<add namespace="System.Web.UI" />
<add namespace="System.Web.UI.WebControls" />
<add namespace="System.Web.UI.WebControls.WebParts" />
<add namespace="System.Web.UI.HtmlControls" />
</namespaces>
</pages>
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
</system.web>
</configuration>
3. foglio in App_Code che esegue la funzione.... (riporto solo la parte in questione):
static public bool LoadDataSetFromSqlStatement(string CnnStr, string SqlStatement, string TableName, ref DataSet DtSet, bool ClearTable)
{
SqlDataAdapter DtAdp;
SqlConnection Cnn = new SqlConnection(CnnStr);
try
{
//clear table
if (ClearTable == true) {
if (DtSet.Tables[TableName] != null) {
DtSet.Tables[TableName].Clear(); } }
//check if there are no connections opened
if (Convert.ToBoolean(Cnn.State) == false) {
Cnn.Open(); }
DtAdp = new SqlDataAdapter(SqlStatement, Cnn);
DtAdp.MissingSchemaAction = MissingSchemaAction.AddWithKey;
DtAdp.Fill(DtSet, TableName);
DtAdp.Dispose();
return true;
}
catch (System.Exception myError)
{
return false;
}
finally
{
Cnn.Close();
Cnn.Dispose();
}
}
il database è nella cartella creata da server 2005 e non nellacartella del sito che è in inetpub\wwwroot; l'errore è che la funzione ret restituisce false a causa della mancata connessione al database, mentre dovrebbe restituire true se questo si è connesso e ha ricevuto i dati... qlk idea di cosa non va nel codice postato?
ciao e grazie :P