Razorhawk
Webdesigner und MSP
Hi ich habe hier zwei unterschiedliche Versionen eine Programmcodes und würde gerne wissen welcher eleganter bzw. sauberer ist und vielleicht auch warum ihr denkt, dass der gewählte besser.
Beide Lösungen funktionieren. Eine verwendet in eine Session gespeicherte Daten und die andere nutzt die Daten in dem GridView um zu filtern.
Der folgende ist das PageLoad (nur um den ganzen Code zu verstehen)
So welche Lösung ist jetzt besser?
Lösung 1
oder
Lösung 2
Grüße
Beide Lösungen funktionieren. Eine verwendet in eine Session gespeicherte Daten und die andere nutzt die Daten in dem GridView um zu filtern.
Der folgende ist das PageLoad (nur um den ganzen Code zu verstehen)
Code:
protected void Page_Load(object sender, EventArgs e)
{
DataSet objDS = new DataSet();
string conString = "Data Source=MeinPC\\SQLEXPRESS;Initial Catalog=Datenbank;Integrated Security=True";
string queryString ="SELECT Id,Product, Description FROM dbo.Products;";
SqlConnection sqlCon = new SqlConnection(conString);
SqlCommand objCmd = new SqlCommand(queryString,sqlCon);
SqlDataAdapter objDA = new SqlDataAdapter(objCmd);
objDA.Fill(objDS);
gridCities.DataSource = objDS;
gridCities.DataBind();
Session["ds"] = objDS;
}
So welche Lösung ist jetzt besser?
Lösung 1
Code:
protected void btnSearch_Click(object sender, EventArgs e)
{
DataSet ds = Session["ds"] as DataSet;
DataView dv = ds.Tables[0].DefaultView;
dv.RowFilter = "Product LIKE '" + txtSearch.Text + "%'";
gridCities.DataSource = dv;
gridCities.DataBind();
}
oder
Lösung 2
Code:
protected void btnSearch_Click(object sender, EventArgs e)
{
DataSet ds = gridCities.DataSource as DataSet;
DataView dv = ds.Tables[0].DefaultView;
dv.RowFilter = "Product LIKE '" + txtSearch.Text + "%'";
gridCities.DataSource = dv;
gridCities.DataBind();
}
Grüße