I've got an ASP.NET MVC4 website (using vs2012) that allows users to login by clicking the "login" link. I'm getting the infamous error:
The current request for action 'Login' on controller type 'AccountController' is ambiguous between the following action methods:
System.Web.Mvc.ActionResult Login() on type MyProject.Controllers.AccountController
System.Web.Mvc.ActionResult Login(MyProject.Clients) on type MyProject.Controllers.AccountController 
I've checked a bunch of links on here, including:
Resolving ambiguity Ambiguous action method call, for some reason ASP.NET MVC 3
and a few more outside of SO. I've made sure I have the methods decorated correctly but still can't find the reason this is happening.
Here's my code for the "Login" link:
    <ul class="topnav navRight">
        @if (!User.Identity.IsAuthenticated)
        {
            <li><a href="@Url.Action("Login", "Account")" id="ViewLogin">LOGIN</a></li>
        }
        else
        {
            <li><a href="@Url.Action("Index", "ClientStats")">STATS</a></li>
            <li><a href="@Url.Action("LogOut", "Account")">LOGOUT</a></li>
        }
    </ul>
and my Controller:
[Authorize]
public class AccountController : CustomController
{
    //
    // GET: /Account/Logout
    public ActionResult LogOut()
    {
        WebSecurity.Logout();
        return RedirectToAction("Index", "Home");
    }
[AllowAnonymous]
public virtual ActionResult Login()
{
    return View();
}
[HttpPost]
[AllowAnonymous]
public virtual ActionResult Login(Clients model)
{
    if (ModelState.IsValid)
    {
        Security security = new Security();
        if (WebSecurity.Login(model.Username, model.Password))
        {
            using (MyProjectContext db = new MyProjectContext())
            {
                int userID = WebSecurity.GetUserId(model.Username);
                Data.User user = db.Users.Find(userID);
                if (user != null)
                    if (user.Active)
                    {
                        if (User.IsInRole("Administrator"))
                            return RedirectToAction("Admin", "ClientStats");
                        else
                            return RedirectToAction("Index", "ClientStats");
                    }
            }
        }
    }
    ModelState.AddModelError("", "Invalid Username or Password.");
    return View(model);
}
}
The CustomerController has nothing special in it but here it is anyways:
    public class CustomController : Controller
{
    public enum PageNames
    {
        Home,
        Services,
        Testimonials,
        Video,
        Photo,
        FAQ,
        About,
        Contact,
        Events,
        Profile
    }
    public int UserId
    {
        get { return Convert.ToInt32(Session["UserId"]); }
        set { Session["UserId"] = value; }
    }
    public static string GetPageTitle(PageNames pageName)
    {
        string pageTitle = "Welcome to My Website!";
        switch (pageName)
        {
            case PageNames.Services:
                pageTitle = "- Services";
                break;
            case PageNames.Testimonials:
                pageTitle = "- Testimonials";
                break;
            case PageNames.Video:
                pageTitle = "- Videos";
                break;
            case PageNames.Photo:
                pageTitle = "- Photos";
                break;
            case PageNames.FAQ:
                pageTitle = "- Frequently Asked Questions";
                break;
            case PageNames.Contact:
                pageTitle = "- Contact Us";
                break;
            case PageNames.Events:
                pageTitle = "- Calnedar of Events";
                break;
            case PageNames.Profile:
                pageTitle = "- Profile";
                break;
        }
        return pageTitle;
    }
    public static Data.User ClientInfo { get; set; }
}
And here's the routing information...I've tried to uncomment the one route (and changed it's name) but I still get the same error:
    public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}",
            defaults: new { controller = "Home", action = "Index" }
        );
        //routes.MapRoute(
        //    name: "Default",
        //    url: "{controller}/{action}/{id}",
        //    defaults: new { controller = "Account", action = "Login", id = UrlParameter.Optional }
        //);
        routes.MapRoute(
            name: "id",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );
    }
}
Any help/guidance is greatly appreciated!
UPDATE  I've tried the suggestions of commenting out the routing values and adding [HttpGet] to the Login method but it still throws the same error.  I do recall this working at one time so I don't know what has changed lately to make it do this all of a sudden.  Could it be something in the Web.Config?
 
                        
MVC doesn't support method overloading based solely on signature take [AllowAnonymous] out
add a [HttpGet] to the get actionresult and the problem should be solved