【发布时间】:2019-11-22 21:37:07
【问题描述】:
我已经完成了这个解决方案,但这不是我想要的 get parameters from URL in controller constructor。
假设,在 ASP.NET Core 控制器中,我请求一些方法。假设控制器类似于:
public class ClassroomsController : Controller {
private string requestedUserId;
// C O N S T R U C T O R
public ClassroomsController()
{
/**** THIS POINT ***/
requestedUserId = ;
}
[HttpGet("Classrooms/API01/{userId}")]
public IActionResult API01(string userId)
{
}
[HttpGet("Classrooms/API02/{userId}")]
public IActionResult API02(string userId)
{
}
}
我想要的是我是否在 Classrooms/API02 或 Classrooms/API01 中请求请求的UserId 应该在 基于参数 userId 的构造函数内部发起 strong> 在 API01 和 API02 中;
【问题讨论】:
-
如果没有传入
requestedUserId值,您希望如何填充它? -
如果这是为了实现某种身份验证/授权,请使用它而不是正常工作。
-
在控制器构建时,没有没有请求可以从中获取URL。你想做的事情在逻辑上是不可能的。了解为什么您想这样做会很有帮助,因为您似乎正在尝试用一种不切实际的方法解决另一个问题。
-
当我们知道我们是否向控制器请求时,首先执行构造函数。这就是为什么我在这里问是否有任何可能的方法来做到这一点。 @大卫G
-
@FranzGleichmann 有没有办法在构造函数中捕获 URL? :'(
标签: c# asp.net-core model-view-controller .net-core