2012-04-12 70 views
0

我必须创建一个WPF桌面应用程序,允许我每次打开一个会话时,几个密码/用户名是正确的,我已经创建了我的WPF界面,并且我创建了我的DATABASE来测试每次if在我的DATABASE中存在几个密码/用户名,当我点击登录按钮时,我必须打开一个新的会话,任何人都可以帮我解决这个问题。WPF中的会话管理

string connectionString = @"Server=SHAGGY-PC\SQLEXPRESS;Database=gestion;Trusted_Connection=True;"; 
SqlConnection cnn = new SqlConnection(connectionString); 
cnn.Open(); 
SqlCommand cmd = new SqlCommand("Select * FROM [session] WHERE login ='" + textBox1.Text + "'and password ='" + pass + "'", cnn); 
cmd.CommandType = CommandType.Text; 
SqlDataAdapter adapter = new SqlDataAdapter(); 
adapter.SelectCommand = cmd; 
DataSet dataSet = new DataSet(); 
adapter.Fill(dataSet); 
if (dataSet.Tables[0].Rows.Count > 0) 
{ 
    //open new session 
} 
+0

新会什么? – Tigran 2012-04-12 09:53:42

+0

目前还不清楚你要求什么。此外,这段代码对SQL注入攻击是开放的。 (http://xkcd.com/327/) – flq 2012-04-12 09:55:42

回答

1

WPF默认不知道会话的概念。会话通常是一个网络相关的事情。您需要创建一个“会话对象”,它将像新的SessionObj()一样简单。会话表只是一个日志?如果它包含数据(例如Web上的序列化数据),那么您不会创建新会话,而是从数据库中加载它?

+0

你能解释一下吗?我的意思是你可以给我一个简单的例子请 – 2012-04-12 11:07:45

+0

我会解释更多,我需要像你在你的脸书,你写你的用户名和你的密码,如果它没关系,它会打开我的新会话巫婆是一个新的界面与2按钮“登出”和“锁” – 2012-04-12 11:18:10

+0

你不需要在Windows应用程序中的会话。它是一个包含登录表单的页面或控件或窗口,包含应用程序和注销按钮的其他页面/控件/窗口。成功登录后,您将返回登录窗口并忘记数据。由于WPF应用程序始终运行,因此会话是隐含的。 WPF页面概念:http://social.msdn.microsoft.com/forums/en-US/wpf/thread/51860d02-2217-45c8-8f49-49771e7e002d/ – Sascha 2012-04-12 17:23:31