您的位置:首页 > 其它

【WinForm】操作web.config验证用户

2012-10-12 14:01 441 查看
最近两天在做操作web.config 的winform工具,做起来不是很顺。
先说一下需求,就是通过web。config 来判断用户时候有权限登录。
然后呢,通过winform 小工具来操作(增删改)webconfig里面的用户

第一:设置web.config 能够用来判断用户是否能登录

在system.web 的节点下 添加如下节点,用于权限验证。

<authentication mode="Forms">
<forms name="PRO" loginUrl="login.aspx" defaultUrl="~/Login.aspx" protection="All" timeout="60" path="/">
<credentials passwordFormat="Clear">
<user name="ABC" password="123" />
<user name="aaa" password="aaa" />
<user name="rui" password="rui" xmlns="" />
</credentials>
</forms>
</authentication>


Login.cs---------------->

View Code

int row = this.dataGridView1.CurrentCell.RowIndex;
string name = dataGridView1.Rows[row].Cells["UserName"].Value.ToString();
string pwd = dataGridView1.Rows[row].Cells["PassWord"].Value.ToString();

if (dataGridView1.CurrentRow != null)
{
if (MessageBox.Show("确定要删除该行数据吗?", "提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
{
try
{
xmlDoc = new XmlDocument();
xmlDoc.Load(filePath);
XmlNode root = xmlDoc.DocumentElement;
XmlNamespaceManager xnsmgr = new XmlNamespaceManager(xmlDoc.NameTable);
xnsmgr.AddNamespace("ns", "http://schemas.microsoft.com/.NetConfiguration/v2.0");
XmlNodeList xmlList = root.SelectNodes("/ns:configuration/ns:system.web/ns:authentication/ns:forms/ns:credentials", xnsmgr)[0].ChildNodes;
for (int i = 0; i < xmlList.Count; i++)
{
if (xmlList[i].Attributes["name"].Value == name && xmlList[i].Attributes["password"].Value == pwd)
{
//删除
xmlList[i].ParentNode.RemoveChild(xmlList[i]);
xmlDoc.Save(filePath);
MessageBox.Show("删除成功!");
break;
}
}
BindData();
}
catch (Exception ex)
{ MessageBox.Show(ex.Message); }
}
}


Update----->目前没做,先用 删除后在添加 做法来实现

以上,就是我这两天的做法的实现和一些总结,希望能对看到的人有所帮助,同时也是自己的一次笔记! Write By -Ruicky
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: