How to automate add my c# application issues to Github programmatically

前端 未结 2 579

How can I programmatically add issues on my Github repository using C#?

I have an Error Handler library (ErrorControlSystem) to attach that in a win application to rai

2条回答
  •  情歌与酒
    2021-02-06 04:03

    You can use the GitHub API for that. Create a webhook and add an issue the following way:

    POST /repos/:owner/:repo/issues
    

    Example from https://developer.github.com/v3/issues/

    {
      "title": "Found a bug",
      "body": "I'm having a problem with this.",
      "assignee": "octocat",
      "milestone": 1,
      "labels": [
        "Label1",
        "Label2"
      ]
    }
    

    So all you have to do is a HTTP - POST command to add an issue.

    You can do a post request using a WebRequest.

    Complete description for the api: https://api.github.com/repos/octocat/Hello-World/issues/1347

    Complete C#-Example:

    public void CreateBug(Exception ex) {
      WebRequest request = WebRequest.Create ("https://api.github.com/repos/yourUserName/YourRepo/issues ");
      request.Method = "POST";
      string postData = "{'title':'exception occured!', 'body':'{0}','assignee': 'yourUserName'}";
      byte[] byteArray = Encoding.UTF8.GetBytes (string.Format(postData,ex));
      request.ContentLength = byteArray.Length;
      Stream dataStream = request.GetRequestStream ();
      dataStream.Write (byteArray, 0, byteArray.Length);
      dataStream.Close ();
      WebResponse response = request.GetResponse ();
    }
    

    Now your issue has been created and response contains the response from GitHub

    This is the "fast, easy" solution. If you want do do more with GitHub issues, @VonC's answer might be the better one as it offers a more object-related solution

提交回复
热议问题