Displaying PDF ASP.Net MVC

asp.net-mvc

Solution

You don't seem to have specified the filename in your path:

public ActionResult ShowFile(string filename)
{
    var path = @"C:\Documents and Settings\nickla\Desktop";
    var file = Path.Combine(path, filename);
    file = Path.GetFullPath(file);
    if (!file.StartsWith(path))
    {
        // someone tried to be smart and sent 
        // ?filename=..\..\creditcard.pdf as parameter
        throw new HttpException(403, "Forbidden");
    }
    return File(file, "application/pdf");
}

Problem

I have a file on my desktop for test. I am trying to display it in a view that looks like this: ``` @{ ViewBag.Title = "ShowFile"; } <h2>ShowFile</h2> ``` The code I am using for the controller is: ``` [HttpGet] public ActionResult ShowFile(string path) { path = @"C:\Documents and Settings\nickla\Desktop\nlamarca_06_15.pdf"; return File(path, "application/pdf", "nlamarca_06_15.pdf"); } ``` When I run this code the view displays "undefined" any ideas on what could be wrong here?

Original source