2010-08-13 6 views
1

내가 로컬 컴퓨터에서 일한 HTML로 aspx 페이지를 저장했지만 서버에 게시 된 후 "경로에 대한 액세스가 거부되었습니다"라는 오류가 표시됩니다 ... 또한 액세스 권한을 부여하려고 시도했습니다. 그것은 작동하지 않습니다 .. 아무도 그것으로 도울 수 있습니까? 그렇지? ... C#을 asp.net에서 페이지를 저장하는 다른 방법이다운로드 및 aspx 페이지 저장

string url=HttpContext.Current.Request.Url.AbsoluteUri; 
string sHtml=""; 
HttpWebRequest request; 
HttpWebResponse response=null; 
Stream stream=null; 

request=HttpWebRequest)WebRequest.Create(url); 
response=(HttpWebResponse)request.GetResponse(); 
stream=response.GetResponseStream(); 
StreamReader sr=new StreamReader(stream,System.Text.Encoding.Default); 
sHtml=sr.ReadToEnd(); 

string path=Environment.GetFolderPath(Environment.SpecialFolder.Desktop); 
string textfilename=TextBox1.Text; 
string getpath=path+"\\"+textfilename+".html"; 
File.WriteAllText(getpath,sHtml); 

if(stream!=null)stream.Close(); 
if(response!=null)response.Close(); 

감사합니다 .. 당신이 파일의 사용을 저장해야하는 경우

+0

저장 하시겠습니까? DB에서 또는 HTML 파일로만? – anishMarokey

+0

html 파일로 저장 중입니다. – Leema

+0

저장 방법에 따라 다르지만 여기에 몇 가지 코드가 필요합니다. – Aristos

답변

1

이 얻을 수있는 응용 프로그램 경로

Server.MapPath(@"filename.txt"); 

Microsoft.Net 폴더에 액세스하려는 웹 서버에서 파일 이름 만 쓸 경우이 방법을 사용하십시오.

0

예 쓰기 대상 폴더에 적절한 권한이 있는지 확인하십시오. IIS 5는 ASPNET 계정을 사용하고 IIS6은 네트워크 서비스를 사용합니다. 적절한 계정에 읽기/쓰기 만하십시오. 이것은 당신의 dev 환경입니까, 아니면 환경입니까?

또한 폴더를 가리키고 있는지 확인하십시오. ASPNET 계정의 데스크톱 폴더는 ASPNET 계정이 사용자 폴더가있는 사용자가 아니기 때문에 존재하지 않습니다.

+0

다음 액세스 권한을 부여한 다음 작동하지 않습니다. – Leema

+0

thsi Environment.GetFolderPath (Environment.SpecialFolder.Desktop)에서 경로를 변경 했습니까? 데스크탑이 특별한 계정으로 작동하지 않을 수 있습니다. 다른 폴더를 사용해보십시오. –

+0

안녕하세요. 당신의 제안은 괜찮습니다. 하지만 그 페이지를 사용자 바탕 화면에 저장해야합니다. 어떻게해야합니까? – Leema

0

웹에서 다운로드 한 ZIP에서 CSS를 배포 할 때 비슷한 문제가있었습니다. Windows 탐색기에서 aspx 파일을 마우스 오른쪽 버튼으로 클릭하고 파일 속성을 확인하십시오. 탭 중 하나가 파일이 "차단"되었음을 나타낼 수 있습니다. 그렇다면 버튼을 눌러 차단을 해제하십시오.