ホームページ  >  記事  >  バックエンド開発  >  いくつかの古典的な ASP.NET の問題の詳細な説明

いくつかの古典的な ASP.NET の問題の詳細な説明

零下一度
零下一度オリジナル
2017-07-03 16:58:061561ブラウズ


1. ASP.NET はどのシステムで実行できますか?

現在、ASP.NET は Microsoft Windows 2000、Windows XP、および Windows 2003 システムでのみ実行でき、Microsoft Internet Information Server (IIS) のサポートが必要です。Microsoft は当初、Windows NT4.0 も ASP .NET をサポートする予定でした。しかし、おそらく Microsoft には技術的な問題や市場の考慮事項があり、NT での ASP.NET のサポートをまだ実装していません。

2. 1つのASPXファイルで複数の言語を使用できますか?

答えはあなたにとって少し残念です。Microsoft は、複数の プログラミング言語 間の緊密な統合を実現する共通言語ランタイム (CLR、Common Laguage Runtime) を提供していますが、これを使用すると、VB オブジェクトから C# をエクスポートできます。必要なオブジェクトは付属していますが、VB.NET で C# 構文を使用できないのと同様に、ASPX ファイルで使用できる言語は 1 つだけです。

3. ASPX ファイルのサーバーサイドスクリプトはどの言語をサポートしていますか?

現在、ASPX ファイルは C#、Visual Basic.NET、Jscript.NET、および J# のみをサポートしていますが、分離コード (コード分離) 方法を使用して独立したコード ファイルを作成する場合は、任意の .NET コンパイラ サポート言語を使用できます。機能を実装します。

4. Global.asax ファイルで分離コード (コード分離) テクノロジーを使用できますか?

もちろん、例えば:
Global.asax:

そして分離コード(コード分離)技術を使用します

 Global.asax:  
    
  MyApp.vb:  
  Imports System.Web  
  Imports System.Web.
Session
State  
  Public Class MyApp  
  Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)  
  Application("online_session") = 0  
  End Sub  
  Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)  
  Application.Lock()  
  Application("online_session") = CInt(Application("online_session")) + 1  
  Application.UnLock()  
  End Sub  
  Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)  
  Application.Lock()  
  Application("online_session") = CInt(Application("online_session")) - 1  
  Application.UnLock()  
  End Sub  
  End Class

5. ASPXファイルによって生成されたコードをASP.NETで見ることができますか?

ご覧のとおり、ASPX ファイルにコマンドが含まれているか、Web.config で宣言されている場合、システム ディレクトリの Microsoft.NETFrameworkv1.0.nnnnTemporary ASP.NET Files の ASP.NET Files に ASPX ファイルが見つかります。 .NET で生成されたファイル。

6. ASPX ファイルにコメントするにはどうすればよいですか?

ASPファイルの方法と同じです。


7. ASPX ファイル内に複数のサーバーサイド Form タグを含めることはできますか?

いいえ

8. Webフォームでカスタムデータ型を使用できますか?

はい、カスタムデータ型を含むDLLファイルをプログラムのルートディレクトリの下のBINディレクトリに置くことができます。データ型が参照されるときに DLL ファイルをロードします。

9. Global.asax ファイルでどのようなイベントをトリガーできますか?作成終了と終了時の Application オブジェクトは Application_Start
Application_END
Session (順番に並んでいます)
• Application_BeginRequest
• Application_AuthenticateRequest
• Application_AuthorizeRequest
• Application_ResolveRequestCache
• Application_AcquireRequestState
• Application_PreRequestHandlerExecute です。
• Application_PostRequestHandlerExecute
• Application_ReleaseRequestState
• Application_UpdateRequestCache
• Application_EndRequest
プログラムでエラーが発生したときにトリガーされるイベントは
plication_Dissolved
10. Webコントロールはスタイルシート(CSS)をサポートしていますか?

はい。すべての Web コントロールは、基本クラス System.Web.UI.WebControls.WebControl から CssClass という名前のプロパティを継承し、それを使用して TextBox コントロールを
テキストを赤色で表示します。 10 ポイント Verdana 型:

サポートされており、すべての 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 方法。 
  例如: 
    服务器控件代码(简单显示字符串):Simple.vb: 
   

 Imports System  
    Imports System.Web  
    Imports System.Web.UI  
    Namespace SimpleControlSamples  
    Public Class SimpleVB : Inherits Control  
    Protected Overrides Sub Render(Output As HtmlTextWriter)  
    Output.Write("<H2>欢迎使用控件开发!</H2>")  
    End Sub  
    End Class  
    End Namespace

    引用文件Simple.aspx: 
   

 <%@ Register TagPrefix="SimpleControlSamples" Namespace="SimpleControlSamples" Assembly="SimpleControlSamplesVB" %>  
    <html>  
    <body>  
    <form method="POST" action="Simple.aspx" runat=server>  
    <SimpleControlSamples:SimpleVB id="MyControl" runat=server/>  
    </form>  
    </body>  
    </html>

  13、如何在ASP.NET程序中发送邮件呢? 

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

Dim message As new Mail.MailMessage  
  message.From = "web3@163.com"  
  message.To = "web3@163.com"  
  message.Subject = "测试"  
  message.Body = "内容"  
  Mail.SmtpMail.SmtpServer = "localhost"  
  Mail.SmtpMail.Send(message)

  14、我将如何通过ADO.NET读取数据库中的图片并显示它呢? 

  下面举一个从Microsoft SQL Server的PUB数据库读取图片并显示它的例子: 
  下面举一个从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=&#39;0736&#39;", connection)  
    dim image as byte()  
    image = command.ExecuteScalar ()  
    stream.Write (image, 0, image.Length)  
    dim imgbitmap as bitmap  
    imgbitmap = new Bitmap (stream)  
    Response.ContentType = "image/gif"  
    imgbitmap.Save (Response.OutputStream, ImageFormat.Gif)  
    Finally  
    connection.Close()  
    stream.Clse()  
    End Try  
    End Sub  
    </script>

以上がいくつかの古典的な ASP.NET の問題の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。