안녕하세요. 내 서버의 실제 경로에서 파일을 다운로드하고 싶습니다. 내 응용 프로그램을 통해 물마루 vs2012 자사의 작품 greate 실행, 그리고 내가 실제 경로에서 파일 목록을 참조하십시오. 하지만 서버에 응용 프로그램을 게시 할 때 파일이 목록에 없습니다. 나는 어떤 물리적 경로가 반드시 필요하지만, 파일은 응용 프로그램 패키지 여기IISExpress에 응용 프로그램을 게시 한 후 파일을 다운로드하는 방법
에 저장하지 않아야 코드 :
public ActionResult NIRInfo()
{
List<string> filesList = new List<string>();
var dir = new System.IO.DirectoryInfo(@"Z:\Docs");
System.IO.FileInfo[] fileNames = dir.GetFiles("*.*");
var xow = from i in db.NIRs where i.Id == id select i.File;
foreach (var i in xow)
{
fileNames = dir.GetFiles(i);
foreach (var f in fileNames)
{
filesList.Add(f.Name);
}
ViewData["fList"] = filesList;
}
return View(nir);
}
및 클래스 다운로드
public FileResult Download(string Name)
{
return File(@"Z:\Docs\" + Name, MediaTypeNames.Application.Octet, Name);
}
코드의 코드 보기 :
@{ var fList = ViewData["fList"] as List<string>;}
@if (ViewData["fList"] != null)
{
<table>
<div style="border-top: #444444 1px solid"></div>
<b style="font-weight: normal">Files: </b>
<br />
<div style="border-top: #444444 1px solid"></div>
@foreach (var f in fList)
{
<a href="@Url.Action("Download", "NIR", new { Name = @f })">@f
<br />
</a>
}
</table>
}
코드에서 주소를 하드 코딩하고 있습니다. 서버 측에서도 동일한 경로입니까? –
나는 그것이 경로일지도 모른다라고 생각한다 : 192.xxx.xxx.xxx/Docs/Files – Pushkin
그러면 당신은 무엇을 기대 하느냐? 서버에서 사용할 수없는 잘못된 경로를 선언하고 있습니다. 코드는 당신이 말하고있는 것을 수행하고 있습니다 .. –