finns det något sätt så man kan dynamiskt ändra sökvägen till databasen i exemplet nedan. Hej Joakim En connectionsträng placerar man i web.config istället. Det är en fil som automatiskt finns att tillgå i webbprojekt när du skapar ett nytt.Vill inte ha en statisk adress till min databas
Som ni ser så är static string dbSource statiskt och går ej att påvärka.Har jag inte static får jag fel.
Kan man skriva om detta så det går att ändra sökvägen. tex. Server.MapPath() + "fin_hegubutik.mdb"
OleDbConnection dbConn;
static string dbSource = @"D:\home\h\hegu\dbq\sv_hegubutik.mdb";
string dbProvider = "Provider=Microsoft.Jet.OleDb.4.0;Data Source=" + dbSource;
public sv_dbKontroll()
{
dbConn = new OleDbConnection(dbProvider);
}
public void InsertNewData(string sql)
{
dbConn.Open();
string dbSQL = sql;
OleDbCommand dbComm = new OleDbCommand(dbSQL,dbConn);
dbComm.ExecuteNonQuery();
dbConn.Close();
}
public DataTable GetData(string sql)
{
dbConn.Open();
DataSet dbDataSet = new DataSet();
OleDbDataAdapter dbAdapt = new OleDbDataAdapter(sql,dbConn);
dbAdapt.Fill(dbDataSet,"Product");
dbConn.Close();
return dbDataSet.Tables["Product"];
}
Sv: Vill inte ha en statisk adress till min databas
Kortfattat kan jag säga att "static" inte i sig betyder att man inte kan ändra raden, "static" betyder att variabeln är kopplade till klassen i sig och inte till instansen av klassen.
Alltså, Nej, det är inte ett problem att bygga upp strängen dynamiskt.
Om du skriver ner hur du skulle vilja ha det och sedan postar det så kan vi se ifall vi kan får det att fungera.
// MvH BjörneSv:Vill inte ha en statisk adress till min databas
<code>
<configuration>
<appSettings>
<add key="connectionstring" value="data source=localhost; database=mindb; integrated security=true" />
</appSettings>
</code>
Sen för att hämta connectionstring eller någon annan data från denna sektion så använder du följande kod för att göra det:
<code>
Dim constr As String = ConfigurationSettings.AppSettings("connectionstring")
</code>