经过长时间的努力将我的asp.net核心应用程序发布到网络服务器后,我终于做到了,现在一切都在管理控制器的索引方法旁边工作,指定为默认。
public IActionResult Index(int page = 1)
{
ViewBag.Title = "Admin Panel";
var model = new AdminViewModel()
{
Paging = new PaginationSettings()
{
ItemsPerPage = 4,
CurrentPage = page,
ShowFirstLast = true,
TotalItems = _newsData.GetAll().Count()
},
Category = _newsData.GetAllCats()
};
model.Newses = _newsData.Pagination(page);
return View(model);
}
浏览器只抛出500错误并说该网站无效。 如果有人知道该怎么做请求回复。 //编辑: 这是来自logfile的错误:
警告:Microsoft.Extensions.DependencyInjection.DataProtectionServices [59] 既没有用户个人资料也没有HKLM注册表。使用临时密钥存储库。应用程序退出时,受保护的数据将不可用。 警告:Microsoft.AspNetCore.DataProtection.Repositories.EphemeralXmlRepository [50] 使用内存存储库。密钥不会被保存到存储区。
答案 0 :(得分:0)
这是IIS中的一个错误,当使用DataProtection
的应用程序托管在Kestrel / IIS组合中时会发生这种错误。它将你的短暂密钥放入内存而不是机器注册表,这意味着当应用程序池停止时它们都会被释放。
有关此错误的更多讨论here。问题似乎是由服务器上的running this PowerShell script解决的。您可以阅读有关脚本in this GitHub thread的更多信息。