Zdravim,
jedna sa o to, ze tvorim ASP.NET aplikaciu a taham data z DB.
To co riesim je pripojenie s DB. Toto pripojenie riesim klasicky v triede Connector.cs
Kód:
public class Connector
{
private SqlConnection _shopConnection;
public SqlConnection shopConnection
{
set { _shopConnection = value; }
get {
return _shopConnection;
}
}
// Pripoji sa na databazu, vytvori instanciu sqlconnection, ktora nesie pripojenie na databazu
public Connector()
{
string connectionString = ConfigurationManager.ConnectionStrings["EShop_diplConnectionString1"].ToString();
shopConnection = new SqlConnection(connectionString);
}
// Otvori pripojenie na databazu
public bool OpenConnection()
{
if (shopConnection.State != ConnectionState.Open)
{
shopConnection.Open();
}
return true;
}
// Uzatvori priponenie na databazu
public void CloseConnection()
{
shopConnection.Close();
}
}
a v triede Front_DB.cs vytvorim instanciu triedy Connector a riesim dotazovanie nasledovne:
Kód:
public class Front_DB
{
private static Connector front_connect = new Connector();
// Vrati vsetky kategorie
public static SqlDataReader getCategories()
{
front_connect.OpenConnection();
SqlCommand cmd = new SqlCommand("SELECT * FROM Categories ORDER BY Category_Name ASC", front_connect.shopConnection);
SqlDataReader ret = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return ret;
}
Tieto metody z Front_DB nasledne tam, kde je potreba v kode Web Formu.
Je tato metoda podla Vas v poriadku. Googlil som, ale nieco ako "optimalne" riesenie pripojenia na DB som nenasiel. Chcem vediet, ci mam istotu, ci mi to s takymto riesenim niekedy "nespadne", pretoze pouzivam aj metody, ktore nepouzivaju DataReader, ale vracaju napriklad aj DataTable, ci DataSet.
Chcem to pripojenie urobit poriadne, idealne som chcel vytvorit nejake "perzistentne" pripojenie, ale nic take som nenasiel.
Rad si vypocujem Vase nazory, som ASP.NET zaciatocnik. Respektive, ako riesite toto vy. Neodkazujte ma na Frameworky, nechcem/nesmiem ich v tomto projekte pouzit.
Vdaka za odpovede.