所以我浏览了网页但未能找到任何示例。我有一个登录系统,它检查sql数据库以确保信息匹配,然后让它们进入,如果细节与数据库中的相匹配。但是,我正在努力研究如何通过WCF检查数据库。我是WCF的新手,我已经设法插入到wcf中,从WCF将数据加载到datagridview并将datagridview保存到wcf中。我是新手,如果有人有任何例子,那么帮助会很棒吗?谢谢
这是我在WCF之前登录系统的代码
private void BtnLogin_Click(object sender, EventArgs e)
{
{
try
{
SqlConnection sc = new SqlConnection(@"Data Source=localhost;Initial Catalog=Optimisation;Integrated Security=True;Pooling=False"); // sql connection
sc.Open(); // open sql connection
SqlCommand cmd = new SqlCommand("select Username, Password from UserDetails where Username='" + txtUsername.Text + "' and Password='" + txtPassword.Text + "'", sc); // select usernames and passwords
SqlDataReader dr = cmd.ExecuteReader(); // data reader
string Username = txtUsername.Text; // username
string Password = txtPassword.Text; // password
while (dr.Read()) //datareader
{
if ((dr["Username"].ToString() == Username) && (dr["Password"].ToString() == Password)) // if username and passowrd match those in database
{
new Menu().Show(); // show menu form
this.Hide(); // hide this for
}
else
{
MessageBox.Show("Username or Password is invalid", "login error", MessageBoxButtons.OK); // show message box if password or username is invalid
}
}
dr.Close(); // close data reader
sc.Close(); // close sql connection
}
catch
{
MessageBox.Show("Username or Password is invalid", "login error", MessageBoxButtons.OK);
}
}
}
以下是我的WCF:
public DataSet SelectUserDetails()
{
SqlConnection con = new SqlConnection(@"Data Source=localhost;Initial Catalog=WCFTest;Integrated Security=True;Pooling=False");
con.Open();
SqlCommand cmd = new SqlCommand("SELECT Username,Password FROM UserDetails", con);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
sda.Fill(ds);
cmd.ExecuteNonQuery();
con.Close();
return ds;
}
答案 0 :(得分:0)
以下是您将要做的事情
现在,为服务创建一个客户端,然后使用客户端
按如下方式调用WCF服务private void BtnLogin_Click(object sender, EventArgs e)
{
{
using(var client = new ServiceClient())
{
// WCF specific credentials go here, if any
string Username = txtUsername.Text; // username
string Password = txtPassword.Text; // password
var result = client.ValidateUserLoginCredentials(Username, Password);
if(result){
// Login succeeded...
}
}
}
}
WCF服务看起来像这样
public class UserWCFService { public bool ValidateUserLoginCredentials(string userName, string password){ // Database call or call to the data access layer goes here } }