Jag försöker att använda ett exempel jag hittade på nätet ang connectionstring. Du måste lägga till följande using-direktiv: Tack Joakim, men mera problem. Det stämmer att du måste ha en hårdkodad sökväg. Web.Config filen är bara en konfigurationsfil (XML) och ingen kod körs. Ok, inebär det då att jag är tvungen att hålla på och ändra den varje gång som jag skall Du laddar helt enkelt in connectionstringen från web.config som du fått svar på tidigare i tråden och sedan slänger du in den strängen i oledbconnection konstruktorn. Med risk för att vara tjatig, men det strular för mig.Connectionstring i ASP.net
I webbconfig.
<code>
<appSettings>
<add key="ConnectionString" value="(your connection string)" />
</appSettings>
</code>
...och sedan på sidan..
<code>
string connstring = ConfigurationSettings.AppSettings["ConnectionString"];
</code>
..nu får jag ett error (obs jag visar inte min databas eller sökväg)
<code>
c:\inetpub\wwwroot\ASP_Net-Test\News\news.aspx.cs(35): The type or namespace
name 'ConfigurationSettings' could not be found (are you missing a using directive or an assembly
reference?)
</code>
Varför blir det på detta viset??
Hur bör jag göra för att få det att fungera?
Hur kan man göra för att enbart ha en kopling till hela webbsiten?Sv: Connectionstring i ASP.net
<code>
using System.Configuration;
</code>
Eller skriva ut fullständigt namn:
string connectionString = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];Sv:Connectionstring i ASP.net
<code>
<add key="ConnectionString" value="(Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " +
Server.MapPath("Data") + "\allt.mdb;Persist Security Info=False)" />
</code>
Detta fungerar inte, måste sökvägen vara hårdkådad?
Sen fick jag för mig att jag skulle använda den så här:
<code>
DBConn = new OleDbConnection(connstring);
</code>
Jag får fel här med, så jag är väll fel ute igen !!!Sv: Connectionstring i ASP.net
Sv:Connectionstring i ASP.net
skicka upp filen till min "riktiga" webbplats?
Nästa fråga, hur använder jag den?
Normalt så gör jag så här:
<code>
DBConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source= "
+ Server.MapPath("Data") + "\\allt.mdb;Persist Security Info=False");
SQL = "SELECT Title FROM t_Lyrics WHERE left(Title,1) = '" + (arInfo[x]) + "' ORDER BY left(Title,1)";
Adapter = new OleDbDataAdapter(SQL,DBConn);
</code>
Hur gör jag nu??Sv: Connectionstring i ASP.net
Du kan ha en web.config liggandes lokalt på utvecklingsservern och en annan liggandes på releaseservern. Då behöver du aldrig ladda upp web.config om du inte gör någora ändringar i den som måste upp till releasen också.
Du kan dock om du vill också formatera strängen och i programet slänga in sökvägen, men det rekommenderas inte eftersom själva idéen med web.config i princip försvinner. För att få in Server.MapPath kan det ändå vara en ide, men gör då en egen funktion som du använder varje gång du vill ladda in connectionstringen.
Nu vet jag inte om det fungerar likadant i C# som i VB, men för att formatera en sträng kan du köra
<code>
String connstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source={1}\\allt.mdb;Persist Security Info=False";
connstring = String.Format(connstring, Server.MapPath("Data"));
DBConn = new OleDbConnection(connstring);
</code>Sv:Connectionstring i ASP.net
Min web.config
<code>
<configuration>
<appSettings>
<add key="ConnectionString" value="(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=
C:\Inetpub\wwwroot\ASP_Net-Test\Vistext\Data\allt.mdb;Persist Security Info=False)" />
</appSettings>
</code>
I codebehind
<code>
private OleDbConnection DBConn;
string connstring = ConfigurationSettings.AppSettings["ConnectionString"];
DBConn = new OleDbConnection(connstring);
</code>
Om ni inte tycker att jag har följt vad ni har sagt, så är det så här som jag har uppfattat det och som
jag har hittat på nätet.
ERROR:
<code>
Ogiltigt värde för nyckeln persist security info.
Beskrivning: Ett undantag som inte kunde hanteras inträffade när den aktuella webbegäran kördes.
Mer information om felet och var i koden det uppstod finns i stackspårningen.
Undantagsinformation: System.ArgumentException: Ogiltigt värde för nyckeln persist security info.
</code>
Jag har försökt med den typen av formatering som tidigare insändare har rått mig, men ingen skillnad
på resultat. Skall jag ge upp?
[REDIGERAT]
Efter mycket sökande och plockande, så kom jag på felet:
<code>
<add key="ConnectionString" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=
C:\Inetpub\wwwroot\ASP_Net-Test\Vistext\Data\allt.mdb;Persist Security Info=False;" />
</code>
Tack ni alla som har försökt att hjälpa mig.