ASP.NET热点问题解答14个
程序员文章站
2023-11-22 11:47:10
1、asp.net能在那些系统中运行? 目前,asp.net还只能奔跑在微软的windows 2000、windows ...
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(代码分离)技术吗?
当然可以了,例如:
global.asax:
和使用code—behind(代码分离)技术
global.asax:
myapp.vb:
imports system.web
imports system.web.sessionstate
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.net\framework\v1.0.nnnn\temporary 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)呢?
yes. all web controls inherit a property named cssclass from the base class system.web.ui.webcontrols.webcontrol. the following example defines a css class named input and uses it to modify a textbox control to display text in red 10-point verdana type:
支持,所有的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='0736'", 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>