2012-02-14 4 views
1

여기 데이터베이스에서 데이터를 읽고 결과를 반복하며 HTML 문자열 행을 포함하는 열 값을 함수에 전달합니다. 이 함수는 HTML 입력에서 <body> 태그와 내용을 추출합니다.하나의 파일 만 생성 이유?

디버그에 디버그를 추가하고 코드를 단계별 실행하면 모든 것이 제대로 작동합니다. 중단 점이 제거되면 하나의 파일 만 생성되지만 예외는 발생하지 않습니다. 코드 : 처음에는

for (int i = 0; i < ds.Tables[0].Rows.Count; i++) 
    { 
     try 
     { 
      getBody(ds.Tables[0].Rows[i]["MailText"].ToString()); 
     } 
     catch(Exception exp) 
     { 
      Response.Write(exp.ToString()); 
     } 
    } 


public void getBody(string html) 
{ 
    try 
    { 
     HtmlDocument HD = new HtmlDocument(); 
     HD.LoadHtml(html); 
     string output = HD.DocumentNode.SelectSingleNode("//body") == null ? HD.DocumentNode.InnerHtml : HD.DocumentNode.SelectSingleNode("//body").InnerHtml; 
     using (StreamWriter sw = new StreamWriter(Server.MapPath("OnlyBody/") + DateTime.Now.ToString("ddMMyyyyhhmmss") + ".txt")) 
     { 
      sw.Flush(); 
      sw.Write(output); 
      if (sw != null) 
      { 
       sw.Close(); 
       sw.Dispose(); 
      } 
     } 

    } 
    catch (Exception exp) 
    { 
     throw exp; 
    } 
    finally 
    { 

    } 
} 

나는 문제가 파일 스트림라고 생각하지만, 심지어 오류가 지속 StreamWriter을 배치 한 후. 코드가 너무 빨리 실행되기 때문에 초 (ss)는 증가하지 않는, 중단없이

DateTime.Now.ToString("ddMMyyyyhhmmss") 

: 당신이 중단 점와 을 디버깅 할 때

답변

3

는 코드 블록은 다른 결과를 반환합니다.

관련 문제