1、asp.net验证用户身份的三种方式?
Froms身份验证:要发出登录请求,需要在网页上填写一个表单并将该表单提交到服务器。服务器在接收该请求后,如果窗体证件有效,则asp.net将在客户端创建一个验证cookie,在后续的浏览中,浏览器每次发生请求时都会将cookie发送回服务器,这样用户就可以根据自己的希望保持身份验证状态。
Windows身份验证:登录页面将用户证书发送到Web服务器(只能是IIS,而不是vwd内建的web服务器)。然后服务器使用应用程序所运行的虚拟目录配置的方法处理身份验证。IIS连接到Windows操作系统和Active Directory(活动目录)域结构上,这意味着它依赖于存储在站点外部的用户配置文件,并使用标准Windows证书登录到站点。根据站点的配置情况以及登录计算机所使用的账号,甚至可以不用直接登录站点,因为当前所使用的Windows证书会自动传递到Web服务器进行身份验证。这种方式在开发局域网应用程序时特别有用。
Passport身份验证:passport验证是Microsoft公司提供的一种集中式验证服务,其工作原理与窗体验证类似,都是在客户端创建验证Cookie,用于授权。使用passprot验证时,用户将被重定向至passport登录网页,该页面提供了一个非常简单的窗体让用户填写验证资料,该窗体将通过Microsoft公司的Passport服务来检查用户的证件,以确定用户的身份是否有效。
2、asp.net页面间进行传值的方式?
QueryString方式,Session机制,Application,Cookie。详细的查阅
asp.net页面间传值方式
3、Cookie和Session的区别。
同上。
4、Hashtable和Hashmap的区别。
1)hashtable是线程安全的一个Collection。hashmap是hashtable的轻量级实现(非线程安全的实现),它们都完成了map接口,主要区别是hashmap允许null键值,由于非线程安全,效率上可能高于hashtable。
2)HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因为contains方法容易让人引起误解。
3)Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。
4)最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。
5、sql分页语句
select top 10 * from( select top 40 * from table order by id ) as temp order by id desc select * from( select *,row_number() over(order by id) as rowRand from table) as temp where rowRand between 31 and 40
6、sql中查找具有重复的记录和不重复的记录?
重复: select * from table where id in ( select id from table group by id having count(1) >= 2) 不重复: select distinct(id) from table
7、sql执行顺序:
(8)SELECT (9)DISTINCT (11)<Top Num> <select list> (1)FROM [left_table] (3)<join_type> JOIN <right_table> (2) ON <join_condition> (4)WHERE <where_condition> (5)GROUP BY <group_by_list> (6)WITH <CUBE | RollUP> (7)HAVING <having_condition> (10)ORDER BY <order_by_list>