【问题标题】:Html.ActionLink port settingHtml.ActionLink 端口设置
【发布时间】:2012-01-04 20:58:57
【问题描述】:

如何设置不同的端口

public static MvcHtmlString ActionLink(
   this HtmlHelper htmlHelper,
   string linkText,
   string actionName,
   string controllerName,
   string protocol,
   string hostName,
   string fragment,
   Object routeValues,
   Object htmlAttributes
  )

我的解决方案中有两个网页 (mvc 3),据我所知,您不能将两者都放在同一个地址上(如果我在这里错了,请纠正我)。

如果我确实将此链接放在我的第一个网页中 @Html.ActionLink("WebPage2", "Index", "Controller", "http", "localhost:5928", null, null, null)

我得到的网址如下:localhost:5928:5000 其中 5000 是我的第一个网页所在的端口

【问题讨论】:

  • 这两个网站是分开的吗?
  • 您正在尝试使用您的路由链接跨应用程序,这就是它不起作用的原因。存在的 HtmlHelper 仅生成与当前应用程序相关的链接。您的站点是独立的应用程序,彼此不知道。他们对彼此的路由表或任何东西一无所知。
  • 好吧,我将第二个站点的引用添加到第一个站点,并且我可以通过智能感知访问所有控制器和视图……只是因为它是一个单独的 mvc 3 页面,它需要不同的端口
  • 两个页面使用相同的数据库,我将使用相同的登录表单。您认为将整个第二个 mvc 3 站点迁移到第一个 as 区域会更好吗?

标签: asp.net-mvc-3 model-view-controller html.actionlink


【解决方案1】:

如果您的应用程序要相互路由,并且共享代码,那么您应该考虑使用 Areas 而不是单独的项目

【讨论】:

    【解决方案2】:

    我认为 ActionLink 不适合您。 ActionLink 根据您的路由表生成链接。由于您正在尝试为单独的网站(不同的端口)生成链接,因此它不知道如何创建链接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-09
      • 1970-01-01
      • 1970-01-01
      • 2018-11-04
      • 2018-02-22
      • 1970-01-01
      • 1970-01-01
      • 2017-07-08
      相关资源
      最近更新 更多