如何解决如何解决生产中的“序列不包含元素”?
我有一个 mvc 项目,它在 localhost 上运行得非常好,但在生产(plesk 托管)上它抛出 Sequence contains no element 错误:
public ActionResult Index(string page = "")
{
if (page == "")
page = "Home";
PageViewModel model;
PageDTO dto;
using (Db db = new Db())
{
if (!db.Pages.Any(x => x.Slug.Equals(page)))
return RedirectToAction("Index",new { page = ""});
dto = db.Pages.Where(x => x.Slug == page).FirstOrDefault();
}
ViewBag.PageTitle = dto.Title;
if (dto.HasSidebar == true)
{
ViewBag.Sidebar = "Yes";
}
else
{
ViewBag.Sidebar = "No";
}
model = new PageViewModel(dto);
return View(model);
}
当我在本地主机上运行项目时它工作正常,但在生产(plesk 托管)上它给出错误:
此外,在我第一次访问域时部署后,它要求我提供用户凭据,但我的应用程序没有这种登录。
Global.asax 下的 Application_AuthenticateRequest 代码
protected void Application_AuthenticateRequest()
{
if(User ==null) { return; }
string username = Context.User.Identity.Name;
string[] roles = null;
using(Db db = new Db())
{
AccountDTO dto = db.Users.FirstOrDefault(x => x.EmailAdress == username);
roles = db.UserRoles.Where(x => x.UserId == dto.Id).Select(x => x.Role.Name).ToArray();
}
IIdentity userIdentity = new GenericIdentity(username);
IPrincipal newUserObj = new GenericPrincipal(userIdentity,roles);
Context.User = newUserObj;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。