//这是界面层
/// <summary>
/// 按费用要求搜索客房记录
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_roomPrerequisite_Click(object sender, EventArgs e)
{
string price = tbx_price.Text;
try
{
if (tbx_price.Text.Trim() == "") MessageBox.Show("请输入费用范围", "提示您");
if (dGV_rCheckPrice.DataSource != null)
{
dGV_rCheckPrice.DataSource = null;
dGV_rCheckPrice.DataSource = mybo.checkPrice(price);
tbx_price.Text = null;
}
else
{
dGV_rCheckPrice.DataSource = mybo.checkPrice(price);
tbx_price.Text = null;
}
}
catch
{
return;
}
}
//这是业务逻辑层
/// <summary>
/// 按“费用范围”查询
/// </summary>
/// <param name="price"></param>
/// <returns></returns>
internal object checkPrice(string price)
{
return mydb.checkPrice(price);
}
//这是数据访问层
/// <summary>
/// 按“费用范围”返回数据记录
/// </summary>
/// <param name="price"></param>
/// <returns></returns>
internal object checkPrice(string price)
{
cmd.CommandText = "select * from roomInfo where rent<=@price";
cmd.Parameters.AddWithValue("@rent", price);
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
/// <summary>
/// 按费用要求搜索客房记录
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_roomPrerequisite_Click(object sender, EventArgs e)
{
string price = tbx_price.Text;
try
{
if (tbx_price.Text.Trim() == "") MessageBox.Show("请输入费用范围", "提示您");
if (dGV_rCheckPrice.DataSource != null)
{
dGV_rCheckPrice.DataSource = null;
dGV_rCheckPrice.DataSource = mybo.checkPrice(price);
tbx_price.Text = null;
}
else
{
dGV_rCheckPrice.DataSource = mybo.checkPrice(price);
tbx_price.Text = null;
}
}
catch
{
return;
}
}
//这是业务逻辑层
/// <summary>
/// 按“费用范围”查询
/// </summary>
/// <param name="price"></param>
/// <returns></returns>
internal object checkPrice(string price)
{
return mydb.checkPrice(price);
}
//这是数据访问层
/// <summary>
/// 按“费用范围”返回数据记录
/// </summary>
/// <param name="price"></param>
/// <returns></returns>
internal object checkPrice(string price)
{
cmd.CommandText = "select * from roomInfo where rent<=@price";
cmd.Parameters.AddWithValue("@rent", price);
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
解决方案 »
- url重写问题
- 投票,每个选项限制每天只能投100票,超过将不在写入数据库
- 如何遍历一个XML中指定节点名称的内容
- 如何实现???DirectX视频播放FullScreen???C#编程,急!
- 菜鸟请教 RequiredFieldValidator控件问题!!着急啊,大家们????!!!!!
- 关于泛型迭代的问题
- 【求救】c#写的WINFORM exe文件如何反向成project?
- 请教一个问题,能不能谈一下你对OOA,OOP,OOD的理解?
- winform多线程问题,在线等....
- 有人用c#,mapX,做东西的吗?
- 有没有一个能返回文件行数的函数,我自己写了个不知道有没有更好的请指教!
- winform下如何实现球体边缘反弹.
cmd怎么定义的?
{
cmd=new SqlCommand();//这里加个看看
cmd.CommandText = "select * from roomInfo where rent<=@price";
cmd.Parameters.AddWithValue("@rent", price);
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
你想干嘛?
点击按钮后清空文本框? 那这样写tbx_price.Text = "";
不然你的这句话就会影响你下次查询的那个price.
{
if (tbx_price.Text.Trim() == "") MessageBox.Show("请输入费用范围", "提示您");
if (dGV_rCheckPrice.DataSource != null)
{
dGV_rCheckPrice.DataSource = null;
dGV_rCheckPrice.DataSource = mybo.checkPrice(price);
tbx_price.Text = null;
}
else这段代码,我觉得就不用要吧~~~~
下都加上dGV_rCheckPrice.DataBind();
if (tbx_price.Text.Trim() == "") MessageBox.Show("请输入费用范围", "提示您");建议这行这样写if (tbx_price.Text.Trim() == "") {
MessageBox.Show("请输入费用范围", "提示您");
return;
}
public DbAccess(string path)
{
string connStr = "";
conn = new OleDbConnection();//初始化conn
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path;
conn.ConnectionString = connStr;
cmd = new OleDbCommand();
cmd.Connection = conn;
}
还有一个问题,我做上面的查询后再做下面的查询时 ,下面的结果始终我空。反之亦然。真实奇怪!!!
现在把代码都贴出来了,请高手帮忙看看!!!
这是界面层 private void btn_all_Click(object sender, EventArgs e)
{
bool toilet = true;
bool adsl = true;
bool tel = true;
if (dGV_roomCheck.DataSource != null)
{
dGV_roomCheck.DataSource = null;
dGV_roomCheck.DataSource = mybo.checkAllGInfo(toilet, adsl, tel);
}
else
{
dGV_roomCheck.DataSource = mybo.checkAllGInfo(toilet, adsl, tel);
}
}
private void rB_tel_CheckedChanged(object sender, EventArgs e)
{
bool tel = true;
if (dGV_roomCheck.DataSource != null)
{
dGV_roomCheck.DataSource = null;
dGV_roomCheck.DataSource = mybo.checkTel(tel);
}
else
{
dGV_roomCheck.DataSource = mybo.checkTel(tel);
}
}
private void rB_toilet_CheckedChanged(object sender, EventArgs e)
{
bool toilet = true;
if (dGV_roomCheck.DataSource != null)
{
dGV_roomCheck.DataSource = null;
dGV_roomCheck.DataSource = mybo.checkToil(toilet);
}
else
{
dGV_roomCheck.DataSource = mybo.checkToil(toilet);
}
}
private void rB_adsl_CheckedChanged(object sender, EventArgs e)
{
bool adsl = true;
if (dGV_roomCheck.DataSource != null)
{
dGV_roomCheck.DataSource = null;
dGV_roomCheck.DataSource = mybo.checkAdsl(adsl);
}
else
{
dGV_roomCheck.DataSource = mybo.checkAdsl(adsl);
}
} private void btn_roomPrerequisite_Click(object sender, EventArgs e)
{
string price = tbx_price.Text;
try
{
if (tbx_price.Text.Trim() == "")
{
MessageBox.Show("请输入费用范围", "提示您");
return;
}
if (dGV_rCheckPrice.DataSource != null)
{
dGV_rCheckPrice.DataSource = null;
dGV_rCheckPrice.DataSource = mybo.checkPrice(price);
tbx_price.Text = "";
}
else
{
dGV_rCheckPrice.DataSource = mybo.checkPrice(price);
tbx_price.Text = "";
}
}
catch
{
return;
}
}
private void tbx_price_TextChanged(object sender, EventArgs e)
{
try
{
if (double.Parse(tbx_price.Text) < 200 && double.Parse(tbx_price.Text) > 0)
{ }
else if (double.Parse(tbx_price.Text) > 200)
{
MessageBox.Show("输入值太大了", "提示您");
tbx_price.Text = "";
return;
}
}
catch
{
tbx_price.Text = "";
return;
} }
{
DbAccess mydb = new DbAccess(@" + Application.StartupPath + myDbAccess.mdb");//实例化数据访问层 internal object checkAdsl(bool adsl)
{
return mydb.checkAdsl(adsl);
} internal object checkToil(bool toilet)
{
return mydb.checkToil(toilet);
}
internal object checkTel(bool tel)
{
return mydb.checkTel(tel);
}
internal object checkAllGInfo(bool toilet, bool adsl, bool tel)
{
return mydb.checkAllGInfo(toilet,adsl,tel);
}
internal object checkPrice(string price)
{
return mydb.checkPrice(price);
}
}
{
public DbAccess(string path)
{
string connStr = "";
conn = new OleDbConnection();//初始化conn
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path;
conn.ConnectionString = connStr;
cmd = new OleDbCommand();
cmd.Connection = conn;
}
private OleDbConnection conn;//定义连接对象
private OleDbCommand cmd; //定义命令对象
private bool OpenConn()//打开数据库数据连接
{
if (conn.State != ConnectionState.Open)//判断数据库连接是否打开
{
conn.Open();
return true;
}
else
{
return false;
}
}
private bool CloseConn()//关闭数据库连接
{
if (conn.State != ConnectionState.Closed)//判断数据库连接是否关闭
{
conn.Close();
return true;
}
else
{
return false;
}
}
internal object getAllData(string p)//从逻辑层传入表名,访问数据层
{
cmd.CommandText = "select * from " + p;
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
internal object checkAdsl(bool adsl)
{
cmd.CommandText = "select * from roomInfo where haveADSL=@adsl";
//cmd.Parameters.AddWithValue("@toilet", toilet);
//cmd.Parameters.AddWithValue("@tel", tel);
cmd.Parameters.AddWithValue("@adsl", adsl);
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
internal object checkToil(bool toilet)
{
cmd.CommandText = "select * from roomInfo where haveToilet=@toilet";
cmd.Parameters.AddWithValue("@toilet", toilet);
//cmd.Parameters.AddWithValue("@tel", tel);
//cmd.Parameters.AddWithValue("@adsl", adsl);
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
internal object checkTel(bool tel)
{
cmd.CommandText = "select * from roomInfo where haveTel=@tel";
cmd.Parameters.AddWithValue("@tel", tel);
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
internal object checkAllGInfo(bool toilet, bool adsl, bool tel)
{
cmd.CommandText = "select * from roomInfo where haveADSL=@adsl and haveToilet =@toilet and havetel=@tel";
cmd.Parameters.AddWithValue("@toilet", toilet);
cmd.Parameters.AddWithValue("@tel", tel);
cmd.Parameters.AddWithValue("@adsl", adsl);
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
internal object checkPrice(string price)
{
cmd.CommandText = "select * from roomInfo where rent<=@price";
cmd.Parameters.AddWithValue("@rent", price);
OleDbDataAdapter da1 = new OleDbDataAdapter();
da1.SelectCommand = cmd;
DataTable dt = new DataTable();
da1.Fill(dt);
return dt;
}
}