Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- asp.net mv3 form post data not making it's way to the controller action [closed]
- [HttpGet]
- public ActionResult LogOn()
- {
- LogOnModel model = new LogOnModel() { UserName = "", Password = "" };
- return View(model);
- //return View();
- }
- [HttpPost]
- public ActionResult LogIn(LogOnModel model, FormCollection fcol/*, string returnUrl*/)
- {
- //Request.Form.Count
- StringBuilder sb = new StringBuilder();
- sb.Append("<br/>Form collection: ");
- if (Request.Form.Count > 0)
- {
- NameValueCollection form = Request.Form;
- sb.Append("<Form collection>");
- for (int i = 0; i < fcol.Count; i++)
- sb.AppendFormat("{0}:{1},", fcol.AllKeys[i].ToString(), fcol[i].ToString());
- sb.Append("</Form collection>");
- }
- sb.Append("<br/>Form : ");
- if (Request.Form.Count > 0)
- {
- NameValueCollection form = Request.Form;
- sb.Append("<form>");
- for (int i = 0; i < form.Count; i++)
- sb.AppendFormat("{0}:{1},", form.AllKeys[i].ToString(), form[i].ToString());
- sb.Append("</form>");
- }
- sb.Append("<br/>QueryString : ");
- if (Request.Form.Count > 0)
- {
- NameValueCollection form = Request.QueryString;
- sb.Append("<QueryString>");
- for (int i = 0; i < form.Count; i++)
- sb.AppendFormat("{0}:{1},", form.AllKeys[i].ToString(), form[i].ToString());
- sb.Append("</QueryString>");
- }
- if (model != null)
- {
- sb.Append("<br/>Profile(ProfileModel m) : ");
- sb.AppendFormat("m.username = {0}, m.password = {1}", model.UserName, model.Password);
- }
- if (!ModelState.IsValid)
- {
- sb.Append("<br/>Model errors :");
- var errors = from key in ModelState
- let errorList = ModelState[key.Key].Errors
- where errorList.Any()
- select new
- {
- Item = key.Key,
- Value = key.Value,
- errorList
- };
- foreach (var errorList in errors)
- {
- sb.AppendFormat(@"<br/>MODEL ERROR: [{0}] value:'{1}' ", errorList.Item, errorList.Value);
- foreach (var error in errorList.errorList)
- {
- sb.AppendFormat(" ERROR message: [{0}] exception : '{1}'", error.ErrorMessage, error.Exception);
- }
- }
- }
- Response.Write(sb);
- //return new ContentResult();
- if (model != null)
- Log(new Exception(string.Format("model username : {0}, password : {1}, request[username] {2} , request[password] : {3}", model.UserName, model.Password, Request["UserName"], Request["Password"])));
- try
- {
- if (ModelState.IsValid)
- {
- Log(new Exception(string.Format("ModelState {0}", ModelState.IsValid)));
- Log(new Exception(string.Format("credentials {0},{1}", model.UserName, model.Password)));
- if (MembershipService.ValidateUser(model.UserName, model.Password))
- {
- Log(new Exception(string.Format("MembershipService.ValidateUser {0},{1}", model.UserName, model.Password)));
- FormsService.SignIn(model.UserName, false/* model.RememberMe*/);
- Log(new Exception(string.Format("FormsService.SignIn {0},{1}", model.UserName, model.Password)));
- //if (Url.IsLocalUrl(returnUrl))
- // return Redirect(returnUrl);
- //else
- return RedirectToAction("Index", "Home");
- }
- else
- ModelState.AddModelError("", "The user name or password provided is incorrect.");
- }
- }
- catch (Exception ex)
- {
- Elmah.SqlErrorLog.GetDefault(System.Web.HttpContext.Current).Log(new Elmah.Error(ex, System.Web.HttpContext.Current));
- }
- // If we got this far, something failed, redisplay form
- return View("LogOn", model);
- }
- @Html.ValidationSummary(false, @LocalDealsResources.Strings.LogOnUnsuccessful)
- @using (Html.BeginForm("LogIn", "Account"))
- {
- <div>
- <fieldset>
- <legend>Account Information</legend>
- <div class="editor-label">
- @Html.LabelFor(m => m.UserName)
- </div>
- <div class="editor-field">
- @Html.TextBoxFor(m => m.UserName, new { style = " width:200px" })
- @Html.ValidationMessageFor(m => m.UserName)
- </div>
- <div class="editor-label">
- @Html.LabelFor(m => m.Password)
- </div>
- <div class="editor-field">
- @Html.PasswordFor(m => m.Password, new { style = " width:200px" })
- @Html.ValidationMessageFor(m => m.Password)
- </div>
- <p>
- <input type="submit" value="@LocalDealsResources.Strings.LogOn" />
- </p>
- </fieldset>
- </div>
- }
- [HttpGet]
- public ActionResult Index()
- {
- return View();
- }
- [HttpPost]
- public ActionResult Index(ViewModels.SubscriptionModel model)
- {
- if(!ModelState.IsValid)
- {
- return View(model);
- }
- else
- {
- // Code here to save to the database or something else
- return View("saved"); //Return a view that is designed to show a message
- }
- }
- <%: Html.ValidationSummary(false) %>
- @Html.ValidationSummary(false)
Add Comment
Please, Sign In to add comment