You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ASP.NET跨项目跳转时指定目标项目的localhost地址?

解决跨ASP.NET项目跳转的问题

核心思路

两个项目是独立运行的Web应用,各自拥有独立的域名/端口(比如电商项目跑在localhost:5000,用户管理项目跑在localhost:5001),RedirectToRoute只能生成当前项目内的路由地址,跨项目跳转必须使用绝对URL指定目标项目的完整地址。

具体实现方法

方法1:直接拼接绝对URL跳转

修改你的Redireccionar方法,直接返回包含目标项目地址的绝对URL:

public IActionResult Redireccionar()
{
    // 替换为用户管理项目实际的端口和路由地址
    string targetUrl = "http://localhost:5001/Propiedades/Propiedades";
    return Redirect(targetUrl);
}

方法2:通过配置文件管理目标地址(更灵活)

避免硬编码地址,可将目标项目的基础地址放到配置文件中:

  1. 在电商项目的appsettings.json添加配置:
{
  "AppSettings": {
    "UserManagementBaseUrl": "http://localhost:5001"
  }
}
  1. 在控制器中注入IConfiguration,读取配置并拼接URL:
private readonly IConfiguration _configuration;

public YourController(IConfiguration configuration)
{
    _configuration = configuration;
}

public IActionResult Redireccionar()
{
    string baseUrl = _configuration["AppSettings:UserManagementBaseUrl"];
    string targetUrl = $"{baseUrl}/Propiedades/Propiedades";
    return Redirect(targetUrl);
}

注意事项

  • 确保两个项目同时运行,且目标项目的端口、控制器及Action名称正确。
  • 如果需要跳转后保持登录状态,还需处理跨域身份验证(比如Cookie共享、JWT令牌传递等),否则目标项目会判定用户未登录。

内容的提问来源于stack exchange,提问作者Paolo fernando Flores Rivera

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 03:22:02