{"action":"created","comment":{"url":"https://api.github.com/repos/dotnet/docs/pulls/comments/228588151","pull_request_review_id":168897738,"id":228588151,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyODU4ODE1MQ==","diff_hunk":"@@ -1,131 +1,140 @@\n ---\n title: \"Retrieving Data Using a DataReader\"\n-ms.date: \"03/30/2017\"\n+ms.date: \"10/25/2018\"\n dev_langs: \n   - \"csharp\"\n   - \"vb\"\n ms.assetid: 97afc121-fb8b-465b-bab3-6d844420badb\n ---\n-# Retrieving Data Using a DataReader\n-Retrieving data using a **DataReader** involves creating an instance of the **Command** object and then creating a **DataReader** by calling **Command.ExecuteReader** to retrieve rows from a data source. The following example illustrates using a **DataReader** where `reader` represents a valid DataReader and `command` represents a valid Command object.  \n-  \n-```  \n+# Retrieve Data Using a DataReader\n+To retrieve data using a **DataReader**, create an instance of the **Command** object, and then create a **DataReader** by calling **Command.ExecuteReader** to retrieve rows from a data source. The **DataReader** provides an unbuffered stream of data that allows procedural logic to efficiently process results from a data source sequentially. The **DataReader** is a good choice when you're retrieving large amounts of data because the data is not cached in memory.\n+\n+The following example illustrates using a **DataReader** where `reader` represents a valid DataReader and `command` represents a valid Command object.  \n+\n+```csharp\n reader = command.ExecuteReader();  \n+```\n+\n+```vb\n+reader = command.ExecuteReader()\n ```  \n+\n+Use the **Read** method of the **DataReader** object to obtain a row from the results of the query. You can access each column of the returned row by passing the name or ordinal reference of the column to the **DataReader**. However, for best performance, the **DataReader** provides a series of methods that allow you to access column values in their native data types (**GetDateTime**, **GetDouble**, **GetGuid**, **GetInt32**, and so on). For a list of typed accessor methods for data provider-specific **DataReaders**, see <xref:System.Data.OleDb.OleDbDataReader> and <xref:System.Data.SqlClient.SqlDataReader>. Using the typed accessor methods when you know the underlying data type reduces the amount of type conversion required when retrieving the column value.  \n   \n- You use the **Read** method of the **DataReader** object to obtain a row from the results of the query. You can access each column of the returned row by passing the name or ordinal reference of the column to the **DataReader**. However, for best performance, the **DataReader** provides a series of methods that allow you to access column values in their native data types (**GetDateTime**, **GetDouble**, **GetGuid**, **GetInt32**, and so on). For a list of typed accessor methods for data provider-specific **DataReaders**, see <xref:System.Data.OleDb.OleDbDataReader> and <xref:System.Data.SqlClient.SqlDataReader>. Using the typed accessor methods, assuming the underlying data type is known, reduces the amount of type conversion required when retrieving the column value.  \n-  \n-> [!NOTE]\n->  The Windows Server 2003 release of the .NET Framework includes an additional property for the **DataReader**, **HasRows**, which enables you to determine if the **DataReader** has returned any results before reading from it.  \n-  \n- The following code example iterates through a **DataReader** object, and returns two columns from each row.  \n+ The following example iterates through a **DataReader** object and returns two columns from each row.  \n   \n  [!code-csharp[DataWorks SqlClient.HasRows#1](../../../../samples/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlClient.HasRows/CS/source.cs#1)]\n  [!code-vb[DataWorks SqlClient.HasRows#1](../../../../samples/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlClient.HasRows/VB/source.vb#1)]  \n   \n- The **DataReader** provides an unbuffered stream of data that allows procedural logic to efficiently process results from a data source sequentially. The **DataReader** is a good choice when retrieving large amounts of data because the data is not cached in memory.  \n-  \n ## Closing the DataReader  \n- You should always call the **Close** method when you have finished using the **DataReader** object.  \n+ Always call the **Close** method when you have finished using the **DataReader** object.  \n   \n- If your **Command** contains output parameters or return values, they will not be available until the **DataReader** is closed.  \n+ If your **Command** contains output parameters or return values, those values are not available until the **DataReader** is closed.  \n   \n- Note that while a **DataReader** is open, the **Connection** is in use exclusively by that **DataReader**. You cannot execute any commands for the **Connection**, including creating another **DataReader**, until the original **DataReader** is closed.  \n+ While a **DataReader** is open, the **Connection** is in use exclusively by that **DataReader**. You cannot execute any commands for the **Connection**, including creating another **DataReader**, until the original **DataReader** is closed.  \n   \n > [!NOTE]\n >  Do not call **Close** or **Dispose** on a **Connection**, a **DataReader**, or any other managed object in the **Finalize** method of your class. In a finalizer, only release unmanaged resources that your class owns directly. If your class does not own any unmanaged resources, do not include a **Finalize** method in your class definition. For more information, see [Garbage Collection](../../../../docs/standard/garbage-collection/index.md).  \n   \n-## Retrieving Multiple Result Sets using NextResult  \n- If multiple result sets are returned, the **DataReader** provides the **NextResult** method to iterate through the result sets in order. The following example shows the <xref:System.Data.SqlClient.SqlDataReader> processing the results of two SELECT statements using the <xref:System.Data.SqlClient.SqlCommand.ExecuteReader%2A> method.  \n+## Retrieving Multiple Result Sets Using NextResult  \n+ If the **DataReader** returns multiple result sets, call the **NextResult** method to iterate through the result sets sequentially. The following example shows the <xref:System.Data.SqlClient.SqlDataReader> processing the results of two SELECT statements using the <xref:System.Data.SqlClient.SqlCommand.ExecuteReader%2A> method.  \n   \n  [!code-csharp[DataWorks SqlClient.NextResult#1](../../../../samples/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlClient.NextResult/CS/source.cs#1)]\n  [!code-vb[DataWorks SqlClient.NextResult#1](../../../../samples/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlClient.NextResult/VB/source.vb#1)]  \n   \n ## Getting Schema Information from the DataReader  \n- While a **DataReader** is open, you can retrieve schema information about the current result set using the **GetSchemaTable** method. **GetSchemaTable** returns a <xref:System.Data.DataTable> object populated with rows and columns that contain the schema information for the current result set. The **DataTable** contains one row for each column of the result set. Each column of the schema table row maps to a property of the column returned in the result set, where the **ColumnName** is the name of the property and the value of the column is the value of the property. The following code example writes out the schema information for **DataReader**.  \n+ While a **DataReader** is open, you can retrieve schema information about the current result set using the **GetSchemaTable** method. **GetSchemaTable** returns a <xref:System.Data.DataTable> object populated with rows and columns that contain the schema information for the current result set. The **DataTable** contains one row for each column of the result set. Each column of the schema table maps to a property of the columns returned in the rows of the result set, where the **ColumnName** is the name of the property and the value of the column is the value of the property. The following example writes out the schema information for **DataReader**.  \n   \n  [!code-csharp[DataWorks SqlClient.GetSchemaTable#1](../../../../samples/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlClient.GetSchemaTable/CS/source.cs#1)]\n  [!code-vb[DataWorks SqlClient.GetSchemaTable#1](../../../../samples/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlClient.GetSchemaTable/VB/source.vb#1)]  \n   \n ## Working with OLE DB Chapters  \n- Hierarchical rowsets, or chapters (OLE DB type **DBTYPE_HCHAPTER**, ADO type **adChapter**) can be retrieved using the <xref:System.Data.OleDb.OleDbDataReader>. When a query that includes a chapter is returned as a **DataReader**, the chapter is returned as a column in that **DataReader** and is exposed as a **DataReader** object.  \n+ Hierarchical rowsets, or chapters (OLE DB type **DBTYPE_HCHAPTER**, ADO type **adChapter**), can be retrieved using the <xref:System.Data.OleDb.OleDbDataReader>. When a query that includes a chapter is returned as a **DataReader**, the chapter is returned as a column in that **DataReader** and is exposed as a **DataReader** object.  \n   \n- The ADO.NET **DataSet** can also be used to represent hierarchical rowsets using parent-child relationships between tables. For more information, see [DataSets, DataTables, and DataViews](../../../../docs/framework/data/adonet/dataset-datatable-dataview/index.md).  \n+ The ADO.NET **DataSet** can also be used to represent hierarchical rowsets by using parent-child relationships between tables. For more information, see [DataSets, DataTables, and DataViews](../../../../docs/framework/data/adonet/dataset-datatable-dataview/index.md).  \n   \n  The following code example uses the MSDataShape Provider to generate a chapter column of orders for each customer in a list of customers.  \n   \n ```vb  \n-Using connection As OleDbConnection = New OleDbConnection( _  \n-  \"Provider=MSDataShape;Data Provider=SQLOLEDB;\" & _  \n-  \"Data Source=localhost;Integrated Security=SSPI;Initial Catalog=northwind\")  \n-  \n-Dim custCMD As OleDbCommand = New OleDbCommand( _  \n-  \"SHAPE {SELECT CustomerID, CompanyName FROM Customers} \" & _  \n-  \"APPEND ({SELECT CustomerID, OrderID FROM Orders} AS CustomerOrders \" & _  \n-  \"RELATE CustomerID TO CustomerID)\", connection)  \n-connection.Open()  \n-  \n-Dim custReader As OleDbDataReader = custCMD.ExecuteReader()  \n-Dim orderReader As OleDbDataReader  \n-  \n-Do While custReader.Read()  \n-  Console.WriteLine(\"Orders for \" & custReader.GetString(1))   \n-  ' custReader.GetString(1) = CompanyName  \n-  \n-  orderReader = custReader.GetValue(2)  \n-  ' custReader.GetValue(2) = Orders chapter as DataReader  \n-  \n-  Do While orderReader.Read()  \n-    Console.WriteLine(vbTab & orderReader.GetInt32(1))  \n-    ' orderReader.GetInt32(1) = OrderID  \n-  Loop  \n-  orderReader.Close()  \n-Loop  \n-' Make sure to always close readers and connections.  \n-custReader.Close()  \n-End Using  \n+Using connection As OleDbConnection = New OleDbConnection(\n+    \"Provider=MSDataShape;Data Provider=SQLOLEDB;\" &\n+    \"Data Source=localhost;Integrated Security=SSPI;Initial Catalog=northwind\")\n+\n+    Using custCMD As OleDbCommand = New OleDbCommand(\n+        \"SHAPE {SELECT CustomerID, CompanyName FROM Customers} \" &\n+        \"APPEND ({SELECT CustomerID, OrderID FROM Orders} AS CustomerOrders \" &\n+        \"RELATE CustomerID TO CustomerID)\", connection)\n+\n+        connection.Open()\n+\n+        Using custReader As OleDbDataReader = custCMD.ExecuteReader()\n+\n+            Do While custReader.Read()\n+                Console.WriteLine(\"Orders for \" & custReader.GetString(1))\n+                ' custReader.GetString(1) = CompanyName  \n+\n+                Using orderReader As OleDbDataReader = custReader.GetValue(2)\n+                    ' custReader.GetValue(2) = Orders chapter as DataReader  \n+\n+                    Do While orderReader.Read()\n+                        Console.WriteLine(vbTab & orderReader.GetInt32(1))\n+                        ' orderReader.GetInt32(1) = OrderID  \n+                    Loop\n+                    orderReader.Close()\n+                End Using\n+            Loop\n+            ' Make sure to always close readers and connections.  \n+            custReader.Close()\n+        End Using\n+    End Using\n+End Using\n ```  \n   \n ```csharp  \n-Using (OleDbConnection connection = new OleDbConnection(  \n-  \"Provider=MSDataShape;Data Provider=SQLOLEDB;\" +  \n-  \"Data Source=localhost;Integrated Security=SSPI;Initial Catalog=northwind\"));  \n-{  \n-OleDbCommand custCMD = new OleDbCommand(  \n-  \"SHAPE {SELECT CustomerID, CompanyName FROM Customers} \" +  \n-  \"APPEND ({SELECT CustomerID, OrderID FROM Orders} AS CustomerOrders \" +  \n-  \"RELATE CustomerID TO CustomerID)\", connection);  \n-connection.Open();  \n-  \n-OleDbDataReader custReader = custCMD.ExecuteReader();  \n-OleDbDataReader orderReader;  \n-  \n-while (custReader.Read())  \n-{  \n-  Console.WriteLine(\"Orders for \" + custReader.GetString(1));   \n-  // custReader.GetString(1) = CompanyName  \n-  \n-  orderReader = (OleDbDataReader)custReader.GetValue(2);        \n-  // custReader.GetValue(2) = Orders chapter as DataReader  \n-  \n-  while (orderReader.Read())  \n-    Console.WriteLine(\"\\t\" + orderReader.GetInt32(1));          \n-    // orderReader.GetInt32(1) = OrderID  \n-  orderReader.Close();  \n-}  \n-// Make sure to always close readers and connections.  \n-custReader.Close();  \n-}  \n+using (OleDbConnection connection = new OleDbConnection(\n+    \"Provider=MSDataShape;Data Provider=SQLOLEDB;\" +\n+    \"Data Source=localhost;Integrated Security=SSPI;Initial Catalog=northwind\"))\n+{\n+    using (OleDbCommand custCMD = new OleDbCommand(\n+        \"SHAPE {SELECT CustomerID, CompanyName FROM Customers} \" +\n+        \"APPEND ({SELECT CustomerID, OrderID FROM Orders} AS CustomerOrders \" +\n+        \"RELATE CustomerID TO CustomerID)\", connection))\n+    {\n+        connection.Open();\n+\n+        using (OleDbDataReader custReader = custCMD.ExecuteReader())\n+        {\n+\n+            while (custReader.Read())\n+            {\n+                Console.WriteLine(\"Orders for \" + custReader.GetString(1));\n+                // custReader.GetString(1) = CompanyName  \n+\n+                using (OleDbDataReader orderReader = (OleDbDataReader)custReader.GetValue(2))\n+                {\n+                    // custReader.GetValue(2) = Orders chapter as DataReader  \n+\n+                    while (orderReader.Read())\n+                        Console.WriteLine(\"\\t\" + orderReader.GetInt32(1));\n+                    // orderReader.GetInt32(1) = OrderID  \n+                    orderReader.Close();\n+                }\n+            }\n+            // Make sure to always close readers and connections.  \n+            custReader.Close();\n+        }\n+    }\n+}\n ```  \n   \n ## Returning Results with Oracle REF CURSORs  \n  The .NET Framework Data Provider for Oracle supports the use of Oracle REF CURSORs to return a query result. An Oracle REF CURSOR is returned as an <xref:System.Data.OracleClient.OracleDataReader>.  \n   \n- You can retrieve an **OracleDataReader** object, that represents an Oracle REF CURSOR using the <xref:System.Data.OracleClient.OracleCommand.ExecuteReader%2A> method, and you can also specify an <xref:System.Data.OracleClient.OracleCommand> that returns one or more Oracle REF CURSORs as the **SelectCommand** for an <xref:System.Data.OracleClient.OracleDataAdapter> used to fill a <xref:System.Data.DataSet>.  \n+ You can retrieve an **OracleDataReader** object that represents an Oracle REF CURSOR by using the <xref:System.Data.OracleClient.OracleCommand.ExecuteReader%2A> method. You can also specify an <xref:System.Data.OracleClient.OracleCommand> that returns one or more Oracle REF CURSORs as the **SelectCommand** for an <xref:System.Data.OracleClient.OracleDataAdapter> used to fill a <xref:System.Data.DataSet>.  ","path":"docs/framework/data/adonet/retrieving-data-using-a-datareader.md","position":213,"original_position":213,"commit_id":"1e6285cd31f1343e540d4474fdf29b0fa29caec7","original_commit_id":"1e6285cd31f1343e540d4474fdf29b0fa29caec7","user":{"login":"rpetrusha","id":10886961,"node_id":"MDQ6VXNlcjEwODg2OTYx","avatar_url":"https://avatars2.githubusercontent.com/u/10886961?v=4","gravatar_id":"","url":"https://api.github.com/users/rpetrusha","html_url":"https://github.com/rpetrusha","followers_url":"https://api.github.com/users/rpetrusha/followers","following_url":"https://api.github.com/users/rpetrusha/following{/other_user}","gists_url":"https://api.github.com/users/rpetrusha/gists{/gist_id}","starred_url":"https://api.github.com/users/rpetrusha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rpetrusha/subscriptions","organizations_url":"https://api.github.com/users/rpetrusha/orgs","repos_url":"https://api.github.com/users/rpetrusha/repos","events_url":"https://api.github.com/users/rpetrusha/events{/privacy}","received_events_url":"https://api.github.com/users/rpetrusha/received_events","type":"User","site_admin":false},"body":"OracleDataReader can be an xref (\\<xref:System.Data.OracleClient.OracleDataReader>)","created_at":"2018-10-26T16:23:41Z","updated_at":"2018-10-26T16:28:38Z","html_url":"https://github.com/dotnet/docs/pull/8651#discussion_r228588151","pull_request_url":"https://api.github.com/repos/dotnet/docs/pulls/8651","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/dotnet/docs/pulls/comments/228588151"},"html":{"href":"https://github.com/dotnet/docs/pull/8651#discussion_r228588151"},"pull_request":{"href":"https://api.github.com/repos/dotnet/docs/pulls/8651"}}},"pull_request":{"url":"https://api.github.com/repos/dotnet/docs/pulls/8651","id":225923077,"node_id":"MDExOlB1bGxSZXF1ZXN0MjI1OTIzMDc3","html_url":"https://github.com/dotnet/docs/pull/8651","diff_url":"https://github.com/dotnet/docs/pull/8651.diff","patch_url":"https://github.com/dotnet/docs/pull/8651.patch","issue_url":"https://api.github.com/repos/dotnet/docs/issues/8651","number":8651,"state":"open","locked":false,"title":"Cleaned up topic, fixed inline code samples esp USINGs.","user":{"login":"douglaslMS","id":10604251,"node_id":"MDQ6VXNlcjEwNjA0MjUx","avatar_url":"https://avatars0.githubusercontent.com/u/10604251?v=4","gravatar_id":"","url":"https://api.github.com/users/douglaslMS","html_url":"https://github.com/douglaslMS","followers_url":"https://api.github.com/users/douglaslMS/followers","following_url":"https://api.github.com/users/douglaslMS/following{/other_user}","gists_url":"https://api.github.com/users/douglaslMS/gists{/gist_id}","starred_url":"https://api.github.com/users/douglaslMS/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/douglaslMS/subscriptions","organizations_url":"https://api.github.com/users/douglaslMS/orgs","repos_url":"https://api.github.com/users/douglaslMS/repos","events_url":"https://api.github.com/users/douglaslMS/events{/privacy}","received_events_url":"https://api.github.com/users/douglaslMS/received_events","type":"User","site_admin":false},"body":"## Summary\r\n\r\nDid minor cleanup in ADO.NET article with the most page views. Fixed inline (but not yet referenced) code samples, especially for incomplete use of USING.\r\n\r\n","created_at":"2018-10-25T22:23:35Z","updated_at":"2018-10-26T16:28:38Z","closed_at":null,"merged_at":null,"merge_commit_sha":"e7f1f0e45e3486e04fc5f5227e58a1257099be13","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/dotnet/docs/pulls/8651/commits","review_comments_url":"https://api.github.com/repos/dotnet/docs/pulls/8651/comments","review_comment_url":"https://api.github.com/repos/dotnet/docs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/dotnet/docs/issues/8651/comments","statuses_url":"https://api.github.com/repos/dotnet/docs/statuses/1e6285cd31f1343e540d4474fdf29b0fa29caec7","head":{"label":"douglaslMS:adonet-hilo-datareader","ref":"adonet-hilo-datareader","sha":"1e6285cd31f1343e540d4474fdf29b0fa29caec7","user":{"login":"douglaslMS","id":10604251,"node_id":"MDQ6VXNlcjEwNjA0MjUx","avatar_url":"https://avatars0.githubusercontent.com/u/10604251?v=4","gravatar_id":"","url":"https://api.github.com/users/douglaslMS","html_url":"https://github.com/douglaslMS","followers_url":"https://api.github.com/users/douglaslMS/followers","following_url":"https://api.github.com/users/douglaslMS/following{/other_user}","gists_url":"https://api.github.com/users/douglaslMS/gists{/gist_id}","starred_url":"https://api.github.com/users/douglaslMS/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/douglaslMS/subscriptions","organizations_url":"https://api.github.com/users/douglaslMS/orgs","repos_url":"https://api.github.com/users/douglaslMS/repos","events_url":"https://api.github.com/users/douglaslMS/events{/privacy}","received_events_url":"https://api.github.com/users/douglaslMS/received_events","type":"User","site_admin":false},"repo":{"id":117740604,"node_id":"MDEwOlJlcG9zaXRvcnkxMTc3NDA2MDQ=","name":"docs","full_name":"douglaslMS/docs","private":false,"owner":{"login":"douglaslMS","id":10604251,"node_id":"MDQ6VXNlcjEwNjA0MjUx","avatar_url":"https://avatars0.githubusercontent.com/u/10604251?v=4","gravatar_id":"","url":"https://api.github.com/users/douglaslMS","html_url":"https://github.com/douglaslMS","followers_url":"https://api.github.com/users/douglaslMS/followers","following_url":"https://api.github.com/users/douglaslMS/following{/other_user}","gists_url":"https://api.github.com/users/douglaslMS/gists{/gist_id}","starred_url":"https://api.github.com/users/douglaslMS/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/douglaslMS/subscriptions","organizations_url":"https://api.github.com/users/douglaslMS/orgs","repos_url":"https://api.github.com/users/douglaslMS/repos","events_url":"https://api.github.com/users/douglaslMS/events{/privacy}","received_events_url":"https://api.github.com/users/douglaslMS/received_events","type":"User","site_admin":false},"html_url":"https://github.com/douglaslMS/docs","description":"This repository contains .NET Documentation.","fork":true,"url":"https://api.github.com/repos/douglaslMS/docs","forks_url":"https://api.github.com/repos/douglaslMS/docs/forks","keys_url":"https://api.github.com/repos/douglaslMS/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/douglaslMS/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/douglaslMS/docs/teams","hooks_url":"https://api.github.com/repos/douglaslMS/docs/hooks","issue_events_url":"https://api.github.com/repos/douglaslMS/docs/issues/events{/number}","events_url":"https://api.github.com/repos/douglaslMS/docs/events","assignees_url":"https://api.github.com/repos/douglaslMS/docs/assignees{/user}","branches_url":"https://api.github.com/repos/douglaslMS/docs/branches{/branch}","tags_url":"https://api.github.com/repos/douglaslMS/docs/tags","blobs_url":"https://api.github.com/repos/douglaslMS/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/douglaslMS/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/douglaslMS/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/douglaslMS/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/douglaslMS/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/douglaslMS/docs/languages","stargazers_url":"https://api.github.com/repos/douglaslMS/docs/stargazers","contributors_url":"https://api.github.com/repos/douglaslMS/docs/contributors","subscribers_url":"https://api.github.com/repos/douglaslMS/docs/subscribers","subscription_url":"https://api.github.com/repos/douglaslMS/docs/subscription","commits_url":"https://api.github.com/repos/douglaslMS/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/douglaslMS/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/douglaslMS/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/douglaslMS/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/douglaslMS/docs/contents/{+path}","compare_url":"https://api.github.com/repos/douglaslMS/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/douglaslMS/docs/merges","archive_url":"https://api.github.com/repos/douglaslMS/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/douglaslMS/docs/downloads","issues_url":"https://api.github.com/repos/douglaslMS/docs/issues{/number}","pulls_url":"https://api.github.com/repos/douglaslMS/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/douglaslMS/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/douglaslMS/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/douglaslMS/docs/labels{/name}","releases_url":"https://api.github.com/repos/douglaslMS/docs/releases{/id}","deployments_url":"https://api.github.com/repos/douglaslMS/docs/deployments","created_at":"2018-01-16T20:54:24Z","updated_at":"2018-10-25T19:16:36Z","pushed_at":"2018-10-25T22:22:29Z","git_url":"git://github.com/douglaslMS/docs.git","ssh_url":"git@github.com:douglaslMS/docs.git","clone_url":"https://github.com/douglaslMS/docs.git","svn_url":"https://github.com/douglaslMS/docs","homepage":"https://docs.microsoft.com/dotnet","size":651030,"stargazers_count":0,"watchers_count":0,"language":"PowerShell","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"dotnet:master","ref":"master","sha":"a9bf7c79d802fa16dd93ac69292b4c2363851997","user":{"login":"dotnet","id":9141961,"node_id":"MDEyOk9yZ2FuaXphdGlvbjkxNDE5NjE=","avatar_url":"https://avatars0.githubusercontent.com/u/9141961?v=4","gravatar_id":"","url":"https://api.github.com/users/dotnet","html_url":"https://github.com/dotnet","followers_url":"https://api.github.com/users/dotnet/followers","following_url":"https://api.github.com/users/dotnet/following{/other_user}","gists_url":"https://api.github.com/users/dotnet/gists{/gist_id}","starred_url":"https://api.github.com/users/dotnet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dotnet/subscriptions","organizations_url":"https://api.github.com/users/dotnet/orgs","repos_url":"https://api.github.com/users/dotnet/repos","events_url":"https://api.github.com/users/dotnet/events{/privacy}","received_events_url":"https://api.github.com/users/dotnet/received_events","type":"Organization","site_admin":false},"repo":{"id":35890081,"node_id":"MDEwOlJlcG9zaXRvcnkzNTg5MDA4MQ==","name":"docs","full_name":"dotnet/docs","private":false,"owner":{"login":"dotnet","id":9141961,"node_id":"MDEyOk9yZ2FuaXphdGlvbjkxNDE5NjE=","avatar_url":"https://avatars0.githubusercontent.com/u/9141961?v=4","gravatar_id":"","url":"https://api.github.com/users/dotnet","html_url":"https://github.com/dotnet","followers_url":"https://api.github.com/users/dotnet/followers","following_url":"https://api.github.com/users/dotnet/following{/other_user}","gists_url":"https://api.github.com/users/dotnet/gists{/gist_id}","starred_url":"https://api.github.com/users/dotnet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dotnet/subscriptions","organizations_url":"https://api.github.com/users/dotnet/orgs","repos_url":"https://api.github.com/users/dotnet/repos","events_url":"https://api.github.com/users/dotnet/events{/privacy}","received_events_url":"https://api.github.com/users/dotnet/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/dotnet/docs","description":"This repository contains .NET Documentation.","fork":false,"url":"https://api.github.com/repos/dotnet/docs","forks_url":"https://api.github.com/repos/dotnet/docs/forks","keys_url":"https://api.github.com/repos/dotnet/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dotnet/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dotnet/docs/teams","hooks_url":"https://api.github.com/repos/dotnet/docs/hooks","issue_events_url":"https://api.github.com/repos/dotnet/docs/issues/events{/number}","events_url":"https://api.github.com/repos/dotnet/docs/events","assignees_url":"https://api.github.com/repos/dotnet/docs/assignees{/user}","branches_url":"https://api.github.com/repos/dotnet/docs/branches{/branch}","tags_url":"https://api.github.com/repos/dotnet/docs/tags","blobs_url":"https://api.github.com/repos/dotnet/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dotnet/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dotnet/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/dotnet/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dotnet/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/dotnet/docs/languages","stargazers_url":"https://api.github.com/repos/dotnet/docs/stargazers","contributors_url":"https://api.github.com/repos/dotnet/docs/contributors","subscribers_url":"https://api.github.com/repos/dotnet/docs/subscribers","subscription_url":"https://api.github.com/repos/dotnet/docs/subscription","commits_url":"https://api.github.com/repos/dotnet/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/dotnet/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/dotnet/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/dotnet/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/dotnet/docs/contents/{+path}","compare_url":"https://api.github.com/repos/dotnet/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dotnet/docs/merges","archive_url":"https://api.github.com/repos/dotnet/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dotnet/docs/downloads","issues_url":"https://api.github.com/repos/dotnet/docs/issues{/number}","pulls_url":"https://api.github.com/repos/dotnet/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/dotnet/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/dotnet/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dotnet/docs/labels{/name}","releases_url":"https://api.github.com/repos/dotnet/docs/releases{/id}","deployments_url":"https://api.github.com/repos/dotnet/docs/deployments","created_at":"2015-05-19T15:13:32Z","updated_at":"2018-10-26T15:36:21Z","pushed_at":"2018-10-26T15:41:26Z","git_url":"git://github.com/dotnet/docs.git","ssh_url":"git@github.com:dotnet/docs.git","clone_url":"https://github.com/dotnet/docs.git","svn_url":"https://github.com/dotnet/docs","homepage":"https://docs.microsoft.com/dotnet","size":509951,"stargazers_count":1402,"watchers_count":1402,"language":"PowerShell","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2851,"mirror_url":null,"archived":false,"open_issues_count":1223,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":2851,"open_issues":1223,"watchers":1402,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/dotnet/docs/pulls/8651"},"html":{"href":"https://github.com/dotnet/docs/pull/8651"},"issue":{"href":"https://api.github.com/repos/dotnet/docs/issues/8651"},"comments":{"href":"https://api.github.com/repos/dotnet/docs/issues/8651/comments"},"review_comments":{"href":"https://api.github.com/repos/dotnet/docs/pulls/8651/comments"},"review_comment":{"href":"https://api.github.com/repos/dotnet/docs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/dotnet/docs/pulls/8651/commits"},"statuses":{"href":"https://api.github.com/repos/dotnet/docs/statuses/1e6285cd31f1343e540d4474fdf29b0fa29caec7"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"rpetrusha"}}