Mar
12
主要是练习Linq的插入,更新和删除操作.首先建一个Linq To Sql Class,并讲测试数据库的Post和Commnet两张表拖入,下面用代码说话
<script type="text/javascript" language="javascript">
function rowclick(i)
{
var t = $('grdPostInfo');
var r = t.rows[i+1];
$('txtUID2').innerText = r.cells[0].innerText;
$('txtPID2').innerText = r.cells[1].innerText;
$('txtContent2').innerText = r.cells[2].innerText;
}
</script>
function rowclick(i)
{
var t = $('grdPostInfo');
var r = t.rows[i+1];
$('txtUID2').innerText = r.cells[0].innerText;
$('txtPID2').innerText = r.cells[1].innerText;
$('txtContent2').innerText = r.cells[2].innerText;
}
</script>
<asp:GridView ID="grdPostInfo" runat="server" AutoGenerateColumns="false" onrowdatabound="RowDataBound">
<Columns>
<asp:BoundField HeaderText="UID" DataField="uid" />
<asp:BoundField HeaderText="PID" DataField="pid" />
<asp:BoundField HeaderText="Content" DataField="p_content" />
</Columns>
</asp:GridView>
UID:<asp:TextBox ID="txtUID" runat="server" Width="32px"></asp:TextBox>
PID:<asp:TextBox ID="txtPID" runat="server" Width="39px"></asp:TextBox>
CONNTEXT:<asp:TextBox ID="txtContent" runat="server" Width="118px"></asp:TextBox>
<asp:Button ID="btnAdd" runat="server" onclick="btnAdd_Click" Text="追加" />
<br />
UID:<asp:TextBox ID="txtUID2" runat="server" Width="32px"></asp:TextBox>
PID:<asp:TextBox ID="txtPID2" runat="server" Width="39px"></asp:TextBox>
CONNTEXT:<asp:TextBox ID="txtContent2" runat="server" Width="118px"></asp:TextBox>
<asp:Button ID="btnUpdate" runat="server" Text="更新" onclick="btnUpdate_Click" />
<asp:Button ID="btnDelete" runat="server" Text="削除" onclick="btnDelete_Click" />
<Columns>
<asp:BoundField HeaderText="UID" DataField="uid" />
<asp:BoundField HeaderText="PID" DataField="pid" />
<asp:BoundField HeaderText="Content" DataField="p_content" />
</Columns>
</asp:GridView>
UID:<asp:TextBox ID="txtUID" runat="server" Width="32px"></asp:TextBox>
PID:<asp:TextBox ID="txtPID" runat="server" Width="39px"></asp:TextBox>
CONNTEXT:<asp:TextBox ID="txtContent" runat="server" Width="118px"></asp:TextBox>
<asp:Button ID="btnAdd" runat="server" onclick="btnAdd_Click" Text="追加" />
<br />
UID:<asp:TextBox ID="txtUID2" runat="server" Width="32px"></asp:TextBox>
PID:<asp:TextBox ID="txtPID2" runat="server" Width="39px"></asp:TextBox>
CONNTEXT:<asp:TextBox ID="txtContent2" runat="server" Width="118px"></asp:TextBox>
<asp:Button ID="btnUpdate" runat="server" Text="更新" onclick="btnUpdate_Click" />
<asp:Button ID="btnDelete" runat="server" Text="削除" onclick="btnDelete_Click" />
protected void Page_Load(object sender, EventArgs e)
{
bindGrid();
}
//为GridView绑定数据
void bindGrid()
{
LinqTestDC dc = new LinqTestDC();
this.grdPostInfo.DataSource = dc.Post;
this.grdPostInfo.DataBind();
}
//新增一条数据
protected void btnAdd_Click(object sender, EventArgs e)
{
LinqTestDC dc = new LinqTestDC();
Post PostInfo = new Post();
PostInfo.pid = Convert.ToInt32(txtPID.Text);
PostInfo.uid = Convert.ToInt32(txtUID.Text);
PostInfo.p_content = txtContent.Text;
dc.Post.Add(PostInfo);
dc.SubmitChanges();
bindGrid();
}
//GridView绑定事件
protected void RowDataBound(object sender, GridViewRowEventArgs e)
{
e.Row.Attributes.Add("onclick","return rowclick(" + e.Row.DataItemIndex + ");");
}
//更新
protected void btnUpdate_Click(object sender, EventArgs e)
{
LinqTestDC dc = new LinqTestDC();
Post PostInfo = dc.Post.Single(p=>p.pid == Convert.ToInt32(txtPID2.Text));
PostInfo.p_content = txtContent2.Text;
dc.SubmitChanges();
bindGrid();
}
//删除一条数据(全删除用RemoveAll)
protected void btnDelete_Click(object sender, EventArgs e)
{
LinqTestDC dc = new LinqTestDC();
Post PostInfo = dc.Post.Single(p => p.pid == Convert.ToInt32(txtPID2.Text));//Lambda表达式p => p....
dc.Post.Remove(PostInfo);
dc.SubmitChanges();
bindGrid();
}
{
bindGrid();
}
//为GridView绑定数据
void bindGrid()
{
LinqTestDC dc = new LinqTestDC();
this.grdPostInfo.DataSource = dc.Post;
this.grdPostInfo.DataBind();
}
//新增一条数据
protected void btnAdd_Click(object sender, EventArgs e)
{
LinqTestDC dc = new LinqTestDC();
Post PostInfo = new Post();
PostInfo.pid = Convert.ToInt32(txtPID.Text);
PostInfo.uid = Convert.ToInt32(txtUID.Text);
PostInfo.p_content = txtContent.Text;
dc.Post.Add(PostInfo);
dc.SubmitChanges();
bindGrid();
}
//GridView绑定事件
protected void RowDataBound(object sender, GridViewRowEventArgs e)
{
e.Row.Attributes.Add("onclick","return rowclick(" + e.Row.DataItemIndex + ");");
}
//更新
protected void btnUpdate_Click(object sender, EventArgs e)
{
LinqTestDC dc = new LinqTestDC();
Post PostInfo = dc.Post.Single(p=>p.pid == Convert.ToInt32(txtPID2.Text));
PostInfo.p_content = txtContent2.Text;
dc.SubmitChanges();
bindGrid();
}
//删除一条数据(全删除用RemoveAll)
protected void btnDelete_Click(object sender, EventArgs e)
{
LinqTestDC dc = new LinqTestDC();
Post PostInfo = dc.Post.Single(p => p.pid == Convert.ToInt32(txtPID2.Text));//Lambda表达式p => p....
dc.Post.Remove(PostInfo);
dc.SubmitChanges();
bindGrid();
}
上海の悪い交通状況
户外运动必备的IT行装



呵呵!
第一次听说linq,看不懂!
明天给你拉一大把学生过来哦!!