1. 姓 名:
    电 话:
       快 速
       留 言:
    验证码:
北大青鸟首页  >> 青鸟课堂 >> 软件课堂  >> 
上海北大青鸟课程之“14个关于ASP.NET热点问题的解答”
上海北大青鸟课程之“14个关于ASP.NET热点问题的解答”
1、ASP.NET能在那些系统中运行? 
   目前,ASP.NET还只能奔跑在微软的Windows 2000、Windows XP和Windows 2003的系统中,并且需要微软Internet Information Server(IIS)的支持,微软原计划要让Windows NT4.0也支持ASP.NET,但可能微软是有些技术问题或市场考虑,还没有实现NT下的ASP.NET的支持。 
    
    2、在一个ASPX文件中是否可以使用一种以上的语言? 
   答案让你有点失望,虽然微软的提供了公共语言运行环境(CLR,Common Laguage Runtime),实现了多种编程语言间的紧密集成,可以允许你从一个VB对象中导出C#所需的对象来,但一个ASPX文件中只能用一种语言,正如你不能在VB.NET中使用C#的语法一样。 
    
    3、ASPX文件的服务器端脚本支持那些语言? 
   目前,ASPX文件只支持C#、Visual Basic.NET、Jscript.NET和J#,但是你使用code?behind(代码分离)的方法创建一个独立代码文件,你就可以使用任何.NET编译器支持的语言来实现功能了。 
    
    4、在Global.asax文件中能使用code?behind(代码分离)技术吗? 
   可以,例如: 

    5、我能否看到ASPX文件在ASP.NET中生成的代码吗? 
   可以看到的,当你的ASPX文件中包含命令或Web.config中声明了时,你就可以在系统目录下的Microsoft.NETFrameworkv1.0.nnnnTemporary ASP.NET Files中找到ASPX文件在ASP.NET下生成的文件。 

   6、在ASPX文件中如何注释呢? 
 同ASP文件中的方法一样。 
     
   7、ASPX文件中是否可以存在一个以上服务器端 Form 标记? 
 不可以 
    
   8、我可以在Web窗体中使用自定义数据类型吗 
 可以,你可以把包含自定义数据类型的DLL文件放在程序根目录下的BIN目录中,ASP.NET会在数据类型引用时,装载DLL文件的。 
    
   9、我能在Global.asax文件中触发那些事件? 
  Application对象创建和结束时所触发的事件有 
Application_Start 
  Application_End     
  Session对象创建和结束时所触发的事件有 
  • Session_Start 
  • Session_End 
  对程序有请求发生时触发的事件有 (按发生顺序排列) 
  • Application_BeginRequest 
  • Application_AuthenticateRequest 
  • Application_AuthorizeRequest 
  • Application_ResolveRequestCache 
  • Application_AcquireRequestState 
  • Application_PreRequestHandlerExecute 
  • Application_PostRequestHandlerExecute 
  • Application_ReleaseRequestState 
  • Application_UpdateRequestCache 
  • Application_EndRequest 
  当有程序有错误发生时触发的事件有 
  • Application_Error 
  • Application_Disposed 

  10、Web控件是否支持样式表(CSS)呢? 
 支持,所有的Web控件都从基类System.Web.UI.WebControls.WebControl中继承了一个叫做CssClass的属性。 
    例如: 
    <html> 
       <head> 
         <style> 
            .Input { font: 10pt verdana; color: red; } 
         </style> 
        </head> 
        <body> 
           <form runat="server"> 
              <asp TextBox CssClass="Input" RunAt="server" /> 
           </form> 
       </body> 
    </html> 
    
  11、在ASPX文件中默认导入那些名称空间? 
 ASPX默认导入的名称空间可以直接引用了,使用其它的名称空间就的自行导入了。 
 默认名称空间 
 System     
 System.Collections     
 System.Collections.Specialized 
 System.Configuration     
 System.Text 
 System.Text.RegularExpressions     
 System.Web     
 System.Web.Caching   
 System.Web.Security     
 System.Web.SessionState 
 System.Web.UI     
 System.Web.UI.HtmlControls 
 System.Web.UI.WebControls     

  12、我是否可以自己创建服务器控件呢? 
 可以,创作您自己的 ASP.NET 服务器控件很容易。创建简单的自定义控件时,您所要做的只是定义从 System.Web.UI.Control 派生的类并重写它的 Render 方法。Render 方法采用 System.Web.UI.HtmlTextWriter 类型的参数。控件要发送到客户端的 HTML 作为字符串参数传递到 HtmlTextWriter 的 Write 方法。 

  13、如何在ASP.NET程序中发送邮件呢? 
 在ASP.NET程序中发送邮件不再象ASP中那样需要组件的支持了,在.NET的框架基类的 System.Web.Mail名称空间内包含的MailMessage和SmtpMail类可以实现这个功能。 

  14、我将如何通过ADO.NET读取数据库中的图片并显示它呢? 
  下面举一个从Microsoft SQL Server的PUB数据库读取图片并显示它的例子: 
    <%@ Import Namespace="System.Data.SqlClient" %> 
    <%@ Import Namespace="System.Drawing" %> 
    <%@ Import Namespace="System.Drawing.Imaging" %> 
    <%@ Import Namespace="System.IO" %> 
    <script language="VB" runat="server"> 
    Sub Page_load(Sender as Object, E as EventArgs) 
       dim stream as new MemoryStream 
       dim connection as SqlConnection 
       connection=new SqlConnection("server=localhost;database=pubs;uid=sa;pwd=") 
      try 
         connection.Open() 
         dim command as SqlCommand 
         command = new SqlCommand ("select logo from pub_info where pub_id='0736'", connection) 
         dim image as byte() 
         image = command.ExecuteScalar () 
         stream.Write (image, 0, image.Length) 
         dim imgbitmap as bitmap 
         imgbitmap = new Bitmap (stream) 
         Response.C 
         imgbitmap.Save (Response.OutputStream, ImageFormat.Gif) 
      Finally 
        connection.Close() 
         stream.Clse() 
      End Try 
    End Sub 
    </script>