2013-02-28 3 views
0

나는 여기에 stackoverflow에 다른 항목이 있었지만 아무데도 이것을 해결하기 위해 단계가 없습니다? 복잡하니?"경로에 대한 액세스가 asp.net이 거부되었습니다."

로컬 드라이브의 폴더에 압축을 해제하고이 오류가 발생합니다. 내 webconfig에서 뭔가를해야합니까?

나는 방금 내 C 드라이브 전체에 대한 쓰기 권한이 있어야합니까 ?? 그게 좋지 않을까요?

덕분에 따라서 대답을 게시

public ActionResult Upload(ScormUploadViewModel model) 
{ 
    if (ModelState.IsValid) 
    { 
    if (model.ScormPackageFile != null) 
    { 
     //string destinationDirectoryName = "c:\\TSFPreview\\Zinc\\Web\\Project\\ScormPackages"; 
     string zipCurFile = model.ScormPackageFile.FileName; 
     //string origZipFileName = zipCurFile.Remove(zipCurFile.Length - model.ScormPackageFile.FileName); 
     string destinationDirectoryName = Path.GetFileNameWithoutExtension(zipCurFile); 
     //Directory.CreateDirectory(destinationDirectoryName); 
     Directory.CreateDirectory("C:\\Testing"); 
     StreamReader streamReader = new StreamReader("C:\\Testing"); //here get that error 
     streamReader.Read(); 
     using (GZipStream Decompress = new GZipStream(model.ScormPackageFile.InputStream, CompressionMode.Decompress)) 
     { 
      //Decompress.CopyTo("C:\\Testing"); 
     } 
    } 
    } 
    return View(model); 
} 
+0

몇 가지 코드를 알려 주실 수 있습니까? –

+0

이제는 MVC 응용 프로그램이므로 IIS에서 호스팅되는 것 같습니다. 이 응용 프로그램이 사용하는 응용 프로그램 풀 ID를 확인할 수 있습니까? 그리고 그 사용자는 File IO를 할 권한이 있습니까? –

+0

어떻게 확인하나요? 죄송합니다. –

답변

0

코멘트 너무 오래, -

, 당신의 IIS를 열고이 post의 지침을 따르십시오. 이것은 응용 프로그램 풀 ID를 확인하는 방법을 알려줍니다.

기본적으로 asp.net 응용 프로그램은 최소한의 사용 권한을 가진 계정으로 실행되며 c : \ location에 쓸 수있는 권한이 거부됩니다.

시도하려는 디렉터리 등의 작업을 만드는 데 필요한 권한이있는 로컬 계정을 사용하도록 응용 프로그램 풀 ID를 변경하십시오. (배포 된 코드에는 권장하지 않지만 로그인을 앱 풀 ID에 넣어 테스트 할 수 있습니다.)

+0

IIS 관리 콘솔을 열려면 어떻게해야합니까 ?? please –

+0

'inetmgr'을 입력하고 실행하십시오. Enter를 누르십시오. 또는 제어판 -> 관리 도구 -> 인터넷 정보 서비스 –

+0

을 탐색 도구로 찾아보고 목록에서 IIS를 찾을 수 없습니까? –

관련 문제