【问题标题】:Simple Membership Provider not working after its published简单会员提供程序在发布后无法正常工作
【发布时间】:2013-11-04 23:14:35
【问题描述】:

我的简单会员提供商有问题。

我的本​​地 VS2013 机器带有远程 sqlserver。

当我在本地运行网站时,它可以工作,我可以创建用户并登录。

当我发布网站时,它只是拒绝创建用户并将您返回到注册页面。 SQL Server 和发布的网站位于同一台服务器上。

对服务器的所有其他请求都有效(网站内容)

注册方法的代码如下:

    [HttpPost]
    [AllowAnonymous]
    [ValidateAntiForgeryToken]
    public async Task<ActionResult> Register(RegisterViewModel model)
    {
        if (ModelState.IsValid)
        {
            var user = new ApplicationUser() { UserName = model.UserName };

            var result = await UserManager.CreateAsync(user, model.Password);
            if (result.Succeeded)
            {
                //await SignInAsync(user, isPersistent: false);
                return RedirectToAction("Index", "Home");
            }
            else
            {
                AddErrors(result);
            }
        }

        // If we got this far, something failed, redisplay form
        return View(model);
    }

web.comfig:

<add name="DefaultConnection" connectionString="data source=this.is.my.host.name;initial catalog=DBNAME;persist security info=True;user id=thisismyuser;password=thisismypassword;" providerName="System.Data.SqlClient" />

似乎模型状态或结果不包含任何内容。

有人知道这个吗?

我不得不提一下,它以前曾在已发布的网站上运行过。无论出于何种原因,它都不再存在了。

我什至尝试删除与简单会员提供程序关联的表。 - 当我这样做时,当我从 VS2013 运行它时,它们会重新创建,但当我从已发布的服务器运行它时它们不会。

提前感谢您的帮助!

【问题讨论】:

  • 您能否检查事件日志并查看请求期间的任何错误。然后可能会尝试运行一个 sql profiler 来查看查询是否正在执行?
  • 你好拉吉。我尝试使用 sql profiler,似乎所有相关的用户都没有到达 sql server。电话一定有问题。我三次检查了用户名和密码。我尝试查看事件日志,但找不到与 Web 服务器有关的任何日志。我在哪里可以找到这些日志文件?注意:所有实体框架调用都到达 SQL 服务器,与成员资格提供程序相关的所有内容似乎都失败了。

标签: sql-server asp.net-mvc asp.net-mvc-4 visual-studio-2013


【解决方案1】:

我解决了这个问题。

这完全无关。该错误与我在服务器上的登录错误有关的重写模块,但不是本地的。

删除相关规则后,一切正常!

感谢您对 Raj 的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-21
    • 1970-01-01
    • 2011-06-24
    • 2017-03-06
    • 2016-03-09
    相关资源
    最近更新 更多