zoukankan      html  css  js  c++  java
  • Linq to sql(三):增删改(二)

    简易留言簿

           现在,我们就可以使用Linq to sql完成简易留言簿了。实现以下功能:

    l         发表留言(增)

    l         查看留言(查)

    l         管理员回复留言(改)

    l         管理员删除留言(删除)

    首先,创建一个Default.aspx,在页面上加入一些控件:

    <div>

            姓名

            <asp:TextBox ID="tb_UserName" runat="server"></asp:TextBox><br />

            <br />

           留言

            <asp:TextBox ID="tb_Message" runat="server" Height="100px" TextMode="MultiLine" Width="300px"></asp:TextBox><br />

            <br />

            <asp:Button ID="btn_SendMessage" runat="server" Text="发表留言" OnClick="btn_SendMessage_Click" /><br />

            <br />

            <asp:Repeater ID="rpt_Message" runat="server">

            <ItemTemplate>

            <table width="600px" style="border:solid 1px #666666; font-size:10pt; background-color:#f0f0f0">

                <tr>

                <td align="left" width="400px">

                <%# Eval("Message")%>

                </td>

                <td align="right" width="200px">

                <%# Eval("PostTime")%> - <%# Eval("UserName")%>

                </td>

                </tr>

                <tr>

                <td colspan="2" align="right">

                <hr width="300px" />

                管理员回复:<%# Eval("IsReplied").ToString() == "False" ? "暂无" : Eval("Reply")%>

                </td>

                </tr>          

            </table>

            <br/>

            </ItemTemplate>

            </asp:Repeater>

        </div>

           你可能很难想象,使用Linq to sql进行数据访问会是这么简单,后台代码:

    public partial class _Default : System.Web.UI.Page

    {

        GuestBookDataContext ctx = new GuestBookDataContext("server=xxx;database=GuestBook;uid=xxx;pwd=xxx");

          

        protected void Page_Load(object sender, EventArgs e)

        {

            if (!IsPostBack)

            {

                SetBind();

            }

        }

        protected void btn_SendMessage_Click(object sender, EventArgs e)

        {

            tbGuestBook gb = new tbGuestBook();

    gb.ID = Guid.NewGuid();

            gb.UserName = tb_UserName.Text;

            gb.Message = tb_Message.Text;

            gb.IsReplied = false;

            gb.PostTime = DateTime.Now;

            ctx.tbGuestBooks.Add(gb);

            ctx.SubmitChanges();

            SetBind();

        }

        private void SetBind()

        {

            rpt_Message.DataSource = from gb in ctx.tbGuestBooks orderby gb.PostTime descending select gb;

            rpt_Message.DataBind();

        }

    }

  • 相关阅读:
    使用padding值控制控件的隐藏与显示
    首篇 sdk 之 AlertDialog
    eclipse中svn项目重定向地址
    Activity回传值报错:Failure delivering result ResultInfo{who=null,request=7,result = 0,data=null}
    常见字符集&乱码问题
    rhel 6.x 使用 udev scsi rules 配置裸设备
    rsync 同步文件
    debian 8.2 + apt-get + mongodb 3.2 + replica set
    debian 8.2 + apt-get + mongodb 3.2
    oracle virtualbox 扩大虚拟机硬盘
  • 原文地址:https://www.cnblogs.com/kevin2013/p/1749101.html
Copyright © 2011-2022 走看看