租房子分组交集查询

Html界面

<title></title>
<script language="javascript">
function CkAll(ckall,ckname){
var cks = document.getElementsByName(ckname);
for(var i=0;i<cks.length;i++)
{
cks[i].checked = ckall.checked;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>

区域:<input id="Checkbox1" type="checkbox" onclick="CkAll(this,‘CkArea‘)" />全选<br />
<asp:Repeater ID="Repeater1" runat="server" OnItemCommand="Repeater1_ItemCommand">
<ItemTemplate>
<input id="CkArea_<%#Eval("Code") %>1" name="CkArea" type="checkbox" value="<%# Eval("Code") %>" /><span><%#Eval("Name") %></span>
</ItemTemplate>
</asp:Repeater>
<br />
租赁类型:<input id="Checkbox2" type="checkbox"onclick="CkAll(this, ‘CkRentType‘)" />全选<br />
<asp:Repeater ID="Repeater2" runat="server">
<ItemTemplate>
<input id="CkRentType_<%#Eval("Code") %>" type="checkbox" name="CkRentType" value="<%#Eval("Code") %>" /><span><%#Eval("Name") %></span>
</ItemTemplate>
</asp:Repeater>
<br />
房屋类型:<input id="Checkbox3" type="checkbox"onclick="CkAll(this, ‘CkHouseType‘)" />全选<br />
<asp:Repeater ID="Repeater3" runat="server">
<ItemTemplate>
<input id="CkHouseType_<%#Eval("Code") %>" type="checkbox" name="CkHouseType" value="<%#Eval("Code") %>" /><span><%#Eval("Name") %></span>
</ItemTemplate>
</asp:Repeater>
<br />
关键词:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br />
<asp:Button ID="Button1" runat="server" Text="搜索" OnClick="Button1_Click" />
<br />
<asp:Repeater ID="Repeater4" runat="server">
<HeaderTemplate>
<table width="100%" border="1">
</HeaderTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
<ItemTemplate>
<tr>
<td><%#Eval("KeyWord") %></td>
<td><%#Eval("Area") %></td>
<td><%#Eval("SquareMeter") %></td>
<td><%#Eval("Rent") %></td>
<td><%#Eval("RentType") %></td>
<td><%#Eval("HouseType") %></td>
</tr>
</ItemTemplate>
</asp:Repeater>

</div>
</form>
</body>

代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Sousuo : System.Web.UI.Page
{
private HouseDataContext _Context = new HouseDataContext();
private void FillArea()
{
//定义封装类 新建类 造个集合
List<House> list = new List<House>();
//再造个临时集合 查询数据库中用Selectri找Area列 去掉重复吧 字段找出来
List<string> list2 = _Context.House.Select(p => p.Area).Distinct().ToList();
//循环遍历每一个 吧Area列的值从数据库拿出来 送到S上去 把Data的Code和Name送到集合中区
foreach(string s in list2)
{
House data = new House();
data.Code = s;
data.Name = s;
list.Add(data);
}
//把查出来的集合 绑定到Repeater1的界面上去
Repeater1.DataSource = list;
Repeater1.DataBind();
}
private void FillRentType()
{
List<House> list = new List<House>();
List<string> list2 = _Context.House.Select(p => p.RentType).Distinct().ToList();
foreach(string s in list2)
{
House data = new House();
data.Code = s;
data.Name = s;
list.Add(data);
}
Repeater2.DataSource = list;
Repeater2.DataBind();
}
private void FillHouseType()
{
List<House> list = new List<House>();
List<string> list2 = _Context.House.Select(p => p.HouseType).Distinct().ToList();
foreach(string s in list2)
{
House data = new House();
data.Name = s;
data.Code = s;
list.Add(data);
}
Repeater3.DataSource = list;
Repeater3.DataBind();
}
protected void Page_Load(object sender, EventArgs e)
{
FillArea();
FillHouseType();
FillRentType();
}
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{
var var1 = _Context.House.AsQueryable();
if(Request["CkArea"]!=null)
{
string strarea = Request["CkArea"];
string[] areas = strarea.Split(‘,‘);
var1 = var1.Where(p => areas.Contains(p.Area));
}
var var2 = _Context.House.AsQueryable();
if(Request["CkRentType"]!=null)
{
string rentType = Request["CkRentType"];
string[] rent = rentType.Split(‘,‘);
var2 = var2.Where(p => rent.Contains(p.RentType));
}
var var3 = _Context.House.AsQueryable();
if (Request["CkHouseType"] != null)
{
string housetype = Request["CkHouseType"];
string[] houses = housetype.Split(‘,‘);
var3 = var3.Where(p => houses.Contains(p.HouseType));
}

var var4 = _Context.House.AsQueryable();
if(TextBox1.Text.Trim().Length>0)
{
var4 = var4.Where(p => p.KeyWord.Contains(TextBox1.Text));
}

var var = var1.Intersect(var2).Intersect(var4).Intersect(var3);

Repeater4.DataSource = var;
Repeater4.DataBind();
}

}

时间: 2024-10-12 03:06:09

租房子分组交集查询的相关文章

租房子 多条件查询

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

PHP-----练习-------租房子-----增删改查,多条件查询

练习-------租房子-----增删改查,多条件 一 .题目要求: 二 .做法: [1]建立数据库 [2]封装类文件------DBDA.class.php 1 <?php 2 class DBDA 3 { 4 public $fuwuqi="localhost"; //服务器地址 5 public $yonghuming="root";//用户名 6 public $mima="";//密码 7 8 public $dbconnect;

11月6日上午PHP练习《租房子》解析

一.题目要求 二.题目做法 1.建立数据库 2.封装类文件 <?php class DBDA { public $fuwuqi="localhost"; //服务器地址 public $yonghuming="root";//用户名 public $mima="";//密码 public $dbconnect;//连接对象 //操作数据库的方法 //$sql代表需要执行的SQL语句 //$type代表SQL语句的类型,1代表查询,2代表增删

php之租房子练习

一.题目要求 二.题目做法 1.建立数据库 2.封装类文件 <?php class DBDA { public $fuwuqi="localhost"; //服务器地址 public $yonghuming="root";//用户名 public $mima="";//密码 public $dbconnect;//连接对象 //操作数据库的方法 //$sql代表需要执行的SQL语句 //$type代表SQL语句的类型,1代表查询,2代表增删

php练习 租房子

一.题目要求 做法 2.封装类文件 <?php class DBDA { public $fuwuqi="localhost"; //服务器地址 public $yonghuming="root";//用户名 public $mima="";//密码 public $dbconnect;//连接对象 //操作数据库的方法 //$sql代表需要执行的SQL语句 //$type代表SQL语句的类型,1代表查询,2代表增删改 //$shujuku

PHP 练习3:租房子

一.题目要求 二.题目做法 1.建立数据库 2.封装类文件 <?php class DBDA { public $fuwuqi="localhost"; //服务器地址 public $yonghuming="root";//用户名 public $mima="";//密码 public $dbconnect;//连接对象 //操作数据库的方法 //$sql代表需要执行的SQL语句 //$type代表SQL语句的类型,1代表查询,2代表增删

复选框式查询 例题租房子

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

练习题投票和租房子

一:投票,连个页面都引用了DBDA封装类 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http

增删改查租房子练习题

租房子练习题:重要颜色 1.模仿get传值到处理php页面:<a href='shanchu.php?c={$v[0]}' onclick=\"return confirm('确定删除吗?')\">删除</a> 2.删除页面显示确定删除提示框:<a href='shanchu.php?c={$v[0]}' onclick=\"return confirm('确定删除吗?')\">删除</a> 主页面: <body