asp.net

位置:IT落伍者 >> asp.net >> 浏览文章

ASP.NET热点问题解答14个


发布日期:2024年05月30日
 
ASP.NET热点问题解答14个

ASPNET能在那些系统中运行?

目前ASPNET还只能奔跑在微软的Windows Windows XP和Windows 的系统中并且需要微软Internet Information Server(IIS)的支持微软原计划要让Windows NT也支持ASPNET但可能微软是有些技术问题或市场考虑还没有实现NT下的ASPNET的支持

在一个ASPX文件中是否可以使用一种以上的语言?

答案让你有点失望虽然微软的提供了公共语言运行环境(CLRCommon Laguage Runtime)实现了多种编程语言间的紧密集成可以允许你从一个VB对象中导出C#所需的对象来但一个ASPX文件中只能用一种语言正如你不能在VBNET中使用C#的语法一样

ASPX文件的服务器端脚本支持那些语言?

目前ASPX文件只支持C#Visual BasicNETJscriptNET和J#但是你使用code—behind(代码分离)的方法创建一个独立代码文件你就可以使用任何NET编译器支持的语言来实现功能了

在Globalasax文件中能使用code—behind(代码分离)技术吗?

当然可以了例如

Globalasax

和使用code—behind(代码分离)技术

Globalasax

MyAppvb:

Imports SystemWeb

Imports SystemWebSessionState

Public Class MyApp

Sub Application_Start(ByVal sender As Object ByVal e As EventArgs)

Application(online_session) =

End Sub

Sub Session_Start(ByVal sender As Object ByVal e As EventArgs)

ApplicationLock()

Application(online_session) = CInt(Application(online_session)) +

ApplicationUnLock()

End Sub

Sub Session_End(ByVal sender As Object ByVal e As EventArgs)

ApplicationLock()

Application(online_session) = CInt(Application(online_session))

ApplicationUnLock()

End Sub

End Class

我能否看到ASPX文件在ASPNET中生成的代码吗?

可以看到的当你的ASPX文件中包含命令或Webconfig中声明了时你就可以在系统目录下的MicrosoftNET\Framework\vnnnn\Temporary ASPNET Files中找到ASPX文件在ASPNET下生成的文件

在ASPX文件中如何注释呢?

同ASP文件中的方法一样

ASPX文件中是否可以存在一个以上服务器端 Form 标记?

不可以

我可以在Web窗体中使用自定义数据类型吗

可以你可以把包含自定义数据类型的DLL文件放在程序根目录下的BIN目录中ASPNET会在数据类型引用时装载DLL文件的

我能在Globalasax文件中触发那些事件?

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

Web控件是否支持样式表(CSS)呢?

Yes All Web controls inherit a property named CssClass from the base class SystemWebUIWebControlsWebControl The following example defines a CSS class named Input and uses it to modify a TextBox control to display text in red point Verdana type:

支持所有的Web控件都从基类SystemWebUIWebControlsWebControl中继承了一个叫做CssClass的属性

例如

<html>

<head>

<style>

Input { font: pt verdana; color: red; }

</style>

</head>

<body>

<form runat=server>

<asp:TextBox CssClass=Input RunAt=server />

</form>

</body>

</html>

在ASPX文件中默认导入那些名称空间?

ASPX默认导入的名称空间可以直接引用了使用其它的名称空间就的自行导入了

默认名称空间

&#;

System

SystemCollections

SystemCollectionsSpecialized

SystemConfiguration

SystemText

SystemTextRegularExpressions

SystemWeb

SystemWebCaching

SystemWebSecurity

SystemWebSessionState

SystemWebUI

SystemWebUIHtmlControls

SystemWebUIWebControls

我是否可以自己创建服务器控件呢?

可以创作您自己的 ASPNET 服务器控件很容易创建简单的自定义控件时您所要做的只是定义从 SystemWebUIControl 派生的类并重写它的 Render 方法Render 方法采用 SystemWebUIHtmlTextWriter 类型的参数控件要发送到客户端的 HTML 作为字符串参数传递到 HtmlTextWriter 的 Write 方法

例如服务器控件代码(简单显示字符串)Simplevb

Imports System

Imports SystemWeb

Imports SystemWebUI

Namespace SimpleControlSamples

Public Class SimpleVB : Inherits Control

Protected Overrides Sub Render(Output As HtmlTextWriter)

OutputWrite(<H>欢迎使用控件开发!</H>)

End Sub

End Class

End Namespace

引用文件Simpleaspx

<%@ Register TagPrefix=SimpleControlSamples Namespace=SimpleControlSamples Assembly=SimpleControlSamplesVB %>

<html>

<body>

<form method=POST action=Simpleaspx runat=server>

<SimpleControlSamples:SimpleVB id=MyControl runat=server/>

</form>

</body>

</html>

如何在ASPNET程序中发送邮件呢?

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

例如

Dim message As new MailMailMessage

messageFrom = web@com

messageTo = web@com

messageSubject = 测试

messageBody = 内容

MailSmtpMailSmtpServer = localhost

MailSmtpMailSend(message)

我将如何通过ADONET读取数据库中的图片并显示它呢?

下面举一个从Microsoft SQL Server的PUB数据库读取图片并显示它的例子

<%@ Import Namespace=SystemDataSqlClient %>

<%@ Import Namespace=SystemDrawing %>

<%@ Import Namespace=SystemDrawingImaging %>

<%@ Import Namespace=SystemIO %>

<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

connectionOpen()

dim command as SqlCommand

command = new SqlCommand (select logo from pub_info where pub_id= connection)

dim image as byte()

image = commandExecuteScalar ()

streamWrite (image imageLength)

dim imgbitmap as bitmap

imgbitmap = new Bitmap (stream)

ResponseContentType = image/gif

imgbitmapSave (ResponseOutputStream ImageFormatGif)

Finally

connectionClose()

streamClse()

End Try

End Sub

</script>

上一篇:ASP.NET缓存:方法和最佳实践[2]

下一篇:ASP.NET中发送Email完整实例