DevTrain Startseite Advanced Developers Conference vom 14.-15. Februar 2011  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren



 

Forum: ASP.NET2.0 | Thema: AW: Datenbanken abhängig vom Host Header Namen verbinden | Von: Thomas Hauser ( 26.09.2007 23:47)

Hallo,

ein ADO.NET Provider wäre hier vermutlich ein bisschen viel Arbeit.

Einfachste Möglichkeit:
1. Designen mit einer Beispiel-Datenbank.
2. Eine Klasse schreiben, die aufgrund des aktuellen HttpContext den richtigen ConnectionString und den ProviderName ermittelt.
3. Eine Klasse schreiben, die Du von SqlDataSource ableitest.
3.1 Überschreiben von ConnectionString Eigenschaft
3.2 Überschreiben der ProviderName Eigenschaft
Bsp:
namespace ppedv.Web.Components
{
public class SqlDataSource : System.Web.UI.WebControls.SqlDataSource
{
public override string ProviderName
{
get { return "System.Data.OleDb"; }
set { base.ProviderName = value; }
}
public override string ConnectionString
{
get { return "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=aspnetdb;Data Source=."; }
set { base.ConnectionString = value; }
}
}
}

Anstelle meiner Standardrückgabe muss natürlich aus der in 2. implementierten Klasse der ConnectionString bzw. der ProviderName ermittelt werden.
4. Produktiv dann einfach die Standard SqlDataSource-Klasse auf die eigene SqlDataSource-Klasse mappen:
<configuration>
...
<system.web>
...
</compilation>
...
<pages>
<tagMapping>
<add tagType="System.Web.UI.WebControls.SqlDataSource, System.Web, Version=2.0.0.0, Culture=Neutral, PublicKeyToken=b03f5f7f11d50a3a" mappedTagType="ppedv.Web.Components.SqlDataSource, __code"/>
</tagMapping>
</pages>
...
</system.web>
...
</configuration>

Grüße,

Thomas

Thomas Hauser (Trainer und Consultant, Blog: http://thomashauser.spaces.live.com, Forum: http://www.sharepointbook.de - Die Forum-Webseite zum Buch!)


Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!

 Betreff:
 Nachricht: Den Beitrag finden Sie nun unter: http://beta.devtrain.de/foren Die Benutzerdaten und Foreninhalte von beta.devtrain.de und www.devtrain.de sind die selben.
Sie können sich dort sogar per RSS über neue Inhalte informieren lassen.
Bei Problemen bitte direkt Mail an asp [AT] ppedv.de.

 Signatur:

  



Login
Username:


Passwort:






Passwort vergessen?

Visual Studio 1 Magazin

© Copyright 2003 ppedv AG