zoukankan      html  css  js  c++  java
  • 浪曦博客系统

    后台:有风起浪   admin

    PowerDesigner 新建 选择Object-Oriented Model   First diagram 选择 Use Case Diagram

    使用sqlserver2008一定要安装sp1补丁

    AjaxControlToolkit 控件包

    分离数据库时提示正在使用  解决方法use master    再分离

    Linq可以查询 数据库、数组、集合类、XML

    添加新项:LINQ to SQL 类    生成.dbml文件  从服务器资源管理器中把表直接拖到.dbml文件中  点击其中的一个表  右键 添加 关联

    *{padding:0; margin:0;}

    float:left; 本身及其里面的内容都居左

    photoshop中选择 复制 新建 可以知道选中图片的高宽,用拾色器可以知道特定的颜色。

    指定某个超链接的样式:A.HelpLink{   }

    background-position:center top;

    background-position:0px -64px;   //图片的左边 向上提64px

    窗口大小改变而文字的相对位置保持不变:

    <script type="text/javascript">

    window.onresize = doReSize;

    window.onload = doReSize;

    function doReSize(){   //窗口大小改变而文字的相对位置保持不变:

    document.getElementById("Theme").style.marginLeft = (document.body.clientWidth/110 * 2) +  "%";

    document.getElementById("SubTheme").style.marginLeft = (document.body.clientWidth/110 * 2)  + "%";

    init();

    }

    function init(){     //IE跟Firefox不兼容不

    if(navigator.userAgent.indexOf("MSIE")>0){

    }

    if(navigator.userAgent.indexOf("Firefox")>0){

    document.getElementById("HeadBody").style.height = "160px";

    document.getElementById("NavSubList").style.marginLeft = "332px";

    document.getElementById("left_list").style.paddingLeft = "0px";

    }

    }

    </script>

    设置行高line-height,文字默认在行内居中。

    设置了flaot属性,其会自动占用一定的空间,需要设置margin属性。

    letter-spacing:2.4pt; 字符间距

    clear:both;  vertical-align:middle;

    div的height、float属性在火狐下不兼容

    use DAL;

    private static LangSinLinqDataContext db=new LangSinLinqDataContext();

    var u=from user in db.Tab_Manager where user.Mname==username && user.Mpwd==upwd select user; //var是任何类 型的变量  不能用and要用&&  user是表的别名

    if(u.Count()<1)

    数据库放在App_Data文件夹下打开页面报错,解决方法App_Data文件夹右键属性 高级  选择可以存档

    IE跟火狐下居中:

    <script type="text/javascript">

        function init() {

            document.getElementById("loginForm").style.left = screen.width / 2 - document.getElementById ("loginForm").clientWidth/2 - 10 + "px";

        }

    </script>

    css中定义 #loginForm {position:absolute;}

    两个RadioButton控件,要设置GroupName属性。

    FCKeditor编辑器的使用:1.把文件夹htmlEdit放在项目WEB下  2.引用dll  3.web.cong文件中<appSettings><add  key="FCKeditor:BasePath" value="~/WEB/htmlEdit/fckeditor/"/></appSettings>

    静态方法中要调用方法外的变量,则此变量必须是静态的。

    article.AHtmlFileName = article.ADate.Replace("-", "").Replace(":", "").Replace(" ", "");

    Linq插入数据:

     private static  LangSinBlogLinqDataContext db = new LangSinBlogLinqDataContext();

     public static void insertArticle(Article article) {

                Tab_Article t = new Tab_Article();

                t.Atitle = article.Atitle;

                t.Aclass = 1;

                t.Aauthor = "admin";

                t.AContent = article.AContent;

                t.Adate = Convert.ToDateTime(article.ADate);

                t.AHtmlFileName = "";

                t.AType = Convert.ToChar(article.AType);

                db.Tab_Article.InsertOnSubmit(t);

                db.SubmitChanges();

            }

    Linq查询数据:

    public static IQueryable getArticleList() {

                return from article in db.Tab_Article orderby article.id descending select article;

            }

    Linq查询一条数据:var article = db.Tab_Article.Single(t => t.id == Convert.ToInt32(id));

    Linq更新一条数据:

    public static void updateArticle(Article a) {

    var article = db.Tab_Article.Single(t => t.id == Convert.ToInt32(a.Id));

                article.Atitle = a.Atitle;

                article.AContent = a.AContent;

                db.SubmitChanges();

            }

    Linq更新一个字段的所有数据:

    public string UpdateRole(int RoleID, string RoleName, string Description) 

    try 

    var obj = sysdb.SYS_ROLE.SingleOrDefault(x => x.RoleID == RoleID); 
    if (obj == null) 

    return "该角色已不存在,可能同时多个客户端在操作本项."; 


    obj.RoleName = RoleName; 
    obj.Description = Description; 
    sysdb.SubmitChanges(); 

    catch (System.Exception ex) 

    return ex.Message; 

    return string.Empty; 
    }

    Linq删除一条数据:

    public static void deleteArticle(string id) {

                var article = db.Tab_Article.Single(t => t.id == Convert.ToInt32(id));

                db.Tab_Article.DeleteOnSubmit(article);

                db.SubmitChanges();

            }

    Linq多表查询:

            public static IQueryable getArticleListByClass(string _aclass) {

                if (_aclass == null || _aclass == "")

                {

                    var query = from t in db.Tab_Article

                                orderby t.id descending

                                from c in db.Tab_Article_Class

                                where t.Aclass == c.id

                                select new

                                {

                                    id = t.id,

                                    AIsOut = t.AIsOut,

                                    Atitle = t.Atitle,

                                    Adate = t.Adate,

                                    Atype = t.AType,

                                    Cname = c.Cname,

                                    Acontent = t.AContent,

                                    AHtmlFileName = t.AHtmlFileName

                                };

                    return query;

                }

                else {

                    var query = from t in db.Tab_Article

                                orderby t.id descending

                                from c in db.Tab_Article_Class

                                where t.Aclass == c.id 

                                && 

                                t.Aclass == Convert.ToInt32(_aclass)

                                select new

                                {

                                    id = t.id,

                                    Atitle = t.Atitle,

                                    AIsOut = t.AIsOut,

                                    Adate = t.Adate,

                                    Atype = t.AType,

                                    Cname = c.Cname,

                                    Acontent = t.AContent,

                                    AHtmlFileName = t.AHtmlFileName

                                };

                    return query;

                }

            }

    生成静态页面:1.准备模板页 2. .cs页面代码

    生成静态页面的方法:

    1.标签替换、

    2.伪地址:为了SEO  a.引用URLRewriter.dll  2.配置web.config

    3.HttpHeader 生成静态:先进行地址映射,后生成静态页面。

    IndexOf的用法:

       int index = text.IndexOf("?");

                        if ((index != -1) || ((index + 1) < text.Length))

                        {

                            queryString = text.Substring(index + 1);

                            if (index > 0)

                            {

                                filePath = text.Substring(0, index);

                            }

                        }

    HttpRuntime将Http请求转交给 HttpApplication,HttpApplication代表着程序员创建的Web应用程序。HttpApplication 创建针对此Http请求的 HttpContext对象,这些对象包含了关于此请求的诸多其他对象,主要是HttpRequest、 HttpResponse、HttpSessionState等。这些对象在程序中可以通过Page类或者Context类进行访问。

    Response.Filter属性:在数据发送出去前通过绑定的Filter来修改HTTP实体数据

    string rawUrl=Request.RawUrl;  //测试的url地址是http://www.test.com/testweb/default.aspx?id=1, 结果如下:

    结果为: /testweb/default.aspx?id=1

    string Path=Request.PhysicalApplicationPath;  //取得当前页面的物理路径

    Server.MapPath(".");                           //页面所在目录的物理全路径

    分页事件:

    protected void ArticleGridView_PageIndexChanging(object sender, GridViewPageEventArgs e)

        {

            this.ArticleGridView.PageIndex = e.NewPageIndex;

            this.ArticleGridView.DataSource = ArticleManager.getArticleList();

            this.ArticleGridView.DataBind();

        }

    AJAX控件ModalPopupExtender的使用:

    <%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="ajaxToolkit" %>

    <ajaxToolkit:ModalPopupExtender runat="server" ID="modalPop" TargetControlID="LinkButton1"  PopupControlID="UpdatePanel2" CancelControlID="ArticelClassClose"></ajaxToolkit:ModalPopupExtender>

    两个UpdatePanel控件

    ListView控件:

    <ItemTemplate>

    </ItemTemplate>

    <EmptyDataTemplate>

    <span>未返回数据</span>

    </EmptyDataTemplate>                

    <LayoutTemplate>

    <div id="itemPlacehodlerContainer" runat="server" style="">

    <span id="itemPlaceholder" runat="server"></span>

    </div>

    </LayoutTemplate>

    .cs页面代码protected void Page_PreRender(object sender, EventArgs e) {

            this.ListView1.DataSource = ArticleManager.getArticleListByClass(null);

            this.ListView1.DataBind();

        }

    与ListView控件配套使用的分页控件DataPager:

    <asp:DataPager ID="DataPager1" runat="server" PagedControlID="ListView1" PageSize="4">

       <Fields>

           <asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="False" 

                        ShowNextPageButton="False" ShowPreviousPageButton="False" />

           <asp:NumericPagerField />

                    <asp:NextPreviousPagerField ButtonType="Button" ShowLastPageButton="False" 

                        ShowNextPageButton="False" ShowPreviousPageButton="False" />

       </Fields>

            </asp:DataPager>

    //DropDownList控件在编辑时多加一句:

    DropDownList1.Items.FindByValue(a.Aclass).Selected = true;

    Jquery的HTML编辑器(xhEditor)插件配置:不需要提交刷新,所以去掉<form>标签

    var uname = $("#uname").val();

    //组成对象的JSON方式

    var queryString = { uname: uname, ucontent:escape(ucontent) };

    $("p:eq(0)") 表示众多<p>标签中的第一个

    $.ajax({

                    type: "POST",

                    url: "resultPage.aspx",

                    data: createQueryString(),

                    dataType:"json",

                    success: function(msg) {

                    $("p:eq(0)").html(unescape(msg.ucontent));

                    }

                });

    aspx页面做异步提交:.cs页面用Response.Write返回值,则aspx页面要删除除第一行外的其它代码;

    返回josn格式数据的写法:Response.Write("{\"uname\":\""+Request["uname"]+"\",\"ucontent\":\""+Request ["ucontent"]+"\"}");

    escape()对输入的内容进行转码,unescape()对内容进行解码.

    jsonBuilder.Append(@"{""");  输出结果为{'      也可以写为jsonBuilder.Append("{\""); 好像也可以直接写为jsonBuilder.Append("{'");

    去掉最后一个逗号:jsonBuilder.Remove(jsonBuilder.Length-1,1); 

    $.each(){}循环;

    var row=$("#main").clone(); row.appndTo("#mainBox");将row追加到mainBox元素中;

    row.attr("id","main"+n.id);加上属性

    .remove()删除元素   .hide(1000)滑动删除元素

    js中:"<span onclick=del('"+n.id+"')>删除</span>"  注意单双引号  输出的结果为<span onclick="del('9')">删除 </span>

    aspx页面可以写成:<%=a.id%>

    css中的写法:Div.tres span.current

    <a href='javascript:getReList(1)'> 1 </a>

    clsObjectShredder.cs把用linq返回的数据转换为DataTable时,须加此文件。

    循环div时默认会换行,要都在一行显示则需设置属性:float:left;

    HTML中单选按钮的name属性相同,id属性不同。

    aspx页面中用HTML控件<input id="Radio1" type="radio" name="rad" checked="checked" value="cccc"/><input  id="Button2" type="submit" value="button" />,.cs页面中用string id = Request.Form["rad"];接收值。

    客户端清除缓存:

    <meta http-equiv="Pragma" content="no-cache" />

    <meta http-equiv="Cache-Control" content="no-cache" />

    <meta http-equiv="Expires" content="0" />

    服务端清除缓存:

            Response.Buffer = true;

            Response.ExpiresAbsolute = System.DateTime.Now.AddSeconds(-1);

            Response.Expires = 0;

            Response.CacheControl = "no-cache";

            Response.AddHeader("Pragma","No-Cache");

    锚点(提交页面后回到指定的位置):

    aspx页面<a name="section1">&nbsp;</a>

    .cs页面Response.Redirect("SkinMng.aspx#section1");

    实例化一个派生类时,会先执行基类中的构造函数,然后执行自己的构造函数。

    UpdatePanel控件可以实现局部无刷新,当UpdatePanel控件只针对某个button进行click事件注册,UpdatePanel 标签内部添加以下内容即可:

    <Triggers> 

                <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />

    </Triggers> 

    使用AJAX控件ModalPopupExtender:

    <%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="ajaxToolkit" %>

    <asp:UpdatePanel ID="UpdatePanel2" runat="server">

                            <ContentTemplate>

                                <div id="updatePanelStyle" style="background-color:#eeeeee; 450px; height:300px; border:1px  solid #000000;">

                                    <p style="text-align:center; font-size:14px;">文章分类管理</p>

                                    <asp:GridView ID="ArticelClassGridView" runat="server" 

                                        AutoGenerateColumns="false" onrowediting="ArticelClassGridView_RowEditing" 

                                        OnRowUpdating="ArticelClassGridView_RowUpdating"

                                        onrowcancelingedit="ArticelClassGridView_RowCancelingEdit" 

                                        DataKeyNames="id" onrowdeleting="ArticelClassGridView_RowDeleting">

                                        <Columns>

                                            <asp:BoundField DataField="id" HeaderText="编号" Visible="false" />

                                            <asp:BoundField DataField="cName" HeaderText="分类名称" >

                                                <ItemStyle Width="300px" />

                                            </asp:BoundField>

                                            <asp:CommandField ShowEditButton="true" />

                                            <asp:CommandField ShowDeleteButton="true" />

                                        </Columns>

                                    </asp:GridView>

                                    <br />

                                    <asp:TextBox ID="ArticelClassBox" runat="server"></asp:TextBox>

                                    <asp:Button ID="ArticleClassSubmit" runat="server" Text="添加" 

                                        onclick="ArticleClassSubmit_Click" />

                                    <br />

                                    <asp:Button ID="ArticelClassClose" runat="server" Text="关闭" />

                                </div>

                            </ContentTemplate>

                        </asp:UpdatePanel>

    <ajaxToolkit:ModalPopupExtender runat="server" ID="modalPop" TargetControlID="LinkButton1" PopupControlID="UpdatePanel2"  CancelControlID="ArticelClassClose"></ajaxToolkit:ModalPopupExtender>

  • 相关阅读:
    微信支付-公众号支付,统一下单,调起微信支付,回调验证
    注册时 手机验证码的js验证和后台验证,调用阿里大于短信验证平台,手机号注册
    使用有模板的page类;thinkphp 分页使用的css
    thinkphp分页类使用,以及修改,添加了每页第一和最后的序号
    富文本编辑器Uediet使用
    Redis集群环境搭建
    Redis单机版安装
    Linux的shell编程
    Notepad++的列编辑功能
    SprngCloud微服务框架搭建(一)
  • 原文地址:https://www.cnblogs.com/cw_volcano/p/1947519.html
Copyright © 2011-2022 走看看