ASP.Net Core 2 - 使用Url.Action为web api生成url的行为有何不同?

时间:2017-12-22 22:14:33

标签: asp.net-mvc typescript asp.net-core asp.net-core-webapi

我已经使用帮助器Url.Action将完整的ASP.Net MVC中的相对URL从MVC视图传递到Typescript / Javascript类。这是一个例子,在cshtml文件中:

<script>
 let vm = new VM('@Url.Action("Names", "api/Data")');
</script>

Typescript类构造函数在完整的ASP.Net中传递以下字符串:“/ api / Data / Names”,但在ASP.Net Core 2中,传递的URL是“/ api%2FData / Names”,这是无效的网址。我无法弄清楚这是有意还是错误。

1 个答案:

答案 0 :(得分:0)

  

Url.Action(动作,控制器)

指定控制器名称,而不是路线,例如......

Url.Action("names", "data")

然后在控制器本身上你可以做类似......

[Route("api/data")]