2012-08-13 8 views
1

나는 모든 종류의 파일을 업로드하고 다운로드 할 수 있어야하는 웹 사이트를 프로그래밍 중입니다. .php, .rar, .jpg, .cs, .pdf, .txt 등. 내가 좋아하는 일반 HTML을 사용하는 경우 :mvc3에서 파일을 다운로드하는 방법은 무엇입니까?

<a href="@Model.dList[i].filePath">download</a> 

그것은 브라우저에서 TXT 및 JPEG 파일의 내용을 표시하지만 나는이 일이하고 싶지 않아요. 나는 컨트롤러를 사용하여 코드를 작성해야한다고 생각한다. 나는 약간의 조사를했고 파일의 contentType 속성과 관련이 있다는 것을 알아 냈습니다. 나는 그들과 함께 약간의 재생과 기능

컨트롤러 쓴 :

public FileResult DownloadDoc(int dID) 
    { 
     string filePath = getFilePath(dID); 
     string contentType = getContentType(dID); 
     filePath = Path.Combine(Server.MapPath(dr.GetString("FilePath")), dr.GetString("FileName")); 
     return File(filePath, contentType); 
    } 

전망 : 파일이 다운로드되는이 기능으로

@Html.ActionLink("Download", "DownloadDoc", new { dID = @Model.dList[i].documentationID }) 

을하지만 이름은 항상 DownloadDoc을하고있는 확장자가없는입니다. 나는 여기 붙어있다.

내가 파일을 업로드하는 동안 무엇인가해야합니까? 그건 그렇고, 파일을 업로드 한 후 경로, contenttypes 및 파일 이름은 데이터베이스에 저장됩니다. 어떻게해야합니까?

return File(filePath, contentType, downloadFileName); 

답변

3
string fileName = "FileName.txt"; 
return File(filePath, contentType, fileName); 

이 후, 파일 이름 fileName 변수의 값이됩니다

+0

괜찮 았는데, 고마워. –

2

File() 함수의 세번째 파라미터를 사용한다.

관련 문제