2009-12-20 4 views
0

오픈 소스 BugTracker.Net 응용 프로그램 용 플러그인을 만들고 싶은 기술에 익숙해지기 위해 ASP.NET과 C#을 배우기 시작했습니다.ASP.NET HttpWebRequest에 대한 도움말

string Url = "http://localhost:8090/insert_bug.aspx"; 
     string post_data = 
        "&username=admin" 
        + "&password=admin" 
        + "&short_desc=Description" 
        + "&comment=Comment" 
        + "&projectid=1" 

     byte[] bytes = Encoding.UTF8.GetBytes(post_data); 
     HttpWebResponse res = null; 
     try 
     { 
      HttpWebRequest req = (HttpWebRequest) System.Net.WebRequest.Create(Url); 
      req.Credentials = CredentialCache.DefaultCredentials; 
      req.PreAuthenticate = 
      req.Method = "POST"; 
      req.ContentType= "application/x-www-form-urlencoded"; 
      req.ContentLength=bytes.Length; 
      Stream request_stream = req.GetRequestStream(); 
      request_stream.Write(bytes,0,bytes.Length); 
      request_stream.Close(); 
      res = (HttpWebResponse) req.GetResponse(); 
     } 
     catch (Exception e) 
     { 
      Console.WriteLine("HttpWebRequest error url=" + Url); 
      Console.WriteLine(e); 
     } 

내 문제로도 CATEGORY를 삽입 할 : 어디에서 적재하고하는 것은 새로운 문제에 응용 프로그램을 추가하는 나는 기본적인 것은 다음과 같은 코드 작업을 않았다

insert_bug.aspx

에 HttpWebRequest를 얻을 필요가있다 및 insert_bug.aspx에 코드를 읽고 난 문제

을 여는 카테고리를 정의하는 부분에 자금을
if (Request["$CATEGORY$"] != null && Request["$CATEGORY$"] != "") { categoryid = Convert.ToInt32(Request["$CATEGORY$"]); } 

질문 : 무엇을 어떻게 내가 범주를 정의 추가 문제 때문에 내 요청에 "$ 카테고리 $"를 추가 할 수 있습니다.

답변

1

질문을 올바르게 이해했다면 범주를 추가하려면 범주 ID를 찾아 POST 데이터의 변수로 추가해야합니다. 원하는 카테고리는 ID = 1 (BugTracker.NET에서 "버그")이있는 경우 예를 들어, 당신은이를 사용하십시오 :

string post_data = 
       "&username=admin" 
       + "&password=admin" 
       + "&short_desc=Description" 
       + "&comment=Comment" 
       + "&projectid=1" 
       + "&$CATEGORY$=1"; 

을 BTW, 간단한 HTTP 클라이언트 시나리오에서 당신이있어 이와 같은 WebClient 클래스를 사용하는 것이 더 좋습니다. 보다 적은 코드 행에서 동일한 작업을 수행 할 수 있습니다.