十四个关于ASP.NET基础知识问答(C#版)
这是一些ASP.NET很基础的东西,希望对ASP.NET爱好者特别是刚刚入门的朋友有所帮助虽然示例代码是C#.NET,但是不影响VB.NET朋友的参考。好,继续往下看吧!
1、ASP.NET能在那些系统中运行?
目前,ASP.NET还只能运行在微软的Windows 2000、Windows XP、Windows 2003和Windows2008的下,当然是需要IIS支持的,最初要让Windows NT4.0也支持ASP.NET,但可能微软是有些技术问题或市场考虑,还没有实现NT下的ASP.NET的支持。
2、在一个ASPX文件中是否可以同时使用一种以上的语言?
答案让你有点失望,虽然微软的提供了公共语言运行环境(CLR,Common Laguage Runtime),实现了多种编程语言间的紧密集成,可以允许你从一个VB对象中导出C#所需的对象来,但一个ASPX文件中只能用一种语言,正如你不能在VB.NET中使用C#的语法一样,不过不同语言的项目或生成的DLL可以互相调用。
3、ASPX文件的服务器端脚本支持那些语言?
目前,ASPX文件只支持C#、Visual Basic.NET、Jscript.NET和J#(目前国内比较流行的是C#)但是你使用code-ehind(代码分离)的方法创建一个独立代码文件,你就可以使用任何.NET编译器支持的语言来实现功能了。
4、在Global.asax文件中能使用code—behind(代码分离)技术吗?
当然可以了,例如:
Global.asax:
和使用code—behind(代码分离)技术
Global.asax:
MyApp.cs:
以下是引用片段:
using System.Web;
using System.Web.SessionState;
public class MyApp { void Application_Start(object sender, EventArgs e) {
Application("online_session") = ;
} void Session_Start(object sender, EventArgs e) {
Application.Lock();
Application("online_session") = (int.Parse(Application("online_session")) + );
Application.UnLock();//bbs.51aspx.com
} void Session_End(object sender, EventArgs e) {
Application.Lock();//51aspx
Application("online_session") = (int.Parse(Application("online_session")) - );
Application.UnLock();
}
}
5、我能看到ASPX文件在ASP.NET中生成的代码吗?
可以看到的,当你的ASPX文件中包含命令或Web.config中声明了时,你就可以在系统目录下的Microsoft.NETFrameworkvX…nnnnTemporary ASP.NET Files中找到ASPX文件在ASP.NET下生成的文件。
6、在ASPX文件中如何注释呢?
C#与js脚本的一样,VB.net同asp的语法一样。
7、ASPX文件中是否可以存在一个以上服务器端 Form 标记?
可以,但是不能同时存在两个以上服务器端的Form(即runat=“Server”)
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的属性。
例如:
以下是引用片段:
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.cs:
以下是引用片段:
Imports System
Imports System.Web
Imports System.Web.UI
Namespace SimpleControlSamples
public class SimpleCSharp
{
protected override void Render(HtmlTextWriter Output)
{
Response.Write("<H2>欢迎来到Asp.net源码下载专业站<H2>");
}
}
引用文件Simple.aspx:
以下是引用片段:
<%@ Register TagPrefix=“SimpleControlSamples” Namespace=“SimpleControlSamples” Assembly=“SimpleControlSamplesCSharp” %>
13、如何在ASP.NET程序中发送邮件呢?
在ASP.NET程序中发送邮件不再象ASP中那样需要组件的支持了,在.NET的框架基类的System.Web.Mail名称空间内包含的MailMessage和SmtpMail类可以实现这个功能。
例如:
以下是引用片段:
Mail.MailMessage message = new Mail.MailMessage();
message.From = "test@51aspx.com";
message.To = "test@51aspx.com";
message.Subject = “发给51aspx的邮件”;
message.Body = “内容”;
Mail.SmtpMail.SmtpServer = “localhost”;
Mail.SmtpMail.Send(message);
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="C#" runat="server">
void Page_load(object Sender, EventArgs E) {
MemoryStream stream = new MemoryStream();
SqlConnection connection;
connection = new SqlConnection("server=localhost;database=pubs;uid=sa;pwd=");
try {
connection.Open();
SqlCommand command;
command = new SqlCommand("select logo from pub_info where pub_id=\'0736\'", connection);
byte[] image;
image = command.ExecuteScalar();
stream.Write(image, , image.Length);
bitmap imgbitmap;
imgbitmap = new Bitmap(stream);
Response.ContentType = "image/gif";
imgbitmap.Save(Response.OutputStream, ImageFormat.Gif);
}
finally {
connection.Close();
stream.Clse();
}
}
</script>
十四个关于ASP.NET基础知识问答(C#版)的更多相关文章
- ASP.NET基础知识汇总之WebConfig自定义节点详细介绍
之前介绍过Webconfig的具体知识ASP.NET基础知识汇总之WebConfig各节点介绍.今天准备封装一个ConfigHelper类,涉及到了自定义节点的东东,平时虽然一直用,但也没有系统的总结 ...
- PHP基础入门(四)---PHP数组实用基础知识
PHP数组 数组是特殊的变量,它可以同时保存一个以上的值. ***关键词:数组基础.数组遍历.超全局数组.数组功能.数组函数. 下面来和大家分享一下有关PHP的数组基础知识,希望对你PHP的学习有所帮 ...
- Selenium系列(十四) - Web UI 自动化基础实战(1)
如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...
- 大数据基础知识问答----spark篇,大数据生态圈
Spark相关知识点 1.Spark基础知识 1.Spark是什么? UCBerkeley AMPlab所开源的类HadoopMapReduce的通用的并行计算框架 dfsSpark基于mapredu ...
- 前端基础进阶(十四):es6常用基础合集
在实际开发中,ES6已经非常普及了.掌握ES6的知识变成了一种必须.尽管我们在使用时仍然需要经过babel编译. ES6彻底改变了前端的编码风格,可以说对于前端的影响非常巨大.值得高兴的是,如果你熟悉 ...
- ASP.NET基础知识汇总之WebConfig各节点介绍
web.config虽然一直用,接触最多的也就是节点appSettings和connectionSettings,今天系统的梳理一下,了解一下webconfig各个节点的含义,先简单的浏览一下具体的w ...
- 第二十四节:Java语言基础-讲解数组的综合应用
数组的综合应用 // 打印数组 public static void printArray(int[] arr) { for(int x=0;x<arr.length;x++) { if(x!= ...
- 第十四节:Asp.Net Core 中的跨域解决方案(Cors、jsonp改造、chrome配置)
一. 整体说明 1. 说在前面的话 早在前面的章节中,就详细介绍了.Net FrameWork版本下MVC和WebApi的跨域解决方案,详见:https://www.cnblogs.com/yaope ...
- asp.net 基础知识
1. DropDownList 的赋值 Response.Write(DropDownList1.Items.FindByText("潍坊").Value); Response.W ...
随机推荐
- FTP:文件传输协议(指令及响应代码)
文件传输协议(FTP)使得主机间可以共享文件. FTP 使用 TCP 生成一个虚拟连接用于控制信息,然后再生成一个单独的 TCP 连接用于数据传输.控制连接使用类似 TELNET 协议在主机间交换命令 ...
- bzoj3489
kdtree 3维kdtree,就是三个维度轮换着切,我们把每个元素看成一个点,坐标是上次出现的位置,下次出现的位置,自己的位置,第一个<l,第二个>r,第三个[l,r],然后kdtree ...
- css3单位em,rem,px,vw,vh等
昨天发现了个好用的方法去设置手机端的rem单位,在这里记录下. html{ font-size:calc(100vw/7.5);} 这是按照750的设计稿(也就是iphone6的设计稿). 100vw ...
- Acyclic Organic Compounds
题意: 给一以1为根的字符树,给出每个节点的字符与权值,记 $diff_{x}$ 为从 $x$ 出发向下走,能走到多少不同的字符串,求问最大的$diff_{x} + c_{x}$,并求有多少个 $di ...
- CF-805C
C. Find Amir time limit per test 1 second memory limit per test 256 megabytes input standard input o ...
- PHP中正则表达式学习及应用(二)
正则表达式中的“元字符” * 匹配前一个内容的0次1次或多次 例如: <?php $mode="/go*gle/"; //前一个内容指的是 * 的前一个字符 o ,在$str ...
- python3 类 组合
解决类与类之间代码冗余问题有两种解决方案: 第一 是继承,第二是组合 1:继承 描述的是类与类之间的也就是什么是什么的关系 2: 组合 描述的是类与类之间的关系, 是一种什么有什么的关系的,也 ...
- IE8 以上版本兼容
在html的内如下写法 其中最后一行是永远以最新的IE版本模式来显示网页的. 另外加上Emulate模式 Emulate模式后则更重视 (细心的人会注意到,用IE9去访问带有x-ua-compatib ...
- 将字符串中的字符按Z字形排列,按行输出
示例1: Input: s = "PAYPALISHIRING", numRows = 3 Output: "PAHNAPLSIIGYIR" 示例2: Pyth ...
- Codevs 1099 字串变换
1099 字串变换 2002年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 已知有 ...