2014-11-10 3 views
0

У меня есть страница входа. Когда пользователь нажимает кнопку входа в систему, кнопка вызывает другой метод действия. этот метод действия будет иметь два параметра. пользователь предоставил идентификатор пользователя и пароль. то он выполняет некоторую проверку и перенаправляет на другой метод действия в соответствии с результатом. Я боюсь там. Я думаю, это довольно просто. Я новичок в MVC. Любая помощь будет назначена.Войти MVC перенаправить на другую страницу

Посмотреть

<div class="container-fluid"> 

    <div class="starter-template"> 
     <h1>Policy Assessment Tool</h1> 
     <p class="lead">Are You Following Right?</p> 
     <button type="button" class="btn btn-primary btn-lg" onclick="location.href='@Url.Action("Create","UserDatas")'">Register for a An Account</button> 
     <h3><strong>OR</strong></h3> 
    </div> 

<div class="row"> 
    <form class="form-signin" role="form" method="post"> 
    <div class="col-lg-4"></div> 
    <div class="col-lg-4"> 
     <h2 class="form-signin-heading">Please Sign-In to Continue</h2> 
     <div class="input-group"> 
      <input type="text" name="input_domain_id" class="form-control text-center" placeholder="Domain ID" autofocus required> 
      <input type="password" name="input_domain_password" class="form-control text-center" placeholder="Domain Password" required> 
     <div class="col-lg-12"> 
      <p><button class="btn btn-lg btn-primary btn-block" type="submit" onclick="location.href='@Url.Action("Verify_Login", "Ldap_Login_Verify")'">Login</button></p> 
      </div> 
     </div><!-- /input-group --> 
    </div><!-- /.col-lg-4 --> 
    <div class="col-lg-4"></div> 
     </form> 
</div><!-- /.row --> 
</div> 

Контроллер

[HttpPost] 
     public ActionResult Verify_Login(string input_domain_id, string input_domain_password) 
//Log-in Logic 
return View("Success") 
+0

с чем вы боретесь? не ясно? – Haris

+0

при вызове 'Verify_login' из кнопки отправки нажмите' Login', как передать имя пользователя и пароль для действия 'verify_login'? – user3132179

+0

проверьте это http://www.codeproject.com/Articles/482546/Creating-a-custom-user-login-form-with-NET-Csharp или это http://dotnetawesome.blogspot.co.uk/2014/ 03/how-to-create-login-page-using-aspnet-mvc4.html – Haris

ответ

0

Вместо того, чтобы использовать тег формы использования Html.BeginForm HtmlHelper и передать модель от контроллера для просмотра для лучшей практики. Вот ссылка для вас, чтобы получить Getting Started With MVC5.

+0

спасибо за ваше предложение. но мне не нужна модель для этого случая. – user3132179

0

Основываясь на знаке выше, вам не нужно об этом беспокоиться. Когда форма размещена, значения будут привязаны к параметрам метода действия. Поскольку имена параметров похожи на имена полей формы.

Вышеупомянутая концепция называется привязкой к модели. Ниже приведены две ссылки, которые должны дать вам хорошую идею.

http://www.codeproject.com/Articles/710776/Introduction-to-ASP-NET-MVC-Model-Binding-An-Absol http://dotnetslackers.com/articles/aspnet/Understanding-ASP-NET-MVC-Model-Binding.aspx

Я попытался составить простой пример ниже.

Предположим, что есть вид, как показано ниже.

@model string 
@{ 
    ViewBag.Title = "Injection"; 
} 

<h2>Injection</h2> 

@using(Html.BeginForm()) 
{ 
     <div id="formDetails"> 
       @Html.TextBox("UserName") 
     </div> 
     <div> 
       <input type="submit" id="btnTest" value="Click Me" /> 
     </div> 
} 

Способ действий такой же будет, как

[HttpPost] 
    public ActionResult Injection(string UserName) 
    { 
     return View("Injection"); 

    } 

Так что, когда я нажимаю на кнопку отправки, форма размещена, Поскольку ViewName литьевого, и есть соответствующий метод действия так называемая инъекция, она автоматически ударит этот метод действия. Поскольку имя параметра метода и поля одинаково, то значение, которое когда-либо присутствует в текстовом поле пользователя, автоматически привязывается к параметру метода.

Смежные вопросы