在ASP.Net MVC4中重定向

I'm using ASP.Net MVC4 Razor. I'm having a problem with redirection. I wanna redirect the user to the Home controller at the user login(if login is valid). But my problem is it always come back to the login page even the redirect meythod also fired.

Here is my code..

public class LoginController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    public ActionResult LoginAccess()
    {
        return RedirectToAction("Index", "Home");
    }

}

Login page..

<div class="body_wraper">
<div id="cloud" style="background:url('@Url.Content("~\\Content\\cloud.png")');">
    <div id="login_form">
        <div class="Three-Dee">Login here..</div>
         <table>
            <tbody>
                <tr>
                    <td>@Html.Label("Username")</td>
                    <td></td>
                    <td>@Html.TextBox("txtUsername")</td>
                </tr>
                <tr>
                    <td>@Html.Label("Password")</td>
                    <td></td>
                    <td>@Html.Password("txtPassword")</td>
                </tr>
                <tr>
                    <td></td>
                    <td></td>
                    <td style="text-align:right;"><button class="k-button" id="login" onclick="Login()">Login</button></td>
                </tr>
            </tbody>
         </table>
    </div>
</div>

<script type="text/javascript">

function Login() {
    $.ajax({
        url: '@Url.Content("~/Login/LoginAccess")',
        type: 'POST'
    });
}

Home Controller..

public ActionResult Index()
    {
        Session["UserName"] = "Administrator";
        string menu = this.GetMenu();
        ViewBag.ManueItems = menu;
        return View("User");
    }

After click on the login button it comes to LoginAccess in Login controller and then comes to Home controller Index method, but doesn't view the "user view". But when i check with typing url >>(host__/Login/LoginAccess">http://__host__/Login/LoginAccess) Its working properly. Please help me to slove this problem. Thank you.. :)

You may misuse the Ajax function here

You should use @Html.ActionLink("Login", "LoginAccess", "Login") instead

Ajax is originally used to get something from server side other than affecting currently browsing page.

When you are doing Ajax calls, you cannot force redirect from controller. You can fix this by 2 ways:

  1. Replace ajax call with regular get.
  2. Return a json from the action and use redirect from javascript

You can try this

var result = new ControllerName().YourAction();

try this instead

return redirect("/Home/Index")