1.连接数据库
2.创建表两个
3.主键表
| 字段名 | 类型 | 约束 |
|---|---|---|
| ID | int | 主键,自增 |
| Content | nvarchar(20) | 非空 |
4.外键表
| 字段名 | 类型 | 约束 |
|---|---|---|
| ID | int | 主键,自增 |
| Title | nvarchar(20) | 非空 |
| Author | nvarchar(20) | 非空 |
| Cont | nvarchar(50) | 非空 |
| Leibie | int | 非空,外键,主键表ID |
| Data | date | 默认当前日期 |
5.往两个表中添加数据,如图
项目操作
1.创建ASP.NET项目(.NET FromeWork)
2.创建类库Model
3.创建第二个类库DAL
4.创建第三个类库BLL
5.给Model层添加ADO.NET实体数据模型,如图
6.跟着操作一路走下去,连接最终到连接数据库,此时没图
DAL层操作
1.引用Model层
2.添加引用EntityFromework
3..添加引用EntityFromework.sqlserver
4.创建二个类,因为有两个表,一个类对应一个表
5.主键表操作代码如下:
ZuoEntities db = new ZuoEntities();
public IEnumerable Select()
{
var result = from u in db.Catelog select u;
return result.ToList();
}
6.外键表操作代码如下:
ZuoEntities db = new ZuoEntities();
public object Select()
{
var result = (from a in db.Article
join c in db.Catelog
on a.Leibie equals c.ID
select new {a.ID,a.Title,a.Author, a.Data,a.Cont,c.Content }).ToList();
return result;
}
查看详情代码
public object Sel(int id)
{
var result = from a in db.Article where a.ID==id select new { a.Title, a.Cont };
return result.ToList();
}
BLL层操作
1.引用模型层和DAL层
2.针对两个表进行操作
3.创建二个类,因为有两个表,一个类对应一个表
4.外键表代码如下:
ArtDAO da = new ArtDAO();
public object Select()
{
return da.Select();
}
查看详情
public object Sel(int id)
{
return da.Sel(id);
}
视图层asp.net操作
1.引用Model层,以及BLL层
2.添加引用EntityFromework
3..添加引用EntityFromework.sqlserver
4.在Model层中找到App.config文件
5.剪切文件,如图:
6.将刚才剪切的代码放入视图层web.config中如图:
7.创建新窗体fault命名
8.代码如下:
编号<%# Eval("ID") %> 标题:<%# Eval("Title") %>
作者:<%# Eval("Author") %>日期:<%# Eval("Data") %>
' ForeColor="#ccffff"><%# Eval("Cont") %>
类别:<%# Eval("Content") %>
9.repeater控件绑定代码如下:
ArtService se = new ArtService();
protected void Page_Load(object sender, EventArgs e)
{
this.Repeater1.DataSource = se.Select();
this.Repeater1.DataBind();
}
10.注意LinkButton控件里边的两个很重要的属性 一个是CommandName这个属性是命名,咱们就以di来 另一个是CommandArgument这个是绑定的ID,及待会要进行的ID查看,也是进行传值
11.在repeater控件中添加一个属性OnItemCommand,该属性是用来写方法的
12.新建一个web窗体xq.aspx,待会进行跳转查询详情信息
13.在xq.aspx窗体里边添加数据,代码如下:
标题:<%# Eval("Title") %>
内容:<%# Eval("Cont") %>
14.转到刚才在repeater控件中添加的属性OnItemCommand后台代码,如下:
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
int id = int.Parse(e.CommandArgument.ToString());
if (e.CommandName == "di")
{
Response.Redirect("xq.aspx?id="+id);
}
}
15.因为发送了id值过来,我们需要进行接收。
16.在xq.aspx窗体中,转到后台代码进行接收如下:
此代码是为了接收传过来的id值 int id = int.Parse(Request.QueryString["id"]);
17.完整的详情如下:
public partial class xq : System.Web.UI.Page
{
ArtService se = new ArtService();
protected void Page_Load(object sender, EventArgs e)
{
int id = int.Parse(Request.QueryString["id"]);
this.Repeater1.DataSource = se.Sel(id);
this.Repeater1.DataBind();
}
}



