我正在使用angular作为前端,我有一个index.html作为起始页面。
主页面上的看起来像这样:
本地主机:588 / index.html的#/
我希望它看起来像:localhost:3478 /#/或者只是localhost:3478 /
问题是我的家庭控制器的索引方法我返回
public ActionResult Index()
{
//return File("index.html", "text/html");
//return ActionResult("~/index.html");
//return new RedirectResult("~/index.html", true);
return Redirect(Url.Content("index.html"));
}
我无法找出任何其他方法来使其发挥作用。我如何解决我的问题?
P.S。已经尝试过的代码是没有工作的。
答案 0 :(得分:3)
1 - 解决方案1:
在控制器中使用以下内容:
public ActionResult Index()
{
return View();
}
2 - 解决方案2:阅读index.html内容并返回HTTP响应 - 在控制器类中使用以下作为索引操作:
public ActionResult index()
{
var myHtmlFile = Server.MapPath("~/Index.html");
if (!System.IO.File.Exists(myHtmlFile))
{
return HttpNotFound();
}
return Content(System.IO.File.ReadAllText(myHtmlFile), "text/html");
}
在这两种方式中,您可能需要更改index.html / cshtml文件中访问image,css和.js资源的路径,但这不是什么大问题,因为index.html不会出现在地址栏中。