【发布时间】:2017-04-25 10:00:07
【问题描述】:
我想要实现的是:
有人来访时:smartphone.webshop.nl/home/index
我想把它从中间件重定向到:webshop.nl/smartphone/home/index
我想这样做是因为我想创建一个通用控制器,它根据sub-domein 从数据库中获取数据。所以我需要所有的调用都来自同一个控制器。
这是我现在的中间件:
public Task Invoke(HttpContext context)
{
var subDomain = string.Empty;
var host = context.Request.Host.Host;
if (!string.IsNullOrWhiteSpace(host))
{
subDomain = host.Split('.')[0]; // Redirect to this subdomain
}
return this._next(context);
}
如何重定向以及我的controller/mvc 配置应该是什么样子?
我对 .net core 很陌生,所以请在你的答案中明确。谢谢。
【问题讨论】:
-
你看过
context.Response.Redirect吗? -
@ColinM 是的,我做到了。这将返回 302 并重写 url。但我不想那样。我希望 url 保持原样并仅在代码中重定向它。
标签: c# .net asp.net-mvc asp.net-core