牛腩新闻发布系统(二)


        根据这牛腩学习敲新闻发布系统已经有一段时间了,挺佩服牛腩的,讲那么多东西,我听着也不觉得枯燥,反而有种,一不留神就会错过很多东西的感觉,所以有些地方也是重复又重复的在看。


        这篇博客就总结总结小编在学习牛腩新闻发布系统的时候一些笔记。可能知识还比较原生态,but who cares.现在先提炼出来,以后慢慢的体会和升华吧。


        牛腩一部分可以说是和机房相似,也是让我从.net到c#的一个过渡。中间一部分就是讲div +css了。里面的知识说多也不多的,根据不同的需求,它又有各种变形和组合,这加起来就有很多的东西。

我对div+css通俗一点的理解就是给网页做脸面。再啰嗦一句,在学习过程中,做好笔记并且分类总结是很重要的,以前学习没有这个意识,眉毛胡子一把抓,搞的自己也不愿意做笔记总结,更不愿意看。现在抓笔记和总结的思想在慢慢建立,成长着。。。


一、主题

主题是页面和控件外观属性的集合,她有很多文件组成(.css、images、其他资源等)

1、页面

一个页面中肯定会有很多的控件组成:比如按钮文件、级联样式表等。

比如搜索框

<div id="search">
        搜索条件:
        <asp:RadioButton ID="radTitle" GroupName="cond" runat="server" Text=" 标题" Checked="true" />
        <asp:RadioButton ID="radContent" GroupName="cond" runat="server" Text=" 内容" />
        <asp:TextBox ID="txtKey" runat="server" CssClass="textbox" Height="19px"></asp:TextBox>
        <asp:ImageButton ID="ibtnSearch" ImageUrl="~/images/search.gif" runat="server" OnClick="ibtnSearch_Click">
        </asp:ImageButton>
    </div>
效果

添加logo和表头图片

<div id="top">
        <a href="default.aspx">
            <img src="/niunan/images/niunanlogo.jpg" width="160px" alt="logo" /></a> <a href="http://blog.csdn.net/mayfla">
                <img src="/niunan/images/tg029logo.gif" width="600px" alt="tglogo" /></a>
</div>
效果:


添加版权

<div id="footer">
        版权所有 &copy 徐玲博 &<a href="http://blog.csdn.net/mayfla" target="_blank">CSDN</a>
    </div>

版权效果

  正文:正文这里可以用div写一个代码块,但是为了使其他不经常变化的控件能达到复用的效果。所以用到了母板页,后面的博客会介绍母板页。

2、控件外观属性

外观属性就是给那些页面或者 控件添加合适的属性,使其达到满足需求和美观的效果。我们添加属性与盒子模型由密切关系,所以在学习添加属性的时候看看盒子模型介绍吧。图片、文字、表格包括浮动、居中、上下左右边距,粗细等属性。


  简单举几个例子。在页面排版上,body默认有一个外边距为0.

 

居中设置


字体设置

其他

border:1px solid #000;/ *边框*/
float:right;/*浮动*/
width:75px;/*宽*/
 height:25px;/*高*/



3、方法

做好了界面,也是要进行的人机交互的。比如点击添加或删除按钮,系统通过代码所作出的反应。

添加按钮代码

//添加新闻按钮
    protected void btnAdd_Click(object sender, EventArgs e)
    {
        string title = txtTitle.Text.Trim();
        string content =ftbContent.Text.Trim();
        string caid = ddlCategory.SelectedValue;

        //TODO参数为什么会有三个?
        NewsModel n = new NewsModel();
        bool b = new NewsBLL().Insert(n);
        if (b)
        {
            Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('新闻添加成功!')</script>");
        }
        else
        {
            Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript'defer>alert('新闻添加失败,请联系管理员!')</script>");

        }

        //因为添加新闻成功后,要将文本框都清空
        txtTitle.Text = "";
        ftbContent.Text = "";

    }

删除按钮代码

//删除按钮
    protected void lbtnDelCa_Click(object sender, EventArgs e)
    { 
        //当前点击的按钮
        LinkButton lb = (LinkButton)sender;

        //获得传过来的commentId
        string caId = lb.CommandArgument;

        //删除该类别
        bool b = new CategoryBLL().Delete(caId);
        if (b)
        {
            //重新绑定新闻类别
            DataTable dt = new CategoryBLL().SelectAll();
            repCategory.DataSource = dt;
            repCategory.DataBind();
        }
        else
        {
            Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript'defer> alert('类别删除失败,请联系管理员!')</script>");
        }
    }


二、积累

牛腩讲了很多的技巧,有些是以前知道但不注意的,也有些是新的:

2.1 快捷键:

double table:让代码段轻松呈现。比如if

ctrl+k/d:快速整理代码的格式

2.2 小技巧:

TODO:快速回到前一天结束的代码;视图-用户任务

在工具--调试中,使用开始执行(不调试),可以有效提高效率。并且出错的时候可以直接在页面中看到。

2.3  css

css文件直接拉进aspx中。就可以调用css了。

图片/控件都可以直接拉进aspx类中。

2.4 母板页

使用母板页能减少很多代码重复,达到页面复用的效果

注意:母板页使用母板页的时候(即有两个母板页),要把前一个母板页中的注释删除。

。。。

俗话说,技高人胆大。这些不断的积累,就是你挑战命运的底牌。不断积累ING。。。

三、问题

在学习过程中,不光学习到很多东西,也遇到了很多的问题。现在看到问题,最想做的就是总结下来,最好能从里面找到规律,把扎堆出错,和出错频率高的错误提取出一套解决方案。


缺少控件:

                             

        解决方法:

       使用Ajax控件前,要用一个scriptmanager控件


符号/大小写:

在C# 中对于符号和大小写 的应用比.net多的多,所以在写代码的时候一定要注意你用的是全角符号还是半角符号,文字是大写还是小写。

引用问题

   

解决方法

 

四、总结

牛腩包含很多东西,他是BS界的麻雀。这个过程中,做好记录和总结很重要。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 15
    评论
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值