我有一个控制器,我从中删除了所有数据,留下了一个带有无参数视图返回的简单索引操作。事情是以下,我有我的控制器的定义
[AuthorizeExtension]
public class TasksController : Controller
{
private readonly ApplicationDbContext _db = new ApplicationDbContext( );
public string CurrentUserId => User.Identity.GetUserId( );
// GET: Tasks
public ActionResult Index( )
{
var data = RouteTable.Routes.GetRouteData( HttpContext );
return View( );
}
}
曾几何时我可以通过 localhost / Tasks 访问它。现在,如果我尝试相同的网址,我会被重定向到登录视图( authorizeExtension <当我登录时,/ strong>如果我没有登录),但它确实适用于小写访问 localhost / tasks ,子页索引,创建,详细信息等也是如此其他页面有效,而这个页面没有。我也尝试使用具有相同视图的新控制器复制它,它可以工作,但如果我执行以下操作
[AuthorizeExtension]
[RoutePrefix("Tasks")]
public class EmptyController : Controller
{
private readonly ApplicationDbContext _db = new ApplicationDbContext( );
public string CurrentUserId => User.Identity.GetUserId( );
// GET: Tasks
[Route("Index")]
public ActionResult Index( )
{
var data = RouteTable.Routes.GetRouteData( HttpContext );
return View( );
}
}
我再次被重定向。我在 authorizationExtensionm 中附加了一个打印屏幕,其中包含 HttpContext.User 我失去了我的身份。
答案 0 :(得分:0)
我第二次遇到问题后发现问题,实际上是数据库中密钥的错位,回到工作迁移就行了。