更改Web APi根目录

时间:2015-01-29 20:41:39

标签: c# iis asp.net-web-api asp.net-web-api2 iis-8.5

我有一个Web Api应用程序,当我向其发送文件路径时,会执行文件上传到Amazon S3。如何更改此文件路径相对的根目录?现在,如果我发送myVideo.flv作为文件路径,我的应用会尝试在c:\windows\system32\inetsrv\myVideo.flv找到要上传的文件。我希望在c:\MyApp\files\myVideo.flv查找该文件。这是我在app config或iis中更改的内容吗?

这是我的控制器方法:

[HttpPost]
public HttpResponseMessage move([FromBody] Models.Request request)
{
    string videopath = request.videopath;

    try
    {
        PutObjectRequest putVideo = new PutObjectRequest
        {
            BucketName = WebApiConfig.AWSVideoBucket,
            Key = videopath,
            FilePath = videopath,
            ContentType = "video/flv"
        };

        PutObjectResponse videoResponse = WebApiConfig.AWSclient.PutObject(putVideo);

        if (videoResponse.HttpStatusCode == HttpStatusCode.OK)
        {
            return Request.CreateResponse(HttpStatusCode.OK);
        }
    }
    catch (FileNotFoundException e)
    {
        return Request.CreateErrorResponse(HttpStatusCode.NotFound, "File not found: " + e.Message);
    }
}

1 个答案:

答案 0 :(得分:0)

打开IIS,展开网站并找到您的网站,右键单击该网站,然后选择"添加虚拟目录"。该目录可以指向机器上的任何位置。在您的应用程序中,您将读取/写入应用程序根目录下的此虚拟目录。还要注意权限,以确保访问该站点的用户具有该虚拟目录的适当权限。