C# .net webapi文件路径作为参数

C# .net webapi文件路径作为参数,c#,asp.net-web-api,C#,Asp.net Web Api,我想知道是否有可能以某种方式将相对filepath作为字符串发送给GET方法 我的方法: public HttpResponseMessage Get([FromUri] string fileName) My route: config.Routes.MapHttpRoute( name: "MiscApiDownload", routeTemplate: "api/{controller}/download/{fileName}", defaults: ne

我想知道是否有可能以某种方式将相对
filepath
作为字符串发送给GET方法

我的方法:

public HttpResponseMessage Get([FromUri] string fileName)

My route:
    config.Routes.MapHttpRoute(
    name: "MiscApiDownload",
    routeTemplate: "api/{controller}/download/{fileName}",
    defaults: new {action = "Download" }
);

“test.jpg”
这样的文件名起作用,但只要我有一个
子目录
exp.
“folder/test.jpg”
就再也找不到该方法了。这是合乎逻辑的。问题是在URI中是否有这样做的好方法。我不想在正文中接收它。

使用catchall参数

"api/{controller}/download/{*fileName}"

使用catchall参数

"api/{controller}/download/{*fileName}"

我想应该是“api/{controller}/download/{*fileName}”@JonSusiak对我不起作用……我缺少什么?这是我的路由配置:[route(“api/access/{*fileName}”)]这是我尝试调用它的方式(使用浏览器):\ulenovo US.pdf它一直告诉我“未找到资源”,知道吗?(顺便说一句,我正在使用MapHttpAttribute路由)你是否尝试在你的url末尾添加/了?我想应该是“api/{controller}/download/{*fileName}”@JonSusiak对我不起作用…我遗漏了什么?这是我的路由配置:[route(“api/access/{*fileName}”)]这是我尝试调用它的方式(使用浏览器):\ulenovo US.pdf它一直告诉我“未找到资源”,知道吗?(顺便说一句,我正在使用MapHttpAttribute路由)您是否尝试在url末尾添加/了?