2009-12-20 76 views
0

我开始学习ASP.NET和C#,以便更熟悉我想为开放源码BugTracker.Net应用制作插件的技术。我在哪里堆放的是,为增加新的发行申请需要得到的HttpWebRequest上insert_bug.aspxHelp with 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); 
     } 

我也想插入类别为我的问题和insert_bug.aspx读码I基金部分用于定义开放问题

类别
if (Request["$CATEGORY$"] != null && Request["$CATEGORY$"] != "") { categoryid = Convert.ToInt32(Request["$CATEGORY$"]); } 

问: 什么和如何我可以添加“$组$”我的要求使问题我补充定义类别。

回答

1

如果我正确理解你的问题,如果你想添加一个类别,你需要查找类别ID并将它作为一个变量添加到你的POST数据中。 BTW

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

,在简单的HTTP客户端方案是这样一个你:例如,如果你想要的类别有其ID = 1(在BugTracker.NET“错误”),那么你会使用这个使用WebClient类更好。您可以用更少的代码行完成同样的事情。