get与 post的区别
答:get:是以实体的方式得到由请求uri所指定资源的信息,如果请求uri只是一个数据产生过程,那么最终要在响应实体中返回的是处理过程的结果所指向的资源,而不是处理过程的描述。
post:用来向目的服务器发出请求,要求它接受被附在请求后的实体,并把它当作请求队列中请求uri所指定资源的附加新子项,post被设计成用统一的方法实现下列功能:
1:对现有资源的解释
2:向电子公告栏、新闻组、邮件列表或类似讨论组发信息。
3:提交数据块
4:通过附加操作来扩展数据库
get是把参数数据队列加到提交表单action属性所指的url中,值和表单内各个字段一一对应,在url中可以看到。post是通过http post机制,将表单内各个字段与其内容放置在html header内一起传送到action属性所指的url地址。用户看不到这个过程。
2)asp.net的身份验证方式有哪些,原理是什么?
术语 定义
windows 身份验证提供程序 提供有关如何将 windows 身份验证与 microsoft internet 信息服务 (iis) 身份验证结合使用来确保 asp.net 应用程序安全的信息。
forms 身份验证提供程序 提供有关如何使用您自己的代码创建应用程序特定的登录窗体并执行身份验证的信息。使用 forms 身份验证的一种简便方法是使用 asp.net 成员资格和 asp.net 登录控件,它们一起提供了一种只需少量或无需代码就可以收集、验证和管理用户凭据的方法。有关更多信息,请参见使用成员资格管理用户和 asp.net 登录控件概述。
passport 身份验证提供程序 提供有关由 microsoft 提供的集中身份验证服务的信息,该服务为成员站点提供单一登录和核心配置文件服务。
3)试用客户端脚本实现“全选“的功能,即把页面的所有checkbox都选中
把每个checkbox的name都命名一样,如chk_item,然后代码如下:
for(i=0;i<document.getelementsbyname('chk_item').length;i++) { if(document.getelementsbyname('chk_item')[i].checked) { f=true; break; } }
4)asp.net中内置对象是什么?
在 web 应用程序运行时,asp.net 将维护有关当前应用程序、每个用户会话、当前 http 请求、请求的页等方面的信息。asp.net 包含一系列类,用于封装这些上下文信息。
response 提供对当前页的输出流的访问。您可以使用此类将文本插入页中、编写 cookie,等等。有关详细信息,请参见 system.web.ui.page.response 属性。 httpresponse
request 提供对当前页请求的访问,其中包括请求标题、cookie、客户端证书、查询字符串等。您可以使用此类读取浏览器已经发送的内容。有关详细信息,请参见 system.web.ui.page.request 属性。 httprequest
context 提供对整个当前上下文(包括请求对象)的访问。您可以使用此类共享页之间的信息。有关详细信息,请参见 system.web.ui.page.context 属性。 httpcontext
server 公开可以用于在页之间传输控件的实用工具方法,获取有关最新错误的信息,对 html 文本进行编码和解码,等等。有关详细信息,请参见 system.web.ui.page.server 属性。 httpserverutility
application 提供对所有会话的应用程序范围的方法和事件的访问。还提供对可用于存储信息的应用程序范围的缓存的访问。有关详细信息,请参见 asp.net 应用程序状态。 httpapplicationstate
session 为当前用户会话提供信息。还提供对可用于存储信息的会话范围的缓存的访问,以及控制如何管理会话的方法。有关详细信息,请参见 asp.net 会话状态。 httpsessionstate
trace 提供在 http 页输出中显示系统和自定义跟踪诊断消息的方法。有关详细信息,请参见 asp.net 跟踪。 tracecontext
5) application与session的区别
application公有的,所以可以用来做聊天室;session私有的,在一次会话后消失
6) asp.net中,在web窗体页上注册一个用户控件,指定该控件的名称为”mike”,正确的注册指令为;
<%@ register src="mike.ascx" tagname="mike" tagprefix="uc1" %>
7) 怎样在asp.net中改变datagrid的自动换行?
8) 在他的rowstyle属性的font属性的wrap=true
9) web控件和html控件能调用客户段吗?若能,都用到什么技术。说web控件的优点。
可以,query就是获取客户端信息的。如果是脚本的话,用attributes添加脚本。方便,快捷
10) 在.net中页面传递参数除了用到session,application和cookie还有几种方式?
url,,数据库
11) cookie application session viewstate 各种页面传值方式的用法。
session(viewstate) 简单,但易丢失 application全局 cookie 简单,但可能不支持,可能被伪造 input type="hidden" 简单,可能被伪造 url参数 简单,显示于地址栏,长度有限 数据库 稳定,安全,但性能相对弱
12) page.ispostback的作用。
第一次加载页面时返回的是false,后面每次都是true
13) .datagrid的datasouse可以连接什么数据源
datatable,dataview,dataset,dataviewmanager,任何实现ilistsource接口的组件,任何实现ilist接口的组件
14) 请描述viewstate 与session有什么区别
viewstate获取状态信息的字典,这些信息使您可以在同一页的多个请求间保存和还原服务器控件的视图状态。
session 允许通过将对象存储在 web 服务器的内存中在整个用户会话过程中保持任何对象。
15) 请编程遍历窗体上所有textbox控件并给它赋值为string.empty
答:public void findtextbox(control ctr) { foreach(control parent in ctr.controls) { foreach(control child in parent.controls) { if(child.gettype().tostring() == “system.web.ui.webcontrols.textbox”) { ((textbox)child).text = string.empty; } findtextbox(child); } } }
16) 是否了解url rewrite?请简要说明其原理和在asp.net中的实现方式。
答:指定内部重写路径,并允许请求的 url 与资源的内部路径不同。rewritepath 用在无 cookie 会话状态中。
17) 什么是code-behind技术。
答:代码分离,这是个明智的东西,像asp这样混成一堆很不爽.或者可以理解成html代码写在前台,c#代码写在后台.当然前台也有脚本,类的调用等,其实写在一起也是可以的.
18) 解释一下uddi、wsdl的意义及其作用。
答: uddi
统一描述、发现和集成协议(uddi, universal description, discovery and integration)是一套基于web的、分布式的、为web服务提供的信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的web服务注册以使得别的企业能够发现的访问协议的实现标准。uddi 提供了一组基于标准的规范用于描述和发现服务,还提供了一组基于因特网的实现。
wsdl:wsdl描述web服务的公共接口。这是一个基于xml的关于如何与web服务通讯和使用的服务描述;
服务 url 和命名空间
网络服务的类型(可能还包括 soap 的函数调用,正像我所说过的,wsdl 足够自如地去描述网络服务的广泛内容)
有效函数列表 每个函数的参数 每个参数的类型 每个函数的返回值及其数据类型
19) 什么是soap,有哪些应用。
答: soap(simple object access protocol )简单对象访问协议是在分散或分布式的环境中交换信息并执行远程过程调用的协议,是一个基于xml的协议。使用soap,不用考虑任何特定的传输协议(最常用的还是http协议),可以允许任何类型的对象或代码,在任何平台上,以任何一直语言相互通信。
soap 是一种轻量级协议,用于在分散型、分布式环境中交换结构化信息。 soap 利用 xml 技术定义一种可扩展的消息处理框架,它提供了一种可通过多种底层协议进行交换的消息结构。 这种框架的设计思想是要独立于任何一种特定的编程模型和其他特定实现的语义。
soap 定义了一种方法以便将 xml 消息从 a 点传送到 b 点。 为此,它提供了一种基于 xml 且具有以下特性的消息处理框架:1) 可扩展,2) 可通过多种底层网络协议使用,3) 独立于编程模型。
20) asp。net页面缓存数据的几种形式
整页缓存和部分页缓存
21) 描述asp.net自定义控件的作用,开发过程安全配置过程.
答:很多自定义 asp.net web 服务器控件都具有对应的设计器组件,这些组件为控件提供各种设计时呈现和编辑功能。如果控件位于“设计”视图中,设计器组件将会处理属性更改,并为设计宿主(例如 visual studio 2005)呈现 html。设计时,自定义控件的设计器组件与其设计宿主运行在同一个信任级别。设计器组件可能会执行下列操作:访问数据库,调用远程服务器上的网站,创建文件并将其写入开发人员的计算机,发送电子邮件,以及执行其他程序集中的代码。
本主题中的信息描述了各种最佳做法,这些最佳做法有助于您提高控件设计器功能的安全性。
尽管遵循编码和配置最佳做法有助于提高应用程序的安全性,但还要注意不断用 microsoft windows 和 internet 信息服务 (iis) 的最新安全更新以及已安装在计算机上的所有商用自定义控件包,使应用程序服务器保持最新。这一点非常重要。
有关编写安全代码和保护应用程序安全性的最佳做法的更多详细信息,请参见 michael howard 和 david leblanc 合著的 writing secure code(《编写安全代码》)一书,也可以参见 microsoft patterns and practices(microsoft 模式和实践)中提供的指导。
自定义控件用户面临的问题
值得注意的是,来自未知源的自定义控件可能包含将您计算机中的敏感数据暴露给 web 或在设计时运行恶意代码的设计器。此外,不能使用代码访问配置来限制对控件设计器的访问,因为这些设计器必须总是以完全信任级别运行在设计宿主中。有关信任级别的更多信息,请参见 asp.net 信任级别和策略文件。
自定义控件开发人员面临的问题
如果使用类和成员的配置属性将权限限定为控件功能所需的最低级别,将不会对设计器组件起到真正的作用,因为这些组件必须以完全信任级别运行在设计宿主中。
当为预览运行时控件而构建数据时,应尽可能使用示例数据结构,而不要使用数据库中可能的敏感数据。
22) 列出常用的使用javascript操作xml的类包
xml.prototype.xmldoc = new activexobject("microsoft.xmldom"); xml.prototype.initxml=initxml; xml.prototype.getfirstchild=getfirstchild; xml.prototype.getlastchild=getlastchild; xml.prototype.getchild=getchild; // 取得节点值 xml.prototype.getnodeslength=getnodeslength; // 最得节点下的子节点的个数 xml.prototype.getnode=getnode; // 取得指定节点 xml.prototype.delnode=delnode; // 删除指定节点,如果节点相同,则删除最前面的节点. xml.prototype.getnodeattrib=getnodeattrib; // 取得节点的指定属性值. xml.prototype.insertbeforechild=insertbeforechild; // 在指定节点之前插入一个节点. xml.prototype.insertchild=insertchild; // 在指定节点下插入节点. xml.prototype.setattrib=setattrib; // 设置指定属性的值. xml.prototype.setnodevalue=setnodevalue; // 设置指定节点的值. xml.prototype.createnodes=createnodes; // 创建一个指定名的节点. xml.prototype.addattrib=addattrib; // 为指定节点添加指定属性,并设置初值. xml.prototype.findstring=findstring; // 在指定节点下查找字符串.
23) asp.net中的内建对象:
1.request、response、sever、appliation、session、cookies、 viewstate
答:request获取客户端信息,response响应客户端,application公共的,session一次会话,私有的, viewstate单个页面中保存。server获取服务器信息。











