µÚÒ»ÖÖ²¥·ÅÆ÷´úÂ룺
<object title="dvubb" align="middle" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" class="object" id="MediaPlayer" width="480" height="360">
<param name="AUTOSTART" value="true"/>
<param name="ShowStatusBar" value="-1"/>
<param name="Filename" value="F:\asp.net\datalist¿Ø¼þ\1.wmv"/>
<embed title="dvubb" type="application/x-oleobject" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701" flename="mp" src="F:\asp.net\datalist¿Ø¼þ\1.wmv" mce_src="F:\asp.net\datalist¿Ø¼þ\1.wmv" width="480" height="360" autoplay="false"></embed>
</object>
µÚ¶þÖÖ²¥·ÅÆ÷´úÂ룺
<object id="player" height="64" width="260" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6">
<param NAME="AutoStart" VALUE="-1">
<!--ÊÇ·ñ×Ô¶¯²¥·Å-->
<param NAME="Balance" VALUE="0">
<!--µ÷Õû×óÓÒÉùµÀƽºâ,ͬÉÏÃæ¾É²¥·ÅÆ÷´úÂë-->
<param name="enabled" ......
ASP.NET AJAXÈëÃÅϵÁн«»áд¹ØÓÚASP.NET AJAXһЩ¿Ø¼þµÄʹÓ÷½·¨ÒÔ¼°»ù´¡ÖªÊ¶£¬ÆäÖв¿·ÖÎÄÕÂΪԴ´£¬Ò²ÓÐһЩÎÄÕÂÊÇÖ±½Ó·Òë×Ô¹Ù·½Îĵµ£¬±¾²¿·ÖÄÚÈݻ᲻¶Ï¸üС£
Ŀ¼
ASP.NET AJAXÈëÃÅϵÁУ¨1£©£º¸ÅÊö
µ¼¶Á£º×÷Ϊ±¾ÏµÁÐÎÄÕµĿªÆª£¬¼òµ¥½éÉÜÒ»ÏÂASP.NET AJAXµÄ¸Å¿ö¼°¸÷¸ö×é³É²¿·Ö¡£
ASP.NET AJAXÈëÃÅϵÁУ¨2£©£ºÊ¹ÓÃScriptManager¿Ø¼þ
µ¼¶Á£ºScriptManager¿Ø¼þ°üÀ¨ÔÚASP.NET 2.0 AJAX ExtensionsÖУ¬ËüÓÃÀ´´¦ÀíÒ³ÃæÉϵÄËùÓÐ×é¼þÒÔ¼°Ò³Ãæ¾Ö²¿¸üУ¬Éú³ÉÏà¹ØµÄ¿Í»§¶Ë´úÀí½Å±¾ÒÔ±ãÄܹ»ÔÚJavaScriptÖзÃÎÊWeb Service£¬ËùÓÐÐèÒªÖ§³ÖASP.NET AJAXµÄASP.NETÒ³ÃæÉÏÓÐÇÒÖ»ÄÜÓÐÒ»¸öScriptManager¿Ø¼þ¡£ÔÚScriptManager¿Ø¼þÖÐÎÒÃÇ¿ÉÒÔÖ¸¶¨ÐèÒªµÄ½Å±¾¿â£¬»òÕßÖ¸¶¨Í¨¹ýJSÀ´µ÷ÓõÄWeb Service£¬ÒÔ¼°µ÷ÓÃAuthenticationServiceºÍProfileService£¬»¹ÓÐÒ³Ãæ´íÎó´¦ÀíµÈ¡£
ASP.NET AJAXÈëÃÅϵÁУ¨3£©£ºÊ¹ÓÃScriptManagerProxy¿Ø¼þ
µ¼¶Á£ºÔÚASP.NET AJAXÖУ¬ÓÉÓÚÒ»¸öASPXÒ³ÃæÉÏÖ»ÄÜÓÐÒ»¸öScriptManager¿Ø¼þ£¬ËùÒÔÔÚÓÐĸ°æÒ³µÄÇé¿öÏ£¬Èç¹ûÐèÒªÔÚMaster-PageºÍContent-PageÖÐÐèÒªÒýÈ벻ͬµÄ½Å±¾Ê±£¬Õâ¾ ......
ASP.NET AJAXÈëÃÅϵÁн«»áд¹ØÓÚASP.NET AJAXһЩ¿Ø¼þµÄʹÓ÷½·¨ÒÔ¼°»ù´¡ÖªÊ¶£¬ÆäÖв¿·ÖÎÄÕÂΪԴ´£¬Ò²ÓÐһЩÎÄÕÂÊÇÖ±½Ó·Òë×Ô¹Ù·½Îĵµ£¬±¾²¿·ÖÄÚÈݻ᲻¶Ï¸üС£
Ŀ¼
ASP.NET AJAXÈëÃÅϵÁУ¨1£©£º¸ÅÊö
µ¼¶Á£º×÷Ϊ±¾ÏµÁÐÎÄÕµĿªÆª£¬¼òµ¥½éÉÜÒ»ÏÂASP.NET AJAXµÄ¸Å¿ö¼°¸÷¸ö×é³É²¿·Ö¡£
ASP.NET AJAXÈëÃÅϵÁУ¨2£©£ºÊ¹ÓÃScriptManager¿Ø¼þ
µ¼¶Á£ºScriptManager¿Ø¼þ°üÀ¨ÔÚASP.NET 2.0 AJAX ExtensionsÖУ¬ËüÓÃÀ´´¦ÀíÒ³ÃæÉϵÄËùÓÐ×é¼þÒÔ¼°Ò³Ãæ¾Ö²¿¸üУ¬Éú³ÉÏà¹ØµÄ¿Í»§¶Ë´úÀí½Å±¾ÒÔ±ãÄܹ»ÔÚJavaScriptÖзÃÎÊWeb Service£¬ËùÓÐÐèÒªÖ§³ÖASP.NET AJAXµÄASP.NETÒ³ÃæÉÏÓÐÇÒÖ»ÄÜÓÐÒ»¸öScriptManager¿Ø¼þ¡£ÔÚScriptManager¿Ø¼þÖÐÎÒÃÇ¿ÉÒÔÖ¸¶¨ÐèÒªµÄ½Å±¾¿â£¬»òÕßÖ¸¶¨Í¨¹ýJSÀ´µ÷ÓõÄWeb Service£¬ÒÔ¼°µ÷ÓÃAuthenticationServiceºÍProfileService£¬»¹ÓÐÒ³Ãæ´íÎó´¦ÀíµÈ¡£
ASP.NET AJAXÈëÃÅϵÁУ¨3£©£ºÊ¹ÓÃScriptManagerProxy¿Ø¼þ
µ¼¶Á£ºÔÚASP.NET AJAXÖУ¬ÓÉÓÚÒ»¸öASPXÒ³ÃæÉÏÖ»ÄÜÓÐÒ»¸öScriptManager¿Ø¼þ£¬ËùÒÔÔÚÓÐĸ°æÒ³µÄÇé¿öÏ£¬Èç¹ûÐèÒªÔÚMaster-PageºÍContent-PageÖÐÐèÒªÒýÈ벻ͬµÄ½Å±¾Ê±£¬Õâ¾ ......
Äú¿ÉÒÔʹÓÃHTTPÄ£¿é£¬Ò»¸öµ½ASP.NET HttpApplicationStateÀàµÄÀ©Õ¹£¬ÔÚGlobal.asax±àд´úÂëÇ¿ÖÆASP.NETÔÚÿһ¸öÒ³ÃæÇëÇóʱ×Ô¶¯×¢ÈëÒÀÀµµÄ¶ÔÏ󣬾ÍÏñÔÚASP.NET Web´°ÌåÓ¦ÓóÌÐòÖÐÌÖÂÛµÄÒ»Ñù.
ÏÂÁз½·¨ÏÔʾÁËÒ»¸öºÏÊʵķ½·¨Äܹ»»ñÈ¡PreRequestHandlerExecuteʼþ½«Ëü×Ô¼º×¢Èëµ½ASP.NETµÄÖ´ÐÐÁ÷Ë®Ïߣ¬ÔÚÿ¸öÒ³ÃæÇëÇóÖÐͨ¹ýÈÝÆ÷µÄBuildUp·½·¨ÔËÐÐHttpÄ£¿é£¬²¢»ñÈ¡OnPageInitCompleteʼþ¡£µ±OnPageInitCompleteÖ´ÐÐʱģ¿é´úÂë°´ÕÕËùÓеĿؼþÊ÷ÔËÐУ¬²¢Í¨¹ýÈÝÆ÷µÄBuildUp·½·¨´¦Àíÿ¸ö¿Ø¼þ¡£
BuildUp·½·¨»ñÈ¡ÒѾ´æÔڵĶÔÏóʵÀý£¬´¦Àí²¢Ìî³äÀàµÄÒÀÀµ£¬·µ»ØʵÀý¡£Èç¹ûûÓÐÒÀÀµÔò·µ»Ø×î³õµÄʵÀý¡£
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using Microsoft.Practices.Unity;
namespace Unity.Web
{
public class UnityHttpModule : IHttpModule
{
public void Init(HttpApplication context)
{
context.PreRequestHandlerExecute += OnPreRequestHandlerExecute;
}
public void Dispose() { }
......
ÒýÓÃ×Ô£ºhttp://www.cnblogs.com/suzongwei/archive/2008/11/10/1330377.html
»òÐí Õâ¸ö¸üÒ׶®Ð© ´úÂë¹ý³Ì
http://blog.csdn.net/swort_177/archive/2007/12/02/1912159.aspx
¶ÔÓÚASP.NET¿ª·¢Õߣ¬Àí½âASP.NETµÄÒ³ÃæÉúÃüÖÜÆÚÊǷdz£ÖØÒªµÄ¡£
Ö÷ÒªÊÇΪÁ˸ãÃ÷°×ÔÚÄÄÀï·ÅÖÃÌض¨µÄ·½·¨ºÍÔÚºÎʱÉèÖø÷ÖÖÒ³ÃæÊôÐÔ¡£
µ«ÊǼÇÒäºÍÀí½âÒ³ÃæÉúÃüÖÜÆÚÀïÌṩµÄʼþ´¦Àí·½·¨(method)·Ç³£À§ÄÑ¡£
»¥ÁªÍøÉÏÓкܶà¹ØÓÚÒ³ÃæÉúÃüÖÜÆÚÄÚ²¿»úÖƵÄÎÄÕ£¬ËùÒÔ±¾ÎÄÖ»×¼±¸¼òµ¥¸²¸Ç¼¼ÊõµÄ»ù´¡²¿·Ö£¬¸üÖ÷ÒªµÄÄ¿µÄÊǸø´ó¼ÒÌṩһ¸ö¼òµ¥µÃ¼ÇÒäÒ³ÃæÉúÃüÖÜÆڵķ½·¨¡£
׼ȷµÄ¼ÇÒäASP.NETÒ³ÃæÉúÃüÖÜÆÚÿһ¸ö½×¶Î·¢ÉúÁËʲôÊÂÇéÊDZȽÏÀ§Äѵģ¬Ò»ÖÖ±ãÓÚ¼ÇÒäµÄ·½·¨ÊǸù¾Ý¸÷¸ö½×¶ÎµÄÃû×Ö×éºÏ³öÒ»¸öËõд¡£Î¢ÈíµÄÎĵµ¸ø³öµÄASP.NETÉúÃüÖÜÆÚÈçÏ£º
Page Request
Start
Page Initialization
Load
Validation
Postback
event handling
Rendering
Unload
¸ù¾ÝÕâ¸ö×éºÏ³öÒ»¸öËõд·Ç³£ÈÝÒס£
¼ÈÈ»Page Request¼¼ÊõÉϲ¢²»ÊÇÒ³ÃæÉúÃüÖÜÆÚµÄÒ»²¿·Ö£¨Õâ¸ö½×¶Î½ö½ö±êʾÎÒÃÇÊÇ·ñ¿ªÊ¼Ò»¸öÒ³ÃæÖÜÆÚ»òÕß´Ó»º´æ¼ÓÔØÒ»¸öÒ³Ã棩£¬ÎÒÃÇΪÁË·½±ã£¬¾Í²»°üÀ¨ÕâÒ»½×¶Î¡£
S – Start
I – Initialize
L – L ......
1¡¢Ö±½Ó½«Ò³ÃæÄÚÈÝ´æÔÚ±äÁ¿ÖкóÊä³ö£º
StringBuilder IndexContentResult= new StringBuilder(); //´æ·ÅÊä³öÒ³ÃæµÄHTML
IndexContentResult.Append("<html>\n");
IndexContentResult.Append(" <head>\n");
IndexContentResult.Append(" <title>title</title> \n");
IndexContentResult.Append(" </head>\n");
IndexContentResult.Append(" <body>\n");
...
IndexContentResult.Append(" <body>\n");
IndexContentResult.Append("</html>\n");
string tempfile = Server.MapPath("~");
tempfile = tempfile + "index.htm";
System.IO.StreamWriter sr = new System.IO.StreamWriter(tempfile, false, System.Text.Encoding.Default);
sr.Write(IndexContentResult.ToString());
sr.Close() ......
/* from: http://www.techmango.com/blog/article/DotNet/Explore_Asp_net_postback_mechanism.htm */
__doPostBack×÷ΪÔÚasp.netÖÐÒ»¸öºÜºËÐĺÜÖØÒªµÄ²¿·Ö,ÎÒÃÇÓбØÒªÉîÈëÁ˽âÒ»ÏÂ.
Æäʵ,__doPostBackÊÇÒ»¸öºÜ¼òµ¥µÄ½Å±¾º¯Êý.´úÂëÈçÏÂ:
//__doPostBack<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /><input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />function __doPostBack(eventTarget, eventArgument) {if (!theForm.onsubmit || (theForm.onsubmit() != false)) {theForm.__EVENTTARGET.value = eventTarget;theForm.__EVENTARGUMENT.value = eventArgument;theForm.submit();}}
ÔÀ´ÊÇÔÚsubmitÉÏ×öÎÄÕ°¡.microsoft³ÊÏÖ¸øÎÒÃǵľÍÊÇÕâÖÖ¾«ÇɵÄ˼ά!
ÎÒ¿´µ½,asp.netÏÖÔÚÒ³ÃæÉÏÌí¼ÓÁËÁ½¸öhidden input,ÕâÁ½¸öinput·Ö±ðÓÃÀ´´æ·Å´¥·¢postbackµÄcontrolµÄIDºÍ²ÎÊý.Õâ¾ÍÊÇÎÒÃǴ󲿷ÖÈËÈÏʶµ½µÄ:
__doPostBack(obj1,obj2)µÄµÚÒ»¸ö²ÎÊýÊǿؼþID,µÚ¶þ¸ö²ÎÊýÊÇpostbackµÄ²ÎÊý.È»ºó¾Í¿ÉÒÔÔÚºǫ́ÓÃRequest.Form["__EVENTTARGET"]ºÍ Request.Form["__EVENTARGUMENT"]È¡µÃ¿Ø¼þIDºÍ²ÎÊý.
²»¹ý,ÁíÍâÒª ......