ASP.NET—From验证:全部代码及讲解_Asp.Net开发技巧
时间:2010-08-31 来源:缘分星空
关于Forms验证的文章网上千百篇,但我花了1天半的时间学会了“一点点”,
现在把代码分享出来,希望对像我一样的初学者所有帮助,也希望高手给指点一下:
--------------------------------------------------------------------------------
Step 1:新建数据库(库:MyForms ;表:users ;字段:ID,userName, userPwd);
Step 2:新建网站,web.config 的文件全部代码如下:
web.config 的全部代码
<?xml version="1.0"?>
<configuration>
<appSettings/>
<connectionStrings/>
<system.web>
<compilation debug="true"/>
<sessionState cookieless="AutoDetect"/>
<!--解决当浏览器端禁用Cookie时-->
<authentication mode="Forms">
<forms name="CookieName" loginUrl="login.aspx" protection="All"></forms>
<!--loginUrl为登录面URL,如果没有身份验证Cookie,客户端将被重定向到此URL-->
</authentication>
<authorization>
<deny users="?"/>
</authorization>
<customErrors mode="On" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
</system.web>
</configuration>
Step 3:添加一个 login.aspx 页面;拖2个 TextBox ,1个Button 和1个CheckBox ;
并将CheckBox 的text 属性设为:“是否保存Cookis ";
Step 4:login.aspx 的隐藏代码如下:
login 全部隐藏代码
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient; //导入命名空间
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string userName = TextBox1.Text.Trim();
string userPwd = TextBox2.Text.Trim();
SqlConnection con = new SqlConnection("Server=.;Database=MyForms;User ID=sa;Password=123456");
con.Open();
SqlCommand cmd = new SqlCommand("select count(*) from users where userName='" + userName + "' and userPwd='" + userPwd + "'", con);
int count = Convert.ToInt32(cmd.ExecuteScalar());
if (count > 0)
{
System.Web.Security.FormsAuthentication.SetAuthCookie(this.TextBox1.Text, this.CheckBox1.Checked);
Response.Redirect("Default.aspx");
//上面两行,也可以换成下面一行,如通过验证则直接转向请求的页面,而不需要Responsel.Redirect("");
//System.Web.Security.FormsAuthentication.RedirectFromLoginPage(this.TextBox1.Text, false);
}
else
{
Response.Write("用户不合法");
}
}
}
Step 5:拖一个Button 到 Default.aspx 上,将其text 属性设为"登出",其事件代码如下:
Button 事件代码
protected void Button1_Click(object sender, EventArgs e)
{
System.Web.Security.FormsAuthentication.SignOut();
}
http://www.cnblogs.com/yoyebina/archive/2006/12/03/580121.html
Louis Vuitton Fall Winter 2009 Monogram Coquette Pochette PM-Gol M9685SGD HandbagsLouis Vuitton Monogram Multicolore Judy MM Black M40256 HandbagsLouis Vuitton Stephen Sprouse Collection Zippy Coin Purse Green M93709 HandbagsLV m66540 Louis Vuitton Graffiti Brazza Wallet Fuschia M66540 HandbagsLV M51900 Louis Vuitton LV Handbags RecitalGucci GG Fabric Handbagss 145859 gucci-145859-coffeeLouis Vuitton Monogram Vernis Bedford Perle Violet M91996 HandbagsGucci GG Fabric Handbagss G189831 Gucci-189831-02Chanel Cowhide Leather New Flap Bag 35978 Black 35978black HandbagsChanel Shopping Bag PM - Black chanel-cc140 HandbagsGUCCI G197022R-new canvass Gucci-197022R HandbagsLouis Vuitton Damier Canvas Alma Damier N51131 HandbagsChanel Handbags Chanel Coco Black Vinyl mix leather 35491 - silve Chanel-35491--silver-&-beigeLV M43102PL Louis Vuitton LV Handbags Speedy 25 - GrenadeLarge Multifunction Tote - Black chanel-cc2330 HandbagsGucci Hysteria G189900 Patent leather in Black Gucci-189900-02 HandbagsLV M58030 Louis Vuitton LV Handbags Wapity CaseLV M95311 Louis Vuitton Handbags Musette - Red TrimGucci walelt-RED gucci-213-01 HandbagsLouis Vuitton Damier Canvas Hampstead GM N51203 HandbagsGucci G2008565-Guccisima leather Chocolate Gucci-2008565-03 HandbagsLouis Vuitton Epi Leather Madeleine GM Bag Purple M59342 HandbagsCHANEL 6290-BLUE Handbags Chanel-6290-BLUEGucciDesigners Handbags 189835FFPAG8433 gucci-189835FFPAG8433LV M93542B Louis Vuitton Handbags Sunset Boulevard - AmaranteGucci Wallet-Dark Red gucci-GJ-029 HandbagsLouis Vuitton Monogram Vernis Bag Purple 59252 HandbagsGucci GG Fabric Handbagss new G130738 Gucci-130738LV M51157 Louis Vuitton LV Handbags Marelle MMLV M95683B Louis Vuitton Handbags Speedy Large Cube - BlackGucci GG Fabric Handbagss G88221 Gucci-88221-01Louis Vuitton Damier Geant Canvas Citadin 55 Luggage Black M22221 HandbagsGucci Race Top Handle Bag in Gold snakle Leather gucci-177091-Gold HandbagsLouis Vuitton Show Fall Winter 2009 Monogram Small Shoulder Bag Black M93201-7 HandbagsChanel Wallet Embossed Detail Wallet - Black Chanel-CC1860 HandbagsLouis Vuitton Spring Summer 2010 Neo Silvery M40355 HandbagsLouis Vuitton Mahina XXL Bag Silver M95712 M95712-MM HandbagsLV M92398B Louis Vuitton LV Handbags LeonorLouis Vuitton Monogram Multicolore Chrissie Black M40263 M40263-Black HandbagsGucci bag 186235 in Purple Patent Leather Gucci-186235Z HandbagsNew Lambskin Leather Tote & Shoulder Bag - Black Patent chanel-35895 HandbagsLouis Vuitton Monogram Multicolor Clutch Black M45637 M45637-Black HandbagsLV M93516DC Louis Vuitton Handbags Summit Drive - AmaranteLouis Vuitton Monogram Canvas Hudson GM M40045 HandbagsLouis Vuitton Monogram Canvas Odeon PM M56390 HandbagsLouis Vuitton Daminer Geant Canvas Compagnon Sandy M93045 HandbagsLV M42962 Louis Vuitton LV Handbags Keepall 50 - BlackLV M803B Louis Vuitton LV Handbags Montaigne Bag - BlackLV H95589 Louis Vuitton Handbags Musette - Bordeaux TrimChanel Wallet Cambon Wallet Bifold - White Snake Chanel-CC1290 HandbagsLouis Vuitton Monogram Canvas Pochette Orsay M51790 HandbagsLouis Vuitton Epi Leather Petit Noe Black M59212 HandbagsLV M91219 Louis Vuitton Handbags Houston - FuschiaLouis Vuitton Monogram Vernis Luggage Pegase 70 23251 7023251 HandbagsGucci Wallet-Black Gucci-BV-029A HandbagsGucci G208940 Babouska Tote in Guccisima leather in Brown Gucci-208940-04 HandbagsGucci Indy bag NEW!!! gucci-177088CT HandbagsGucci massi britt in Black Gucci-162094-06 HandbagsV M91365 Louis Vuitton Handbags Stillwood Vertical - Noisette V-M91365Gucci GG Fabric Handbagss tote 181495 Gucci-181495Chanel Denim Jean Fabric Handbags 36003 - Dark Blue 36003blLouis Vuitton Show Spring Summer 2009 Flight Bags Paname Takeoff Yellow M45510 M45510-yellow HandbagsGucci G203626-Guccisima leather in Brown Gucci-203626-02 HandbagsGucci G177139-15 Winter Top handle Bag With Fur Gucci-177139-15 HandbagsGucci GG Fabric Handbagss 169971-Black/black Gucci-169971-03Louis Vuitton Show Fall Winter 2009 Damier Leather Le Confident grey M91782 M91782-grey HandbagsGucci 207301 Patent leather in Purple Gucci-207301-Purple HandbagsChanel Wallet Classic Wallet - Compact Chanel-CC1380 Handbagschanel Handbags Tone Bowler - Cream Chanel-cc1480Louis Vuitton Damier Geant Canvas Pionnier M93055 HandbagsLV m61702 Louis Vuitton Graffiti Porte-Trésor Checkbook Internat M61702 HandbagsLouis Vuitton Damier Canvas Palermo PM Bag M48214 HandbagsGucci GG Fabric Handbagss Babouska G207306 Gucci-207306Louis Vuitton Epi Leather Pochette Homme Black M52522 HandbagsGucci hysteria-black Guccimassia gucci-197020-04 HandbagsGucci GG Fabric Handbagss G218192-WHITE Gucci-218192-04Louis Vuitton Monogram Canvas Manhattan Bag PM M40026 HandbagsLouis Vuitton Monogram Vernis Wilshire Boulevard Bleu Nuit M93684 HandbagsGucci Designers Handbags 197017ET75G7619 gucci-197017ET75G761909 New Chanel Quilted Tweed Pouch Bag 36021- Grey 36021grey HandbagsLouis Vuitton Monogram Vernis Alma Bag Green GM M93594-GM M93594-Green HandbagsGucci black leather wallet Gucci-6551 HandbagsLV M51151 Louis Vuitton LV Handbags Cabas MezzoGucci White Leather Boston Bowling Bag Gucci-114914C HandbagsLouis Vuitton Damier Canvas Pochette Bosphore N51111 HandbagsGucci 154432-Black Evening Bag Gucci-154432B7 HandbagsLouis Vuitton A Grade Monogram Canvas Bulles GM - Beige HandbagsCHANEL 6291-BLACK Handbags Chanel-6291-BLACKLouis Vuitton Monogram Canvas Trolley 50 Bosphore M23259 HandbagsLouis Vuitton Monogram Canvas Mini Pochette Accessories Trunks M60153 HandbagsChanel Wallet Cambon Cosmetic Pouch - Black Chanel-CC1980 HandbagsLouis Vuitton Epi Leather Alma Bag Dark Red M5280M HandbagsLV M58862B Louis Vuitton LV Handbags Ségur MM - BlackLouis Vuitton Monogram Jokes Red Handheld Bag LV M95682 HandbagsCHANEL 6282-BLUE Handbags Chanel-6282-BLUEGucci bag 181510-chocolate gucci-181510-chocolate HandbagsLV m95868 Louis Vuitton Spring Summer 2009 Kalahari PM Orange M95868 HandbagsLouis Vuitton Monogram Canvas Shoulder Bag M95766 HandbagsLouis Vuitton Epi Leather Lockit Black M42292 HandbagsLouis Vuitton Damier Azur Pampelonne PM N48058 Handbags