我正在创建一个网络应用程序,我有2个文本框和一个带有输入字段的按钮
<input id="Login" type="submit" onclick="location.href='@Url.Action("loggedin","logincontroller")'" style="" width="200" height="34" value="submit" />
我的控制器看起来像
public ActionResult loggedin(string role, string username, string password)
{
webservice.loginservice a= new webservice.loginservice();
a.getlogintype(role, username, password);
return View();
}
使用我的webservice
[WebMethod]
public string getlogintype(string role, string username, string password)
{
string strtru="";
string strfalse="";
sqlcon;
SqlCommand cmd = new SqlCommand("select * from [admin] where userid='" + username + "' and pass ='" + password + "'", con);
con.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
if (dt.Rows.Count > 0)
{
strtru = "true";
}
else
{
strfalse = "false";
}
con.Close();
}
我的控制器正在调用webservice,现在我想知道如何在成功验证时重定向页面。这是我使用mvc的第一个应用程序我知道这个应用程序有很多错误(请让我知道所有的错误)。
我在mvc 5上创建应用程序,我只使用输入字段而不是@Html
语法,因为我想设计它像(beta2.hti-india.com)这个应用程序是由我在asp.net上创建的c#
答案 0 :(得分:0)
在您的操作方法loggedin(..)中,您应该使用RedirectToAction()返回一个新视图
return RedirectToAction("MyAction", "MyController");
答案 1 :(得分:0)
您的网络服务代码看起来不错。
代码中的更改。
public ActionResult loggedin(string role, string username, string password)
{
webservice.loginservice a= new webservice.loginservice();
string result = a.getlogintype(role, username, password);
if(result == "true")
{
// redirect to your application home page or other page
return RedirectToAction("OtherAction", "Controller");
}
else
{
return View();
}
}
尝试使用这是 .cshtml 或查看
的更好方法@using (Html.BeginForm("loggedin", "controller", new { ReturnUrl = "" }, FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
{
<!-- your textbox here-->
<input id="Login" type="submit" value="submit">
}