61阅读

asp.net网页制作-asp.net页面执行机制

发布时间:2017-11-27 所属栏目:asp.net网页制作

一 : asp.net页面执行机制

以前一直不太理解asp.net页面的执行机制,所以有些程序其实写的是错误的。昨晚在修改自己以前写的小程序时才发现自己的理解太肤浅....

1. 不用滥用static变量

static变量在应用程序的生命周期内都存在,而且所有用户共享.所以给一个页面添加一个静态变量,可以导致多个用户使用的时候互相影响。程序发生紊乱

2.不管是不是postback 每次请求一个页面都会导致该页面类重新实例化一次,page_load的时候可以用ispostback来控制那些只需要第一次执行....if(ispostback) {} 这里面的只有在页面回发的时候才执行,一般来说就是第一次 不执行。if(!ispostback) { } 这里面的就是第一次才执行。在该页面的生存期内只执行一次.

3.http协议是无状态的,所以postback的时候,控件的状态和值都保存在VIEWSTATE中....

4.页面类中的变量在postback的时候因为没有存入viewstate 所以会丢失.....

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

{

    int i;
   
    protected void Page_Load(object sender, EventArgs e)
   
    {
   
        if (!IsPostBack)
       
        {
       
            i = 10;
           
        }
       
 第一次输出的是10,因为在(!IsPostBack)赋值了....页面上再放个按钮激发回发事件就输出0.因为回发的时候重新实例化页面类丢失了
    }

二 : ASP.NET MVC分页问题解决

在使用Ajax.Pager进行分页的时候需要注意一下几个方面:

  1、一定要引入jquery.unobtrusive-ajax.min.js这个js;

  2、一定要在页面中使用注册分页器,注册方法:@{Html.RegisterMvcPagerScriptResource();};

具体的使用方法示例:

 <div class="row" style="position: relative; left: 30%">  <div class="col-md-8" style="width: auto">  @{  PagerConfig pagerConfig = new PagerConfig("pageIndex", "pageIndexBox", "goToBtn");  PagerOptions options = pagerConfig.GetPagerOption();  }  @Ajax.Pager(Model, options).AjaxOptions(a => a.SetUpdateTargetId("articles").SetHttpMethod("Post").SetDataFormId("searchView"))  </div>  <div class="col-md-4">  <div class="input-group" style="width: 120px; margin: 20px 0">  <input type="text" id="pageIndexBox" class="form-control" />  <span class="input-group-btn"><button class="btn btn-primary" id="goToBtn">跳转</button></span>  </div>  </div> </div> 

其中Model是IpagedList对象,获取PagerOptions的方法如下:

 /// <summary>  /// 翻页配置项  /// </summary>  /// <returns></returns>  public PagerOptions GetPagerOption()  {  PagerOptions options = new PagerOptions  {  AutoHide = false,  FirstPageText = "首页",  LastPageText = "尾页",  NextPageText = "下一页",  PrevPageText = "上一页",  PageIndexParameterName = this._pageIndexParaName,  ContainerTagName = "ul",  CssClass = "pagination",  CurrentPagerItemTemplate = "<li class="active"><a href="#">{0}</a></li>",  DisabledPagerItemTemplate = "<li class="disabled"><a>{0}</a></li>",  PagerItemTemplate = "<li>{0}</li>",  PageIndexBoxId = this._pageIndexBoxId,  GoToButtonId = this._goToButtonId,  NumericPagerItemCount = 5  };  return options;  } 

目前所知,该控件不支持显示记录总数及总页数。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持61阅读。

三 : asp.net 页面中添加普通视频的几种方式

第一种

是通过调用window media player进行播放诸如:wmv,asf等格式文件:

复制代码 代码如下:


<object align=center class=OBJECT classid=CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95 height=320 id=MediaPlayer width=356>
<param name="ShowStatusBar" value="-1">
<param name="Filename" value="电影地址">
<embed type=application/x-oleobject codebase=http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701 flename=mp src=电影地址 width=356 height=320>
</embed> 
</object>


第二种

是通过调用replayer进行播放诸如:rm,ram等格式文件
播放框:

复制代码 代码如下:


<object classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=285 id=RAOCX name=rmplay width=356>
<param name="SRC" value="影片地址">
<param name="CONSOLE" value="Clip1">
<param name="CONTROLS" value="imagewindow">
<param name="AUTOSTART" value="true">
<embed src="影片地址" autostart="true" controls="ImageWindow" console="Clip1" pluginspage="http://www.real.com"/' target="_blank" >http://www.real.com"; width="356" height="285">
</embed> 
</object>


控制框:可紧跟播放框一起

复制代码 代码如下:


<object classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=27 id=video1 width=356>
<param name="_ExtentX" value="7276">
<param name="_ExtentY" value="1058">
<param name="AUTOSTART" value="0">
<param name="SHUFFLE" value="0">
<param name="PREFETCH" value="0">
<param name="NOLABELS" value="0">
<param name="CONTROLS" value="ControlPanel">
<param name="CONSOLE" value="Clip1">
<param name="LOOP" value="0">
<param name="NUMLOOP" value="0">
<param name="CENTER" value="0">
<param name="MAINTAINASPECT" value="0">
<param name="BACKGROUNDCOLOR" value="#ffffff">
<embed type="audio/x-pn-realaudio-plugin" console="Clip1" controls="ControlPanel" height="27" width="356" autostart="0" _extentx="7276" _extenty="1058" shuffle="0" prefetch="0" nolabels="0" loop="0" numloop="0" center="0" maintainaspect="0" backgroundcolor="#ffffff">
</embed>
</object>



第三种

是通过调用flashplayer进行播放:swf类的flash文档,分别如下:

复制代码 代码如下:


<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="356" height=320>
<param name="movie" value="flash地址">
<param name="quality" value="high">
<embed src="flash地址" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer"' target="_blank" >http://www.macromedia.com/go/getflashplayer"; type="application/x-shockwave-flash" width="356" height=320>

本文标题:asp.net网页制作-asp.net页面执行机制
本文地址: http://www.61k.com/1096953.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1