Toon posts:

[ASP.NET v2] Connectiestring probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Bij voorbaat: De code is geschreven in ASP.NET v2 (whidbey) met VB als taal.

Het volgende:
In de web.config heb ik een connectiestring naar een mssql database gezet, deze lees ik in de pagina uit met:
code:
1
2
3
<script runat="server" language="VB">
    Public cs As String = ConfigurationSettings.AppSettings("dtbcon2")
</script>


Dat gaat allemaal prima en als ik gewoon los in de pagina <% cs %> plaatst laat ie netjes de connectie string zien, maar het probleem begint als ik iets wil opvragen met een datasource:
code:
1
2
3
4
     <asp:sqldatasource id="Plaatje1" runat="server" 
selectcommand="SELECT * FROM Plaatjes 
WHERE PlaID=(SELECT PlaID FROM Pagina WHERE PagID=?)" 
providername="System.Data.OleDb" connectionstring="<% cs %>" >


Het is duidelijk fout want het weigert te werken, mijn vraag is nu, hoe kan ik de variable cs die ik heb gedeclareerd in het stukje van de datasource gebruiken?

[ Voor 18% gewijzigd door Verwijderd op 01-07-2004 12:18 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
Je hebt een SQL Server DB en je gebruikt de OleDb drivers? Waarom gebruik je de SqlClient provider niet?
Waarom zet je trouwens de volledige connection-string niet in de web.config?


Wat is selectcommand voor variable type ?
Tuurlijk werkt het niet (as in, er wordt geen data opgehaald). Je hebt geen Command, geen connection, etc...

https://fgheysels.github.io/


Verwijderd

Topicstarter
Nou het is vrij simpel in whidbey werk je een beetje anders dan met "normaal" vb, maar dat had je wellicht al gezien. Het enige wat ik hoef te weten hoe ik die string in dat datasource stuk duw...

En anders een goede oplossing zou leuk zijn.

Btw, ik zoek al bijna 2 dagen op google en daar kom ik dus echt niet uit

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
Wat als je eerst eens die parameter in je SQL Statement wegliet, en om te testen ff een ander / eenvoudig sql statement pakte?
Trouwens, als je een MS SQL Server DB hebt, zie ik niet in wat die OleDb provider daar doet.

en dat VB.NET wat anders is dan de 'gewone' VB, weet ik ondertussen wel hoor. ;)

https://fgheysels.github.io/


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
De MSDN zegt trouwens dit:

code:
1
2
3
<asp:sqldatasource id="blaat" runat="server" _
connectionstring="server=melp;database=pubs;Integrated Security=true " _
SelectCommand="SELECT * FROM tabel"/>


Als je volledige connectionstring dus in je web.config zit, kan je die er dus zo 'inplakken' met de AppSettingsReader, zonder dat je daar nog OleDb spul moet voorzetten.

[ Voor 39% gewijzigd door whoami op 01-07-2004 12:33 ]

https://fgheysels.github.io/


Verwijderd

Topicstarter
Als ik de statement die ik dus daar plaats gewoon er neer zet is er geen probleem,
maar dat betekend wel dat ik dat (als het veranderd) 20 keer moet veranderen...

En aangezien het niet van mij is en ik (op het moment) nogal een n00b op dit gebied ben, maar wel verstand heb van meerdere andere programmeertalen, hoopte ik et op een normale manier op te lossen... Blijkt het niet normaal te zijn ;)

Maar dus de string die ik gebruik is:
code:
1
2
3
4
<appSettings>
<add key="dtbcon2" value="Provider=SQLOLEDB;
Data Source=(local)\ATOP;database=Xplor;uid=Xplor;pwd=welkom01;" />
</appSettings>

Verwijderd

Topicstarter
Maar de select command wisselt wel per pagina...

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
Kan je dan niet in je page_load oid het juiste SQL Statement gaan bepalen?
Wat veranderd er trouwens aan dat sql statement ? Gewoon de parameter ?

https://fgheysels.github.io/


Verwijderd

Topicstarter
Als ik zeg dat de query veranderd dan bedoel ik dus echt veranderen niet zo maar een parameter... Dus de tabel kan veranderen, alles wat ik wil veranderen...

Waarom focussen we ons nog steeds op dit punt als ik alleen maar vraag of het mogelijk is om een string op te vragen in het voorgestelde stukje code?

Greetz

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
Fijn, jij wilt geholpen worden. Ik niet.
Ik heb geen glazen bol, en ik kan niet ruiken wat jij wil.

En zoals ik al gezegd heb: ja, het kan.

[ Voor 18% gewijzigd door whoami op 01-07-2004 16:01 ]

https://fgheysels.github.io/


Verwijderd

Topicstarter
Nou nee, het kan niet...

Heb net mijn handen kunnen krijgen op een boek dat dieper in gaat op alle aspecten van asp.net v2 en daar in staat dat connectiestrings uit de web.config pas in de 2e beta gebruikt kunnen gaan worden in sqldatasource...

Fijn, HEERLIJK...

Nouja, ik wacht wel tot dan...

Greetz

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20:27

gorgi_19

Kruimeltjes zijn weer op :9

Vandaar dat het ook een preview / beta is; dan werken zaken nog niet of niet goed. :) Leren op basis van beta software brengt altijd een risico met zich mee. :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
Niet zo zeer leren, ik tracht een applicatie van een ander weer op de rails te krijgen, maar die persoon heeft et zooitje dus in die nieuwe versie geschreven :(

Lang verhaal kort makend: De applicatie werkt prima, maar ik zou er graag nog wat aanpassingen in doorvoeren zodat et voor (toekomstige) updates makkelijker wordt...

Greetz

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20:27

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 03 juli 2004 @ 21:23:
Niet zo zeer leren, ik tracht een applicatie van een ander weer op de rails te krijgen, maar die persoon heeft et zooitje dus in die nieuwe versie geschreven :(

Lang verhaal kort makend: De applicatie werkt prima, maar ik zou er graag nog wat aanpassingen in doorvoeren zodat et voor (toekomstige) updates makkelijker wordt...

Greetz
Als ik mijn mening mag geven: Doe het niet; zinloos. :) MS loopt zelf nog een hoop te klooien met zaken er in toevoegen / verwijderen. Zo zou eerst objectspaces er in komen, nu is het nog maar de vraag of het er in komt of niet.

Je moet als je wel dingen aan past, er rekening mee houden dat het in de volgende beta weer niet gaat werken. :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
Ik zou nooit (bedrijfskritische) software schrijven met een taal/platform die nog in een beta-stadium verkeerd....

https://fgheysels.github.io/


Verwijderd

Topicstarter
Tja, het gaat dus in dit geval over een website en de persoon die de website gemaakt heeft was zo enthousiast over de functies in whidbey. Daarom is de website gemaakt in deze taal (alhoewel ik het afgeraden had, maar goed ;)) en nu is het van belang dat het geheel wel gaat werken, anders ontwikkeld er een probleem waar ook ik me niet aan wil branden :P

Ik probeer er het beste maar van te maken, maar ik weet heel goed dat het niet verstandig is om juist niet in een taal die nog in ontwikkeling is wat te gaan maken.

Greetz

  • TlighT
  • Registratie: Mei 2000
  • Laatst online: 22-03 10:40
Verwijderd schreef op 01 juli 2004 @ 12:17:
Het is duidelijk fout want het weigert te werken, mijn vraag is nu, hoe kan ik de variable cs die ik heb gedeclareerd in het stukje van de datasource gebruiken?
Volgens mij gaat dit alleen via databinding, dus:
code:
1
2
3
4
     <asp:sqldatasource id="Plaatje1" runat="server" 
selectcommand="SELECT * FROM Plaatjes 
WHERE PlaID=(SELECT PlaID FROM Pagina WHERE PagID=?)" 
providername="System.Data.OleDb" connectionstring="<%# cs %>" >

en dan Page.DataBind() of Plaatje1.DataBind().

Verwijderd

Topicstarter
Dat mag je me iets verder uitleggen... :S
Pagina: 1