access database
jeg prøver at finde ud af hvordan jeg kan connecte til en access database med c#.Jeg kan godt få det til at virke i consol osv men jeg kan ikke få den til at udskrive f.eks. alle recordset på en aspx side.
Det kode jeg har er ikke meget værd derfor ønsker jeg at få noget som udpensler det en del og som jeg selv kan bygge videre på.
her er noget kode som cyberproffessor(tror jeg) gav i et andet svar.
Den give en compiler error på IDataStore.
hvis der her kode kan bruges hvordan skal det så placeres og hvordan skal jeg bruge de enkelte kommandoer på en aspx side?
jeg er dog usikker på hvordan jeg skal bruger det:
namespace BurningIce
{
/// <summary>
/// Summary description for DbConnection.
/// </summary>
public class Datastore : IDataStore
{
private OleDbConnection objConn = new OleDbConnection();
public Datastore()
{
string filename = System.Reflection.Assembly.GetAssembly(typeof(Datastore)).Location;
string path = filename.Substring(0, filename.LastIndexOf('\\'));
string strConnString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE="+ path +"\\hoe.mdb";
objConn.ConnectionString = strConnString;
}
public string State
{
get
{
return objConn.State.ToString();
}
}
public void Open()
{
objConn.Open();
}
public void Close()
{
objConn.Close();
}
public void ExecuteNonQuery(string str)
{
OleDbCommand objCommand = new OleDbCommand(str, objConn);
this.Open();
try
{
objCommand.ExecuteNonQuery();
}
catch (OleDbException exc)
{
throw new DataException(exc.ToString() +" SQLStreng: "+ str);
}
this.Close();
}
public object ExecuteScalar(string str)
{
OleDbCommand objCommand = new OleDbCommand(str, objConn);
object tmp;
try
{
this.Open();
tmp = objCommand.ExecuteScalar();
}
catch (OleDbException exc)
{
throw new DatastoreException(exc.ToString());
}
finally
{
this.Close();
}
return tmp;
}
public OleDbDataReader GetReader(string str)
{
OleDbCommand objCommand = new OleDbCommand(str, objConn);
this.Open();
return objCommand.ExecuteReader(CommandBehavior.CloseConnection);
}
public OleDbCommand GetCommand(string sql)
{
return new OleDbCommand(sql, objConn);
}
private OleDbDataAdapter GetAdapter(string str)
{
try
{
return new OleDbDataAdapter(str, objConn);
}
catch (OleDbException exc)
{
throw new DatastoreException(exc.ToString());
}
}
public DataTable GetDataTable(string sql)
{
OleDbDataAdapter objAdapter = GetAdapter(sql);
DataTable dt = new DataTable();
objAdapter.Fill(dt);
return dt;
}
}
}
