从HTML页面链接到MVC视图

问题描述:

我有一个使用shtml页面的遗留站点。我有一个项目为这个网站添加动态功能 - 一个MVC应用程序,用户上传文件,控制器生成一个电子邮件。从HTML页面链接到MVC视图

由于遗留原因,我无法重写网站。我也没有网站管理员访问该网站;我只能使用我的区域中的文件。我必须使用的路径是//host/foo/bar/baz

this Stack Overflow question,我应该能够使目录巴兹内始发的静态页面的链接作为<a href="Controller/Action">link text</a>。我试过了,在解决了应用程序的web.config文件问题后,我收到了404错误。现在我认为这是有道理的,因为baz中没有名为Controller的目录 - 只有binViews等。没有找到的物理路径是foo/bar/baz/Controller/Action

有很多关于向MVC应用程序添加静态页面的文章和堆栈溢出问题,但我没有发现讨论其他方向的任何内容。

如何从静态HTML页面链接到MVC操作?

(我可能有后续的问题,我试图让应用程序运行。)

编辑补充: 我尝试了MVC应用程序代码移动到网站的顶层(在我的开发环境中)。当我这次使用链接时,我在我的IoC文件中遇到了一个配置错误,它带有不匹配的实体框架版本。这种方法可能是有希望的,并且它也可能在操作环境中遇到权限问题。

此外,我没有写入Web服务器文档区域根级别的权限,只有我的子目录区域。

+0

您需要输入的URL MVC应用程序。如果您的网站位于虚拟目录中,则您的网址将与您的网站相关。如果它在其他地方托管,它应该是绝对URL。在MVC站点中,您不依赖文件夹,定义了路由,因此使用格式“Host/YourMVCSite/Controller/Action”即可。 – Romias 2015-01-15 19:36:07

+0

它托管在我的网站中,但我无法设置虚拟目录。这是一个遗憾,因为我认为这是一个好的方法。现在不好的部分:我没有写服务器根目录的权限。所以我可能必须在其他地方托管应用程序。 – 2015-01-15 19:43:52

<a href="/Controller/Action">link text</a> 

尝试用 “/” 控制

之前
+0

这可以在开发中使用,但需要协调软件包版本。如果我完全控制了Web服务器,我可能会接受你的答案是正确的。但我无法将我的应用程序部署到服务器的根级别。所以至少我会给你一个upvote。 – 2015-01-15 21:02:37

+0

对世界的后续问题:有没有办法在站点上的子目录中部署我的应用程序,我确实有写访问权限的地方? – 2015-01-15 21:03:35

+0

后续跟进:有一种方法:(http://*.com/questions/8584288/put-asp-net-mvc-application-in-subdirectory-of-main-mvc-application) – 2015-01-15 21:44:29