Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[ASP.net/C#] Connectionstring niet leesbaar vanuit klasse

Pagina: 1
Acties:

  • Intrepidity
  • Registratie: December 2003
  • Laatst online: 24-06-2024
Ik ben traditioneel een PHP-mens, maar ben nu aan het proberen of ASP.net makkelijker en/of krachtiger is voor waar ik het voor gebruik.
Ik red mezelf tot nu toe aardig, maar nu loop ik toch tegen een probleempje aan. Het zit zo:
Ik wil een pagina maken die gebruik maakt van een gelaagd model. Ik heb mijn Default.aspx+Default.aspx.cs die voor de weergave zorgen, een klasse genaamd Business die alle business-logica bevat, en een klasse genaamd Data die de databaseafhandeling moet gaan doen.
In mijn web.config heb ik een connection-string gedefineerd om te connecten naar mijn lokaal draaiende MS SQL 2005 server instantie.

Ik wil nu proberen om in de klasse Business een Data-object aan te maken, en in de constructor hiervan wil ik de connectionstring meegeven.
Dit doe ik als volgt:
C#:
1
Data data = new Data(ConfigurationSettings.AppSettings["connStr"]);


Ik heb 2 problemen:
  • Als ik dit zo probeer uit te lezen blijft de connectionstring leeg. Ook in mijn aspx pagina heb ik geprobeerd deze te response.write'en, ook die blijft leeg, connectionstring wordt dus niet opgehaald
  • Volgens VS.net 2005 is deze methode deprecated, maar de nieuwe manier (via ConfigurationManager als ik het me goed herinner) krijg ik niet aan de praat. De methode om de string op te halen mag niet static gecalled worden, maar een instantie aanmaken mag ook niet..
Kan het feit dat deze methode deprecated is overigens het eerste probleem veroorzaken? of is microsoft toch wel zo aardig om de functionaliteit te behouden?

Alvast bedankt voor de hulp :)

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:37

TeeDee

CQB 241

Zou gewoon moeten compileren, ook al is het deprecated.
Laat eens het relevante stukje van je web.config zien?
Verwacht data een string of een connectionstring?

O, en waarom krijg je je ConfigurationManager.ConnectionString["string"] niet aan de praat? Krijg je errors of wordt ConfigurationManager niet via je intellisense getoond?

En als laatste:
ik vermoed dat jouw web.config er zo uit ziet:
XML:
1
2
3
4
<appSettings />
<connectionstrings>
 .... hier je connstring
</connectionstrings>

Mag jij drie keer raden waarom je .AppSettings["string"] leeg is.

[ Voor 79% gewijzigd door TeeDee op 13-02-2008 16:28 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Intrepidity
  • Registratie: December 2003
  • Laatst online: 24-06-2024
Hehe, ben je telepatisch?
Zo zag mijn web.config er inderdaad uit, probleem 1 is dus nu opgelost. Dat geldt ook voor probleem 2, want daar had ik de verkeerde syntax gebruikt om een property uit de configurationmanager te trekken..
Blijft toch lastig, oude kennis overboord gooien :P

Bedankt!

edit: Overigens gebruikte ik ConfigurationManager.AppSettings() om de connectionstring op te halen, da goat nie werken natuurlijk 8)7

[ Voor 18% gewijzigd door Intrepidity op 13-02-2008 16:34 ]


  • Daspeed
  • Registratie: Maart 2001
  • Laatst online: 18:10
en heb je bij gerbuik van ConfigurationManager wel een reference naar System.Configuration binnen dat project?

[ Voor 0% gewijzigd door Daspeed op 13-02-2008 16:33 . Reden: Bleh: te laat ]