仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 647|回复: 6
打印 上一主题 下一主题

[学习教程] ASP.NET教程之ASP.NET 2..0站点登录、导航与权限办理...

[复制链接]
乐观 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:37:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
归根到底,Java跨平台可以,但是要重新编写代码,否则还分什么J2EE/J2SE/J2ME呢!asp.net|导航|站点  asp.net2.0中,新增了很多新的功效和控件。个中,新增的上岸控件可谓使得WEB使用的计划加倍轻车熟路。甚么是上岸控件呢?就是我们寻常在WEB使用中常常要用到的用户注册,上岸,健忘暗码,上岸后依据权限的分歧而显现分歧的页面等功效,如今在asp.net2.0中都已能够由供应的控件来完成了。
  asp.net2.0中,为了更便利创立和办理用户,和对Web使用程序中的页举行暗码回护,引进了新的框架membership。新的框架包括用于处置身份考证和受权的新增功效,可以同时满意Web站点办理员和开辟职员的必要。Web站点办理员能够使用新的Web站点办理工具来创立新的用户和脚色,和把持对Web使用程序中页面的会见。Web站点办理工具是一组事后编写的ASP.NET页,不具有编程技能的用户可使用它们来设置Web使用程序。使用membershipAPI,编程职员能够很便利地利用拖沓控件的办法,再加以大批的代码,就能够完整完成对用户,脚色权限等的办理,还能够自界说做扩大。
  1.创建网站项目
  2.ASP.NET设置
  平安设置选项被分为三部分:用户,脚色和划定规矩。
  登录的身份考证能够设置为基于Forms和Windows的。
  3.利用登录控件
  申明:用户登录后,显现“加入”的提醒,经由过程LoginStatus控件来完成。在控件的属性中,有LogoutAction和LogoutPageUrl两个属性,能够来设定刊出时是仅仅革新以后页面、转向到某个页面大概转向到登录页面。
  (一)上岸
  怎样设定LoginPageUrl(登录的页面),运转程序时,当按这个控件的显现的Login链接时,老是转到根文件夹下的Login.aspx,而实践的登录文件在/Login/Login.aspx。怎样办理?
  查了下材料,本来登录的Url是在web.config中设置的。假如是用Form考证登录,缺省的web.config是如许写的:
<system.web>
<authenticationmode="Forms"/>
</system.web>
  必要修正成以下的模样:
<system.web>
<authenticationmode="Forms">
<formsloginUrl="~/member/login.aspx"></forms>
</authentication>
</system.web>
  (二)站点导航
  1.三种导航控件
Menu:利用一菜单显现站点的布局。
  TreeView:用一个可睁开的树显现站点的布局
  SiteMapPath:用于显现终端用户处于相对站点布局的详细地位
  2.Web.sitemap导航XML文件
<?xmlversion="1.0"encoding="utf-8"?>
<siteMapxmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0">
<siteMapNodetitle="首页"url="SiteMapTest.aspx">
<siteMapNodetitle="产物"roles="*">
<siteMapNodetitle="Windows"url="SiteMapTest.aspx?id=windows"/>
<siteMapNodetitle="Office"url="SiteMapTest.aspx?id=office"/>
<siteMapNodetitle="MobileDevices"url="SiteMapTest.aspx?id=mobile"/>
<siteMapNodetitle="BusinessSolutions"url="SiteMapTest.aspx?id=business"/>
<siteMapNodetitle="Servers"url="SiteMapTest.aspx?id=servers"/>
<siteMapNodetitle="DeveloperTools"url="SiteMapTest.aspx?id=tools"/>
<siteMapNodetitle="GamesandXBox"url="SiteMapTest.aspx?id=games"/>
<siteMapNodetitle="AllProducts"url="SiteMapTest.aspx?id=all"/>
</siteMapNode>
<siteMapNodetitle="资本"roles="*">
<siteMapNodetitle="撑持"roles="*">
<siteMapNodetitle="修正暗码"url="~/Login/ChangePassword.aspx"/>
<siteMapNodetitle="KnowledgeBase"url="SiteMapTest.aspx?id=knowledge"/>
</siteMapNode>
<siteMapNodetitle="Downloads"url="SiteMapTest.aspx?id=downloads"/>
<siteMapNodetitle="WindowsUpdate"url="SiteMapTest.aspx?id=windowsupdate"/>
<siteMapNodetitle="OfficeUpdate"url="SiteMapTest.aspx?id=officeupdate"/>
<siteMapNodetitle="LearningTools">
<siteMapNodetitle="Training&Certification"url="SiteMapTest.aspx?id=training"/>
<siteMapNodetitle="Books"url="SiteMapTest.aspx?id=books"/>
<siteMapNodetitle="Events&Webcasts"url="SiteMapTest.aspx?id=events"/>
<siteMapNodetitle="Patterns&Practices"url="SiteMapTest.aspx?id=patterns"/>
</siteMapNode>
<siteMapNodetitle="Community"url="SiteMapTest.aspx?id=community"/>
<siteMapNodetitle="Security"url="SiteMapTest.aspx?id=security"/>
</siteMapNode>
<siteMapNodetitle="RSS"roles="*">
<siteMapNodetitle="公司干系"url="SiteMapTest.aspx?id=relations"/>
<siteMapNodetitle="RSSSite"url="~/RSS/RSSSite.aspx"/>
<siteMapNodetitle="Careers"url="SiteMapTest.aspx?id=careers"/>
<siteMapNodetitle="AboutthisSite"url="SiteMapTest.aspx?id=about"/>
</siteMapNode>
</siteMapNode>
</siteMap>
  Web.sitemap文件必需包括根结点sitemap。一张站点舆图由一系列相接洽的SiteMapNode工具构成。这些SiteMapNode以一种条理体例接洽在一同。该条理包括单个根结点-它是该层中独一的一个没有父结点的结点,代表首页。在该父sitemapnode结点下,能够有多少个子sitemapnode结点,分离按条理布局代表了网站的各子栏目(寄望一下上例中,各个子结点之间的包括干系)。
  3.数据源SiteMapDataSource控件
  SiteMapDataSource会主动查找项目中名为Web.sitemap的一个XML文件
  (三)权限办理
  网站在平安性方面有一个罕见的请求:特定的页面仅同意某些成员或其他经由身份考证的用户扫瞄。ASP.NET的脚色办理供应了一种办法,能够基于平安脚色限定对Web文件的会见。站点舆图平安性调剂供应了一种一样基于平安脚色的办法来埋没站点舆图中的导航链接。
  1.ASP.NET网站设置
  1)供应程序
可以使用SQLSERVER2005(默许),2000和Access数据库存储用户信息。若要利用SQLSERVER2000数据库存储信息:
  a.用SQLServer的企业办理器,创立一个数据库,如为zyh;
  b.用aspnet_regsql(C:WindowsMicrosoft.NetFrameworkv2.0.50215aspnet_regsql.exe)创立数据库。除在创立导游的第3步数据库下拉框选择“zyh”之外,其他各步骤皆利用默许设置。如许,在SqlServer2000中会创立一个含有效户表和存贮历程的完全数据库。
  c.在办理工具中翻开IIS,找到假造目次newtest,用鼠标右键点击,然后左键点菜单项【属性】、【ASP.NET】标签、【编纂设置】按钮,在【惯例】标签的【毗连字符串办理器】中,点称号【LocalSqlServer】,点【编纂】按钮,把【毗连参数】修正为响应可以毗连到数据库zyh的数据库毗连字符串,如“DataSource=.;InitialCatalog=zyh;PersistSecurityInfo=True;UserID=sa;Password=12345”,今后,一向点【断定】按钮,最初到IIS办理工具界面便可。
  d.最初前往网站办理工具Web页面,点击平安主题,就会呈现“利用平安设置导游墨守成规地设置平安性。”链接和别的相干链接。
  2)平安设置选项被分为三部分:用户,脚色和划定规矩。
个中划定规矩创建了脚色对项目中文件夹的会见权限。
  3)使用程序设置
  可设置SMTP服务器以供用户经由过程email找回暗码。
  2.创建登录页面
  3.在Web.config文件中启用脚色办理
<system.web>
<siteMapdefaultProvider="XmlSiteMapProvider"enabled="true">
<providers>
<addname="XmlSiteMapProvider"
description="DefaultSiteMapprovider."
type="System.Web.XmlSiteMapProvider"
siteMapFile="Web.sitemap"
securityTrimmingEnabled="true"/>
</providers>
</siteMap>
<roleManagerenabled="true"/>

<authenticationmode="Forms">
<formsloginUrl="~/Login/login.aspx"></forms>
</authentication>

<compilationdebug="true">
<assemblies>
<addassembly="System.Data.OracleClient,Version=2.0.0.0,Culture=neutral,PublicKeyToken=B77A5C561934E089"/>
</assemblies>
</compilation>
</system.web>
<system.net>
<mailSettings>
<smtpfrom="wangyihust@163.com">
<networkhost="smtp.163.com"password="passwordModify"userName="wangyihust"/>
</smtp>
</mailSettings>
</system.net>
  4.在Web.sitemap文件中到场脚色权限,以显现或埋没相干页面
<siteMapNodetitle="RSS"roles="*">
<siteMapNodetitle="公司干系"url="SiteMapTest.aspx?id=relations"/>
<siteMapNodetitle="RSSSite"url="~/RSS/RSSSite.aspx"/>
<siteMapNodetitle="Careers"url="SiteMapTest.aspx?id=careers"/>
<siteMapNodetitle="AboutthisSite"url="SiteMapTest.aspx?id=about"/>
</siteMapNode>
  个中,roles="*"暗示一切人都能够看到上面的页面,可是我们在划定规矩中能够回绝某些脚色的用户看到上面的相干页面(经由过程目次权限把持)
无论谁倒了对双方阵营的粉丝们也是有害无益。
沙发
发表于 2015-1-19 06:02:33 来自手机 | 只看该作者
是目前ASP在UNIX/Linux上的应用可以说几乎为0)。所以平台的局限性和ASP自身的安全性限制了ASP的广泛应用。
小女巫 该用户已被删除
板凳
发表于 2015-1-24 08:24:44 | 只看该作者
对于中小项目来说.net技术是完全可以胜任,但为什么现在大型公司或网站都选择php或java呢?就是因为微软不够开放,没有提供从硬件到应用服务器再到业务应用的整套解决方案。
飘灵儿 该用户已被删除
地板
发表于 2015-1-31 22:39:53 | 只看该作者
ASP.NET:ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
若天明 该用户已被删除
5#
发表于 2015-2-19 05:47:16 | 只看该作者
主流网站开发语言之JSP:JSP和Servlet要放在一起讲,是因为它们都是Sun公司的J2EE(Java2platformEnterpriseEdition)应用体系中的一部分。
兰色精灵 该用户已被删除
6#
发表于 2015-3-13 01:09:42 | 只看该作者
是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错)。
透明 该用户已被删除
7#
发表于 2015-3-20 09:02:37 | 只看该作者
比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2025-1-11 06:28

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表