From 2f91cbefebb537819abc851a3c17a08c691055f4 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期三, 27 七月 2022 20:55:31 +0800
Subject: [PATCH] 大岛车间综合看板接口

---
 VueWebApi/obj/Release/VueWebApi.pdb                                                                                       |    0 
 packages/System.Management.6.0.0/buildTransitive/netcoreapp2.0/System.Management.targets                                  |    6 
 VueWebApi/bin/Microsoft.Net.Http.Headers.xml                                                                              |  454 
 packages/System.Management.6.0.0/lib/net6.0/System.Management.xml                                                         |  245 
 packages/System.Management.6.0.0/lib/netstandard2.0/System.Management.xml                                                 |  300 
 .vs/VueWebApi/v16/.suo                                                                                                    |    0 
 VueWebApi/obj/Release/Package/PackageTmp/Excel/用户清单.xls                                                                   |    0 
 VueWebApi/bin/System.CodeDom.xml                                                                                          |  129 
 VueWebApi/VueWebApi.csproj                                                                                                |   48 
 VueWebApi/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache                                                      |    0 
 VueWebApi/obj/Release/Package/PackageTmp/bin/VueWebApi.pdb                                                                |    0 
 VueWebApi/bin/Microsoft.Extensions.Primitives.xml                                                                         |  484 
 packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/.signature.p7s                                                       |    0 
 VueWebApi/bin/VueWebApi.pdb                                                                                               |    0 
 packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/Microsoft.AspNetCore.Http.Abstractions.2.2.0.nupkg                  |    0 
 VueWebApi/obj/Release/Package/PackageTmp/Excel/往来单位.xls                                                                   |    0 
 VueWebApi/obj/Release/VueWebApi.csproj.CoreCompileInputs.cache                                                            |    2 
 packages/System.Text.Encodings.Web.4.5.0/lib/netstandard1.0/System.Text.Encodings.Web.xml                                 |  866 +
 packages/System.Text.Encodings.Web.4.5.0/lib/netstandard2.0/System.Text.Encodings.Web.xml                                 |  866 +
 packages/System.Text.Encodings.Web.4.5.0/System.Text.Encodings.Web.4.5.0.nupkg                                            |    0 
 VueWebApi/bin/VueWebApi.xml                                                                                               |   10 
 packages/System.CodeDom.6.0.0/buildTransitive/netcoreapp2.0/System.CodeDom.targets                                        |    6 
 packages/System.Management.6.0.0/useSharedDesignerContext.txt                                                             |    0 
 packages/Microsoft.AspNetCore.Http.Features.2.2.0/.signature.p7s                                                          |    0 
 VueWebApi/packages.config                                                                                                 |    9 
 VueWebApi/grf/Rework.frx                                                                                                  |   89 
 packages/System.Management.6.0.0/.signature.p7s                                                                           |    0 
 packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0.nupkg                    |    0 
 packages/Microsoft.Extensions.Primitives.2.2.0/.signature.p7s                                                             |    0 
 packages/System.Text.Encodings.Web.4.5.0/THIRD-PARTY-NOTICES.TXT                                                          |  309 
 VueWebApi/obj/Release/TransformWebConfig/original/Web.config                                                              |   14 
 packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.xml       | 1555 +
 VueWebApi/bin/Microsoft.AspNetCore.Http.Features.xml                                                                      |  869 +
 VueWebApi/obj/Release/Package/PackageTmp/bin/FastReport.Service.dll.config                                                |   72 
 VueWebApi/DDKanBanModel/ShopTopLeft.cs                                                                                    |   35 
 packages/Microsoft.Net.Http.Headers.2.2.0/lib/netstandard2.0/Microsoft.Net.Http.Headers.xml                               |  454 
 packages/System.Text.Encodings.Web.4.5.0/useSharedDesignerContext.txt                                                     |    0 
 packages/System.Management.6.0.0/Icon.png                                                                                 |    0 
 VueWebApi/obj/Release/Package/PackageTmp/Web.config                                                                       |   12 
 packages/System.CodeDom.6.0.0/buildTransitive/netcoreapp3.1/_._                                                           |    0 
 VueWebApi/DLL/BLL/GridReportBLL.cs                                                                                        |    7 
 VueWebApi/Excel/往来单位.xls                                                                                                  |    0 
 packages/System.Management.6.0.0/buildTransitive/netcoreapp3.1/_._                                                        |    0 
 VueWebApi/Logs/2022-07-26.TXT                                                                                             |  459 
 VueWebApi/DLL/DAL/ExcelCheckDAL.cs                                                                                        |   31 
 packages/System.CodeDom.6.0.0/System.CodeDom.6.0.0.nupkg                                                                  |    0 
 packages/System.Management.6.0.0/THIRD-PARTY-NOTICES.TXT                                                                  |  939 +
 VueWebApi/obj/Release/VueWebApi.csproj.FileListAbsolute.txt                                                               |  123 
 VueWebApi/Controllers/ImportExcelController.cs                                                                            |   11 
 packages/System.Management.6.0.0/runtimes/win/lib/net6.0/System.Management.xml                                            | 9700 ++++++++++++
 VueWebApi/bin/Microsoft.AspNetCore.Routing.Abstractions.xml                                                               |  847 +
 packages/Microsoft.Net.Http.Headers.2.2.0/Microsoft.Net.Http.Headers.2.2.0.nupkg                                          |    0 
 packages/System.Management.6.0.0/LICENSE.TXT                                                                              |   23 
 VueWebApi/obj/Release/Package/PackageTmp/Excel/角色清单.xls                                                                   |    0 
 packages/System.CodeDom.6.0.0/LICENSE.TXT                                                                                 |   23 
 packages/System.Management.6.0.0/lib/net461/_._                                                                           |    0 
 VueWebApi/DLL/DAL/KanBanManagerentDAL.cs                                                                                  |  272 
 packages/Microsoft.Extensions.Primitives.2.2.0/Microsoft.Extensions.Primitives.2.2.0.nupkg                                |    0 
 VueWebApi/DLL/DAL/GridReportDAL.cs                                                                                        |   38 
 VueWebApi/obj/Release/Package/PackageTmp/bin/VueWebApi.xml                                                                | 2469 +++
 packages/System.CodeDom.6.0.0/.signature.p7s                                                                              |    0 
 packages/System.Text.Encodings.Web.4.5.0/LICENSE.TXT                                                                      |   23 
 packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/.signature.p7s                                                   |    0 
 VueWebApi/Tools/PrintMessage.cs                                                                                           |   24 
 VueWebApi/Logs/2022-07-22.TXT                                                                                             |    0 
 packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.xml |  847 +
 packages/Microsoft.Net.Http.Headers.2.2.0/.signature.p7s                                                                  |    0 
 VueWebApi/Controllers/KanBanManagerentController.cs                                                                       |   89 
 packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/.signature.p7s                                                      |    0 
 VueWebApi/Tools/ImportExcel.cs                                                                                            |   20 
 VueWebApi/Web.config                                                                                                      |   14 
 packages/System.CodeDom.6.0.0/lib/netstandard2.0/System.CodeDom.xml                                                       |  160 
 packages/System.Management.6.0.0/lib/netcoreapp3.1/System.Management.xml                                                  |  300 
 packages/System.CodeDom.6.0.0/THIRD-PARTY-NOTICES.TXT                                                                     |  939 +
 packages/System.Management.6.0.0/runtimes/win/lib/netcoreapp3.1/System.Management.xml                                     | 9755 ++++++++++++
 packages/System.CodeDom.6.0.0/lib/net461/System.CodeDom.xml                                                               |  129 
 packages/System.Management.6.0.0/System.Management.6.0.0.nupkg                                                            |    0 
 packages/System.CodeDom.6.0.0/lib/net6.0/System.CodeDom.xml                                                               |  105 
 VueWebApi/Excel/仓库库位清单.xls                                                                                                |    0 
 packages/Microsoft.Extensions.Primitives.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Primitives.xml                     |  484 
 packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Abstractions.xml         | 4528 +++++
 packages/Microsoft.AspNetCore.Http.Features.2.2.0/Microsoft.AspNetCore.Http.Features.2.2.0.nupkg                          |    0 
 VueWebApi/obj/Release/Package/PackageTmp/Excel/仓库库位清单.xls                                                                 |    0 
 VueWebApi/bin/Microsoft.AspNetCore.Mvc.Abstractions.xml                                                                   | 4528 +++++
 packages/System.CodeDom.6.0.0/Icon.png                                                                                    |    0 
 VueWebApi/DLL/BLL/KanBanManagerentBLL.cs                                                                                  |   49 
 VueWebApi/Tools/ImportExcelData.cs                                                                                        |  756 
 VueWebApi/bin/System.Text.Encodings.Web.xml                                                                               |  866 +
 VueWebApi/InExcel/1/角色清单.xls                                                                                              |    0 
 VueWebApi/VueWebApi.csproj.user                                                                                           |    2 
 VueWebApi/bin/Microsoft.AspNetCore.Http.Abstractions.xml                                                                  | 1555 +
 VueWebApi/bin/FastReport.Service.dll.config                                                                               |   72 
 packages/Microsoft.AspNetCore.Http.Features.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.xml               |  869 +
 VueWebApi/obj/Release/Package/PackageTmp/grf/Rework.frx                                                                   |   89 
 VueWebApi/Tools/ExcelList.cs                                                                                              |    3 
 VueWebApi/Excel/角色清单.xls                                                                                                  |    0 
 packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/Microsoft.AspNetCore.Routing.Abstractions.2.2.0.nupkg            |    0 
 VueWebApi/bin/VueWebApi.dll.config                                                                                        |   14 
 VueWebApi/obj/Release/TransformWebConfig/transformed/Web.config                                                           |   12 
 VueWebApi/Controllers/GridReportController.cs                                                                             |   53 
 packages/System.CodeDom.6.0.0/useSharedDesignerContext.txt                                                                |    0 
 VueWebApi/Logs/2022-07-25.TXT                                                                                             |    0 
 VueWebApi/Properties/PublishProfiles/FolderProfile.pubxml.user                                                            |  339 
 packages/System.Text.Encodings.Web.4.5.0/version.txt                                                                      |    1 
 /dev/null                                                                                                                 |    0 
 packages/System.Text.Encodings.Web.4.5.0/.signature.p7s                                                                   |    0 
 106 files changed, 48,037 insertions(+), 364 deletions(-)

diff --git a/.vs/VueWebApi/v16/.suo b/.vs/VueWebApi/v16/.suo
index 6d7ec5b..e8f1db5 100644
--- a/.vs/VueWebApi/v16/.suo
+++ b/.vs/VueWebApi/v16/.suo
Binary files differ
diff --git a/VueWebApi/Controllers/GridReportController.cs b/VueWebApi/Controllers/GridReportController.cs
index f98a83b..f67df8d 100644
--- a/VueWebApi/Controllers/GridReportController.cs
+++ b/VueWebApi/Controllers/GridReportController.cs
@@ -1,10 +1,15 @@
-锘縰sing Newtonsoft.Json.Linq;
+锘縰sing Dapper;
+using FastReport;
+using Microsoft.AspNetCore.Mvc;
+using Newtonsoft.Json.Linq;
 using System;
 using System.Collections.Generic;
 using System.Data;
 using System.Linq;
+using System.Management;
 using System.Net;
 using System.Net.Http;
+using System.Threading.Tasks;
 using System.Web;
 using System.Web.Http;
 using VueWebApi.DLL.BLL;
@@ -52,5 +57,51 @@
             return TJson.toJson(mes);
         }
         #endregion
+
+        #region[FastReport鎵撳嵃]
+        [Route(template: "PrintOrder")]
+        [HttpPost]
+        [HiddenApi]
+        public void PrintOrder([FromBody] JObject obj)
+        {
+            try
+            {
+                string username = obj["username"].ToString();    //鐧诲綍鐢ㄦ埛
+                string mesordercode = obj["mesordercode"].ToString();    //宸ュ崟鐘舵�佺爜
+                PrintMessage dt = GridReportBLL.MesOrderFastReportPrintSearch(username, mesordercode);
+                if (dt.data == null)
+                {
+                    throw new Exception(dt.Message);
+                }
+                Report report = new Report();
+                //report.PrintSettings.Printer = ((String)report.GetColumnValue("Microsoft XPS Document Writer"));
+                //榛樿涓嶆樉绀烘墦鍗版満閫夋嫨椤甸潰
+                //string filename = this.Server.MapPath("~/bin/YLDH.frx");//璋冪敤鎶ヨ〃 
+                //report.PrintSettings.Printer = ((String)report.GetColumnValue("Microsoft XPS Document Writer"));
+                //report.PrintSettings.Printer = ((String)report.GetColumnValue("192.168.1.109/Canon G2010 series"));
+                report.PrintSettings.Printer = ((String)report.GetColumnValue(""));  //鑾峰彇鏈湴榛樿鎵撳嵃鏈�
+                string reportLabel = System.Web.HttpContext.Current.Server.MapPath("/grf/Rework.frx");
+                LogHelper.WriteLogData("鏂囦欢鍦板潃锛�"+ reportLabel);
+                //FastReport.EnvironmentSettings eSet = new EnvironmentSettings();
+                //eSet.ReportSettings.ShowProgress = false;
+                report.Load(reportLabel);
+                report.PrintSettings.ShowDialog = true;
+                //report.Load(filename);
+                dt.data.TableName = "Table1"; // 涓�瀹氳璁剧疆琛ㄥ悕绉�
+                DataSet ds = new DataSet();
+                ds.Tables.Add(dt.data);
+                report.RegisterData(ds);
+                report.Print();
+                report.Dispose();
+                LogHelper.WriteLogData("搴忓垪鍖栭�氳繃5");
+            }
+            catch (Exception e)
+            {
+
+                throw;
+            }
+           
+        }
+        #endregion
     }
 }
\ No newline at end of file
diff --git a/VueWebApi/Controllers/ImportExcelController.cs b/VueWebApi/Controllers/ImportExcelController.cs
index 546bdaf..87c3f42 100644
--- a/VueWebApi/Controllers/ImportExcelController.cs
+++ b/VueWebApi/Controllers/ImportExcelController.cs
@@ -49,8 +49,8 @@
         /// <summary>
         /// Excel瀵煎叆鏂囦欢涓婁紶銆佹ā鏉块獙璇併�佹暟鎹噺銆侀獙璇�
         /// </summary>
-        /// <param name="files">涓婁紶鏂囦欢</param>
         /// <param name="FileCode">鏂囦欢缂栫爜</param>
+        /// <param name="files">涓婁紶鏂囦欢</param>
         /// <returns></returns>
         [Route(template: "ExcelModelCheck")]
         [HttpPost]
@@ -114,6 +114,9 @@
                 else if (Directory.Exists(path) == false)//濡傛灉涓嶅瓨鍦ㄥ氨鍒涘缓file鏂囦欢澶�
                 {
                     Directory.CreateDirectory(path); //娣诲姞鏂囦欢澶�
+                    files.SaveAs(savePath);    //灏嗛�夋嫨鐨勬枃浠朵繚瀛樺埌鎸囧畾鏂囦欢澶逛笅
+                    mes.code = "200";
+                    mes.Message = "鏂囦欢涓婁紶鎴愬姛锛�";
                 }
                 else if (Directory.Exists(savePath) == true)  //濡傛灉瀛樺湪閲嶅悕鏂囦欢灏辨彁绀�
                 {
@@ -264,7 +267,8 @@
         /// <param name="FileCode">鏂囦欢缂栫爜</param>
         /// <param name="FileName">鏂囦欢鍚嶇О</param>
         /// <returns></returns>
-        [HiddenApi]
+        [Route(template: "ExcelCheckData")]
+        [HttpPost]
         public HttpResponseMessage ExcelCheckData(string FileCode = null, string FileName = null)
         {
             string message = "";
@@ -296,7 +300,8 @@
         /// <param name="FileCode">鏂囦欢缂栫爜</param>
         /// <param name="FileName">鏂囦欢鍚嶇О</param>
         /// <returns></returns>
-        [HiddenApi]
+        [Route(template: "ExcelImportSubmit")]
+        [HttpPost]
         public HttpResponseMessage ExcelImportSubmit(string FileCode = null, string FileName = null)
         {
             var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //鐧诲綍鐢ㄦ埛鍚� 
diff --git a/VueWebApi/Controllers/KanBanManagerentController.cs b/VueWebApi/Controllers/KanBanManagerentController.cs
new file mode 100644
index 0000000..1209c38
--- /dev/null
+++ b/VueWebApi/Controllers/KanBanManagerentController.cs
@@ -0,0 +1,89 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Net.Http;
+using System.Web.Http;
+using VueWebApi.DLL.BLL;
+using VueWebApi.Models;
+using VueWebApi.Tools;
+
+namespace VueWebApi.Controllers
+{
+    [RoutePrefix(prefix: "api/KanBanManagerent")]
+    [ControllerGroup("鐢靛瓙鐪嬫澘", "鍦ㄧ嚎鎺ュ彛")]
+    public class KanBanManagerentController : ApiController
+    {
+        //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
+        ToMessage mes = new ToMessage();
+        RedisHelper redis = new RedisHelper();
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,鐢熶骇杞﹂棿鏌ユ壘浜х嚎鎺ュ彛]
+        /// <summary>
+        /// 澶у矝杞﹂棿缁煎悎鐪嬫澘,鐢熶骇杞﹂棿鏌ユ壘浜х嚎鎺ュ彛
+        /// </summary>
+        /// <param name="shopcode">杞﹂棿缂栫爜</param>
+        /// <returns></returns>
+        [Route(template: "ShopSearchLine")]
+        [HttpGet]
+        public HttpResponseMessage ShopSearchLine(string shopcode)
+        {
+            mes = KanBanManagerentBLL.ShopSearchLine(shopcode);
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,宸︿笂浜х嚎鍔犲伐浠诲姟鎺ュ彛]
+        /// <summary>
+        /// 澶у矝杞﹂棿缁煎悎鐪嬫澘,宸︿笂浜х嚎鍔犲伐浠诲姟鎺ュ彛
+        /// </summary>
+        /// <param name="json">鎻愪氦鏁版嵁(鍙傝�冨伐搴忓畾涔夊叧鑱斿伐浣滅珯鎻愪氦)</param>
+        /// <returns></returns>
+        [Route(template: "LineSearchTopLeftData")]
+        [HttpGet]
+        public HttpResponseMessage LineSearchTopLeftData(List<ObjectData> json)
+        {
+            mes = KanBanManagerentBLL.LineSearchTopLeftData(json);
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,宸︿笅鍒楄〃鎺ュ彛]
+        /// <summary>
+        /// 澶у矝杞﹂棿缁煎悎鐪嬫澘,宸︿笅鍒楄〃鎺ュ彛
+        /// </summary>
+        /// <returns></returns>
+        [Route(template: "LineSearchBottomLeftData")]
+        [HttpGet]
+        public HttpResponseMessage LineSearchBottomLeftData()
+        {
+            mes = KanBanManagerentBLL.LineSearchBottomLeftData();
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,鍙充笂top鎺掕鎺ュ彛]
+        /// <summary>
+        /// 澶у矝杞﹂棿缁煎悎鐪嬫澘,鍙充笂top鎺掕鎺ュ彛
+        /// </summary>
+        /// <returns></returns>
+        [Route(template: "LineSearchTopRightData")]
+        [HttpGet]
+        public HttpResponseMessage LineSearchTopRightData()
+        {
+            mes = KanBanManagerentBLL.LineSearchTopRightData();
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,鍙充笅top鎺掕鎺ュ彛]
+        [Route(template: "LineSearchBottomRightData")]
+        [HttpGet]
+        public HttpResponseMessage LineSearchBottomRightData()
+        {
+            mes = KanBanManagerentBLL.LineSearchBottomRightData();
+            return TJson.toJson(mes);
+        }
+        #endregion
+    }
+}
diff --git a/VueWebApi/DDKanBanModel/ShopTopLeft.cs b/VueWebApi/DDKanBanModel/ShopTopLeft.cs
new file mode 100644
index 0000000..e67535a
--- /dev/null
+++ b/VueWebApi/DDKanBanModel/ShopTopLeft.cs
@@ -0,0 +1,35 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+
+namespace VueWebApi.DDKanBanModel
+{
+    public class ShopTopLeft
+    {
+        public string linecode { get; set; }
+        public string linename { get; set; }
+        public string lineworkcont { get; set; }
+        public List<TreeOne> children { get; set; }
+    }
+    public class TreeOne
+    {
+        public string saleordercode { set; get; }
+        public string workcode { set; get; }
+        public string partnumber { set; get; }
+        public string partname { set; get; }
+        public string partspec { set; get; }
+        public string uom { get; set; }
+        public string qty { get; set; }  
+        public List<TreeTwo> children { get; set; }
+    }
+    public class TreeTwo 
+    {
+        public string stepseq { set; get; }
+        public string stepcode { set; get; }
+        public string stepname { set; get; }
+        public string planqty { set; get; }
+        public string goodqty { set; get; }
+        public string ngqty { set; get; }
+    }
+}
\ No newline at end of file
diff --git a/VueWebApi/DLL/BLL/GridReportBLL.cs b/VueWebApi/DLL/BLL/GridReportBLL.cs
index cc8098a..71885d5 100644
--- a/VueWebApi/DLL/BLL/GridReportBLL.cs
+++ b/VueWebApi/DLL/BLL/GridReportBLL.cs
@@ -16,5 +16,12 @@
             return GridReportDAL.MesOrderPrintSearch(username,mesordercode);
         }
         #endregion
+
+        #region[FastReport鎵撳嵃]
+        public static PrintMessage MesOrderFastReportPrintSearch(string username, string mesordercode)
+        {
+            return GridReportDAL.MesOrderFastReportPrintSearch(username, mesordercode);
+        }
+        #endregion
     }
 }
\ No newline at end of file
diff --git a/VueWebApi/DLL/BLL/KanBanManagerentBLL.cs b/VueWebApi/DLL/BLL/KanBanManagerentBLL.cs
new file mode 100644
index 0000000..97863ec
--- /dev/null
+++ b/VueWebApi/DLL/BLL/KanBanManagerentBLL.cs
@@ -0,0 +1,49 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using VueWebApi.DLL.DAL;
+using VueWebApi.Models;
+using VueWebApi.Tools;
+
+namespace VueWebApi.DLL.BLL
+{
+    public class KanBanManagerentBLL
+    {
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,鐢熶骇杞﹂棿鏌ユ壘浜х嚎鎺ュ彛]
+        public static ToMessage ShopSearchLine(string shopcode)
+        {
+            return KanBanManagerentDAL.ShopSearchLine(shopcode);
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,宸︿笂浜х嚎鍔犲伐浠诲姟鎺ュ彛]
+        public static ToMessage LineSearchTopLeftData(List<ObjectData> json)
+        {
+            return KanBanManagerentDAL.LineSearchTopLeftData(json);
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,宸︿笅鍒楄〃鎺ュ彛]
+        public static ToMessage LineSearchBottomLeftData()
+        {
+            return KanBanManagerentDAL.LineSearchBottomLeftData();
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,鍙充笂top鎺掕鎺ュ彛]
+        public static ToMessage LineSearchTopRightData()
+        {
+            return KanBanManagerentDAL.LineSearchTopRightData();
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,鍙充笅top鎺掕鎺ュ彛]
+        public static ToMessage LineSearchBottomRightData()
+        {
+            return KanBanManagerentDAL.LineSearchBottomRightData();
+        }
+        #endregion
+    }
+}
\ No newline at end of file
diff --git a/VueWebApi/DLL/DAL/ExcelCheckDAL.cs b/VueWebApi/DLL/DAL/ExcelCheckDAL.cs
index 88d2303..5f90ffb 100644
--- a/VueWebApi/DLL/DAL/ExcelCheckDAL.cs
+++ b/VueWebApi/DLL/DAL/ExcelCheckDAL.cs
@@ -31,11 +31,8 @@
                 case "4"://寰�鏉ュ崟浣�
                     Message = ImportExcelData.Four(savePath, out StuCode);
                     break;
-                case "6.1"://浠撳簱瀹氫箟
+                case "6"://浠撳簱銆佸簱浣嶅畾涔�
                     Message = ImportExcelData.SixOne(savePath, out StuCode);
-                    break;
-                case "6.2"://搴撲綅瀹氫箟
-                    Message = ImportExcelData.SixTwo(savePath, out StuCode);
                     break;
                 case "7"://瀹瑰櫒瀹氫箟
                     Message = ImportExcelData.Seven(savePath, out StuCode);
@@ -114,20 +111,11 @@
                 case "3"://宸ヤ綅娓呭崟
                     list = ImportExcelData.ThreeData(savePath, out stuCode, out message, out count);
                     break;
-                case "4"://渚涙柟娓呭崟
+                case "4"://寰�鏉ュ崟浣嶆竻鍗�
                     list = ImportExcelData.FourData(savePath, out stuCode, out message, out count);
                     break;
-                case "5"://瀹㈡埛娓呭崟
-                    list = ImportExcelData.FiveData(savePath, out stuCode, out message, out count);
-                    break;
-                case "6.1"://浠撳簱瀹氫箟
+                case "6"://浠撳簱銆佸簱浣嶅畾涔�
                     list = ImportExcelData.SixOneData(savePath, out stuCode, out message, out count);
-                    break;
-                case "6.2"://搴撳尯瀹氫箟
-                    list = ImportExcelData.SixTwoData(savePath, out stuCode, out message, out count);
-                    break;
-                case "6.3"://搴撲綅瀹氫箟
-                    list = ImportExcelData.SixThreeData(savePath, out stuCode, out message, out count);
                     break;
                 case "7"://瀹瑰櫒瀹氫箟
                     list = ImportExcelData.SevenData(savePath, out stuCode, out message, out count);
@@ -197,20 +185,11 @@
                 case "3"://宸ヤ綅娓呭崟
                     Message = ImportExcelData.ThreeSubmit(savePath, User, out StuCode);
                     break;
-                case "4"://渚涙柟娓呭崟
+                case "4"://寰�鏉ュ崟浣嶆竻鍗�
                     Message = ImportExcelData.FourSubmit(savePath, User, out StuCode);
                     break;
-                case "5"://瀹㈡埛娓呭崟
-                    Message = ImportExcelData.FiveSubmit(savePath, User, out StuCode);
-                    break;
-                case "6.1"://浠撳簱瀹氫箟
+                case "6"://浠撳簱銆佸簱浣嶅畾涔�
                     Message = ImportExcelData.SixOneSubmit(savePath, User, out StuCode);
-                    break;
-                case "6.2"://搴撳尯瀹氫箟
-                    Message = ImportExcelData.SixTwoSubmit(savePath, User, out StuCode);
-                    break;
-                case "6.3"://搴撲綅瀹氫箟
-                    Message = ImportExcelData.SixThreeSubmit(savePath, User, out StuCode);
                     break;
                 case "7"://瀹瑰櫒瀹氫箟
                     Message = ImportExcelData.SevenSubmit(savePath, User, out StuCode);
diff --git a/VueWebApi/DLL/DAL/GridReportDAL.cs b/VueWebApi/DLL/DAL/GridReportDAL.cs
index 1e1df48..6621b57 100644
--- a/VueWebApi/DLL/DAL/GridReportDAL.cs
+++ b/VueWebApi/DLL/DAL/GridReportDAL.cs
@@ -17,6 +17,7 @@
         public static GridMessage gidmes = new GridMessage(); //瀹氫箟鍏ㄥ眬杩斿洖淇℃伅瀵硅薄
         public static string strProcName = ""; //瀹氫箟鍏ㄥ眬sql鍙橀噺
         public static List<SqlParameter> listStr = new List<SqlParameter>(); //瀹氫箟鍏ㄥ眬鍙傛暟闆嗗悎
+
         public static SqlParameter[] parameters; //瀹氫箟鍏ㄥ眬SqlParameter鍙傛暟鏁扮粍
 
 
@@ -58,5 +59,42 @@
             return mes;
         }
         #endregion
+
+        #region[FastReport鎵撳嵃]
+        public static PrintMessage MesOrderFastReportPrintSearch(string username, string mesordercode)
+        {
+            string sql = "";
+            var dynamicParams = new DynamicParameters();
+            PrintMessage ms = new PrintMessage();
+            //鑾峰彇宸ュ崟宸ュ簭浠诲姟鏁版嵁
+            sql = @"select A.seq,A.wo_code,P.partcode,P.partname,P.partspec,R.name as routename,M.plan_qty as orderqty,@username as lm_user,@createdate as lm_date,
+                        B.stepcode,B.stepname,A.plan_qty,(case when A.good_qty=0 then '' end) as good_qty,(case when A.ng_qty=0 then '' end) as ng_qty,A.wo_code+';'+B.stepcode as stepqrcode    
+                        from TK_Wrk_Step A
+                        left join TK_Wrk_Man M on A.wo_code=M.wo_code
+                        left join TFlw_Rout R on A.route_code=R.code
+                        left join TMateriel_Info P on M.materiel_code=P.partcode
+                        left join TStep B on A.step_code=B.stepcode
+                        where A.wo_code=@mesordercode ";
+            dynamicParams.Add("@username", username);
+            dynamicParams.Add("@createdate", DateTime.Now.ToString());
+            dynamicParams.Add("@mesordercode", mesordercode);
+            DataTable data = DapperHelper.selectdata(sql, dynamicParams);
+            if (data.Rows.Count > 0)
+            {
+                ms.code = "200";
+                ms.Message = "鏌ヨ鎴愬姛锛�";
+                ms.data = data;
+            }
+            else
+            {
+                ms.code = "300";
+                ms.Message = "鏃犵敓浜т换鍔℃暟鎹紒";
+                ms.data = null;
+            }
+
+            return ms;
+        }
+        #endregion
+
     }
 }
\ No newline at end of file
diff --git a/VueWebApi/DLL/DAL/KanBanManagerentDAL.cs b/VueWebApi/DLL/DAL/KanBanManagerentDAL.cs
new file mode 100644
index 0000000..d44eaaa
--- /dev/null
+++ b/VueWebApi/DLL/DAL/KanBanManagerentDAL.cs
@@ -0,0 +1,272 @@
+锘縰sing Dapper;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Data.SqlClient;
+using System.Linq;
+using System.Web;
+using VueWebApi.DDKanBanModel;
+using VueWebApi.Models;
+using VueWebApi.Tools;
+
+namespace VueWebApi.DLL.DAL
+{
+    public class KanBanManagerentDAL
+    {
+        public static DataTable dt;    //瀹氫箟鍏ㄥ眬鍙橀噺dt
+        public static bool res;       //瀹氫箟鍏ㄥ眬鍙橀噺dt
+        public static ToMessage mes = new ToMessage(); //瀹氫箟鍏ㄥ眬杩斿洖淇℃伅瀵硅薄
+        public static string strProcName = ""; //瀹氫箟鍏ㄥ眬sql鍙橀噺
+        public static List<SqlParameter> listStr = new List<SqlParameter>(); //瀹氫箟鍏ㄥ眬鍙傛暟闆嗗悎
+        public static SqlParameter[] parameters; //瀹氫箟鍏ㄥ眬SqlParameter鍙傛暟鏁扮粍
+
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,鐢熶骇杞﹂棿鏌ユ壘浜х嚎鎺ュ彛]
+        public static ToMessage ShopSearchLine(string shopcode)
+        {
+            string sql = "";
+            string search = "";
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                if (shopcode != "" && shopcode != null) //杞﹂棿缂栫爜涓嶄负绌�
+                {
+                    search += "where wksp_code=@shopcode ";
+                    dynamicParams.Add("@shopcode", shopcode);
+                }
+                //杞﹂棿缂栫爜鑾峰彇浜х嚎淇℃伅
+                sql = @"select code ,name from TEqpInfo " + search;
+                var data = DapperHelper.selectdata(sql, dynamicParams);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.data = data;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,宸︿笂浜х嚎鍔犲伐浠诲姟鎺ュ彛]
+        public static ToMessage LineSearchTopLeftData(List<ObjectData> json)
+        {
+            string sql = "";
+            string search = "";
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                if (json == null || json.Count <= 0) //浜х嚎缂栫爜涓嶄负绌�
+                {
+                    List<ShopTopLeft> list = new List<ShopTopLeft>();
+                    //鑾峰彇浜х嚎淇℃伅
+                    for (int i = 0; i < json.Count; i++)
+                    {
+                        ShopTopLeft line = new ShopTopLeft();
+                        line.linecode = json[i].code;
+                        line.linename = json[i].name;
+                        //鑾峰彇浜х嚎涓嬪紑宸ユ�诲崟閲�
+                        sql = @"select COUNT(*) cont  from(
+                                select distinct B.rout_code,M.wo_code  from TFlw_Rteqp  A
+                                inner join TFlw_Rtdt B on A.step_code=B.step_code
+                                inner join TK_Wrk_Man M on B.rout_code=M.route_code
+                                where M.status<>'CLOSED'  and M.is_delete<>'1' and A.eqp_code=@linecode) as A";
+                        dynamicParams.Add("@linecode", json[i].code);
+                        var data = DapperHelper.selectdata(sql, dynamicParams);
+                        if (data.Rows.Count > 0 && decimal.Parse(data.Rows[0]["CONT"].ToString())>0)
+                        {
+                            line.lineworkcont=data.Rows[0]["CONT"].ToString(); //浜х嚎鎬诲崟閲�
+                            line.children = new List<TreeOne>();
+                            //鏌ヨ浜х嚎涓嬪伐鍗曚俊鎭�
+                            sql = @"select distinct  E.saleOrderCode,P.wo_code,P.plan_qty,M.partcode,M.partname,M.partspec,T.name as uomname  from TFlw_Rteqp  A
+                                    inner join TFlw_Rtdt B on A.step_code=B.step_code
+                                    inner join TK_Wrk_Man P on B.rout_code=P.route_code
+                                    left join TMateriel_Info M on P.materiel_code=M.partcode
+                                    left join TUom T on M.uom_code=T.code 
+                                    left join TKimp_Ewo E on P.m_po=E.wo
+                                    where P.status<>'CLOSED' and P.status<>'NEW'  and P.is_delete<>'1' and A.eqp_code=@linecode";
+                            dynamicParams.Add("@linecode", json[i].code);
+                            var data0 = DapperHelper.selectdata(sql, dynamicParams);
+                            if (data0.Rows.Count > 0)
+                            {
+                                for (int j = 0; j < data0.Rows.Count; j++)
+                                {
+                                    string saleOrderCode = data0.Rows[j]["SALEORDERCODE"].ToString();//閿�鍞鍗曞彿
+                                    string wo_code = data0.Rows[j]["WO_CODE"].ToString();//宸ュ崟鍙�
+                                    string plan_qty = data0.Rows[j]["PLAN_QTY"].ToString();//浠诲姟鏁伴噺
+                                    string partcode = data0.Rows[j]["PARTCODE"].ToString();//浜у搧缂栫爜
+                                    string partname = data0.Rows[j]["PARTNAME"].ToString();//浜у搧鍚嶇О
+                                    string partspec = data0.Rows[j]["PARTSPEC"].ToString();//浜у搧瑙勬牸
+                                    string uomname = data0.Rows[j]["UOMNAME"].ToString();//鍗曚綅鍚嶇О
+                                    TreeOne lineone = new TreeOne();
+                                    lineone.saleordercode = saleOrderCode;
+                                    lineone.workcode = wo_code;
+                                    lineone.qty = plan_qty;
+                                    lineone.partnumber = partcode;
+                                    lineone.partname = partname;
+                                    lineone.partspec = partspec;
+                                    lineone.uom = uomname;
+                                    line.children.Add(lineone);
+                                    lineone.children = new List<TreeTwo>();
+
+                                    //鏌ユ柊宸ュ崟涓嬪伐搴忎俊鎭�
+                                    sql = @"select A.seq,T.stepcode,T.stepname,A.plan_qty,A.good_qty,A.ng_qty  
+                                            from TK_Wrk_Step A
+                                            left join TStep T on A.step_code=T.stepcode
+                                            where A.wo_code=@wo_code";
+                                    dynamicParams.Add("@linecode", wo_code);
+                                    var data1 = DapperHelper.selectdata(sql, dynamicParams);
+                                    for (int k = 0; k < data1.Rows.Count; k++)
+                                    {
+                                        string stepseq= data1.Rows[k]["SEQ"].ToString();//宸ュ簭搴忓彿
+                                        string stepcode = data1.Rows[k]["STEPCODE"].ToString();//宸ュ簭缂栫爜
+                                        string stepname = data1.Rows[k]["STEPNAME"].ToString();//宸ュ簭鍚嶇О
+                                        string planqty = data1.Rows[k]["PLAN_QTY"].ToString();//浠诲姟鏁伴噺
+                                        string good_qty = data1.Rows[k]["GOOD_QTY"].ToString();//鎶ュ伐鏁伴噺
+                                        string ng_qty = data1.Rows[k]["NG_QTY"].ToString();//涓嶈壇鏁伴噺
+                                        TreeTwo linetwo = new TreeTwo();
+                                        linetwo.stepseq = stepseq;
+                                        linetwo.stepcode = stepcode;
+                                        linetwo.stepname = stepname;
+                                        linetwo.planqty = planqty;
+                                        linetwo.goodqty = good_qty;
+                                        linetwo.ngqty = ng_qty;
+                                        lineone.children.Add(linetwo);
+                                    }
+                                }
+                                list.Add(line);
+                            }
+                            else 
+                            {
+                                mes.code = "300";
+                                mes.Message = "褰撳墠浜х嚎涓嬫棤鍦ㄧ敓浜т换鍔�!";
+                                mes.data = null;
+                                return mes;
+                            }
+                        }
+                        else 
+                        {
+                            mes.code = "300";
+                            mes.Message = "褰撳墠浜х嚎涓嬫棤鍦ㄧ敓浜т换鍔�!";
+                            mes.data = null;
+                            return mes;
+                        }
+                    }
+                }
+                else 
+                {
+                    mes.code = "300";
+                    mes.Message = "浜х嚎鍙傛暟涓嶈兘涓虹┖!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion\
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,宸︿笅鍒楄〃鎺ュ彛]
+        public static ToMessage LineSearchBottomLeftData()
+        {
+            string sql = "";
+            try
+            {
+                //鑾峰彇浠诲姟鍒楄〃淇℃伅
+                sql = @"select A.*,ROW_NUMBER() OVER(ORDER BY (case when A.warning<=2 then A.planenddate end) asc ,A.planstartdate asc) AS RowNum from(
+                         select  A.status,A.lm_date,E.saleOrderCode,A.wo_code,M.partcode,M.partname,M.partspec,U.name,
+                         A.plan_qty,B.good_qty,B.ng_qty,E.planstartdate,E.planenddate, datediff(day,getdate(),E.planenddate) warning
+                         from TK_Wrk_Man A 
+                         inner join TK_Wrk_Step B on A.wo_code=B.wo_code
+                         inner join TKimp_Ewo E on A.m_po=E.wo
+                         left  join TMateriel_Info M on A.materiel_code=M.partcode
+                         left  join TUom U on M.uom_code=U.code
+                         where A.status<>'CLOSED' and A.is_delete<>'1' and B.isend='Y'
+                         )as A ";
+                var data = DapperHelper.selecttable(sql);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.data = data;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,鍙充笂top鎺掕鎺ュ彛]
+        public static ToMessage LineSearchTopRightData()
+        {
+            string sql = "";
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                //鑾峰彇浜у搧鎶ュ伐top5淇℃伅
+                sql = @"select top 5 A.partname,isnull(sum(A.good_qty),0) as good_qty from(
+                           select M.partname,A.good_qty  from TK_Wrk_Record A
+                           inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
+                           inner join TMateriel_Info M on A.materiel_code=M.partcode
+                           where A.style='B' and S.isend='Y'
+                           union all
+                           select M.partname,A.sqty as good_qty  from TK_Wrk_OutRecord A
+                           inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
+                           inner join TMateriel_Info M on A.materiel_code=M.partcode
+                           where A.style='S' and S.isend='Y'
+                           ) as A group by A.partname order by good_qty desc";
+                var data = DapperHelper.selecttable(sql);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.data = data;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[澶у矝杞﹂棿缁煎悎鐪嬫澘,鍙充笅top鎺掕鎺ュ彛]
+        public static ToMessage LineSearchBottomRightData()
+        {
+            string sql = "";
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                //鑾峰彇鎶ュ伐涓嶈壇top5淇℃伅
+                sql = @"select isnull(COUNT(checkitem_name),0) cont,checkitem_name  from TStepCheckRecordSub
+                        group by checkitem_name order by cont desc";
+                var data = DapperHelper.selecttable(sql);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.data = data;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+    }
+}
\ No newline at end of file
diff --git "a/VueWebApi/Excel/\344\273\223\345\272\223\345\272\223\344\275\215\346\270\205\345\215\225.xls" "b/VueWebApi/Excel/\344\273\223\345\272\223\345\272\223\344\275\215\346\270\205\345\215\225.xls"
new file mode 100644
index 0000000..4680e92
--- /dev/null
+++ "b/VueWebApi/Excel/\344\273\223\345\272\223\345\272\223\344\275\215\346\270\205\345\215\225.xls"
Binary files differ
diff --git "a/VueWebApi/Excel/\345\276\200\346\235\245\345\215\225\344\275\215.xls" "b/VueWebApi/Excel/\345\276\200\346\235\245\345\215\225\344\275\215.xls"
new file mode 100644
index 0000000..23263b4
--- /dev/null
+++ "b/VueWebApi/Excel/\345\276\200\346\235\245\345\215\225\344\275\215.xls"
Binary files differ
diff --git "a/VueWebApi/Excel/\350\247\222\350\211\262\346\270\205\345\215\225.xls" "b/VueWebApi/Excel/\350\247\222\350\211\262\346\270\205\345\215\225.xls"
index 73e21a0..82db4e3 100644
--- "a/VueWebApi/Excel/\350\247\222\350\211\262\346\270\205\345\215\225.xls"
+++ "b/VueWebApi/Excel/\350\247\222\350\211\262\346\270\205\345\215\225.xls"
Binary files differ
diff --git "a/VueWebApi/InExcel/1/\350\247\222\350\211\262\346\270\205\345\215\225.xls" "b/VueWebApi/InExcel/1/\350\247\222\350\211\262\346\270\205\345\215\225.xls"
new file mode 100644
index 0000000..334d4fc
--- /dev/null
+++ "b/VueWebApi/InExcel/1/\350\247\222\350\211\262\346\270\205\345\215\225.xls"
Binary files differ
diff --git "a/VueWebApi/InExcel/\344\272\247\345\223\201\345\212\237\350\203\275\351\230\266\346\256\265\350\276\223\345\207\272.xlsx" "b/VueWebApi/InExcel/\344\272\247\345\223\201\345\212\237\350\203\275\351\230\266\346\256\265\350\276\223\345\207\272.xlsx"
deleted file mode 100644
index 71eec4a..0000000
--- "a/VueWebApi/InExcel/\344\272\247\345\223\201\345\212\237\350\203\275\351\230\266\346\256\265\350\276\223\345\207\272.xlsx"
+++ /dev/null
Binary files differ
diff --git a/VueWebApi/Logs/2022-07-22.TXT b/VueWebApi/Logs/2022-07-22.TXT
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/VueWebApi/Logs/2022-07-22.TXT
diff --git a/VueWebApi/Logs/2022-07-25.TXT b/VueWebApi/Logs/2022-07-25.TXT
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/VueWebApi/Logs/2022-07-25.TXT
diff --git a/VueWebApi/Logs/2022-07-26.TXT b/VueWebApi/Logs/2022-07-26.TXT
new file mode 100644
index 0000000..0c06243
--- /dev/null
+++ b/VueWebApi/Logs/2022-07-26.TXT
@@ -0,0 +1,459 @@
+ 【时间】:2022-07-26 15:58:17,388
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过0
+时间:2022-07-26 15:58:17
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 15:58:17,678
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过
+时间:2022-07-26 15:58:17
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 15:58:17,982
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过1
+时间:2022-07-26 15:58:17
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 15:58:18,353
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过2
+时间:2022-07-26 15:58:18
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 15:58:18,883
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过3
+时间:2022-07-26 15:58:18
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 16:37:51,787
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 10 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过0
+时间:2022-07-26 16:37:51
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 16:37:52,013
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 10 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过
+时间:2022-07-26 16:37:52
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 16:37:53,195
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 10 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过1
+时间:2022-07-26 16:37:53
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 16:37:53,699
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 10 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过2
+时间:2022-07-26 16:37:53
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 16:37:54,063
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 10 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过3
+时间:2022-07-26 16:37:54
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 16:37:55,092
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 10 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过4
+时间:2022-07-26 16:37:55
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 16:38:34,697
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 10 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过5
+时间:2022-07-26 16:38:34
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:33:57,474
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 19 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过0
+时间:2022-07-26 19:33:57
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:33:57,851
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 19 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过
+时间:2022-07-26 19:33:57
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:33:58,271
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 19 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过1
+时间:2022-07-26 19:33:58
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:33:58,583
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 19 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过2
+时间:2022-07-26 19:33:58
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:33:59,181
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 19 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过3
+时间:2022-07-26 19:33:59
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:34:03,126
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 19 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过4
+时间:2022-07-26 19:34:03
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:37:23,177
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过0
+时间:2022-07-26 19:37:23
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:37:23,546
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过
+时间:2022-07-26 19:37:23
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:37:23,906
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过1
+时间:2022-07-26 19:37:23
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:37:24,187
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过2
+时间:2022-07-26 19:37:24
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:37:25,243
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过3
+时间:2022-07-26 19:37:25
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:37:27,175
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过4
+时间:2022-07-26 19:37:27
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:37:29,192
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过5
+时间:2022-07-26 19:37:29
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:42:25,163
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 15 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过0
+时间:2022-07-26 19:42:25
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:42:25,556
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 15 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过
+时间:2022-07-26 19:42:25
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:42:25,822
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 15 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过1
+时间:2022-07-26 19:42:25
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:42:26,355
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 15 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过2
+时间:2022-07-26 19:42:26
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:42:26,726
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 15 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过3
+时间:2022-07-26 19:42:26
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:42:27,668
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 15 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过4
+时间:2022-07-26 19:42:27
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:42:35,661
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 15 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过5
+时间:2022-07-26 19:42:35
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:58:05,984
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 18 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过0
+时间:2022-07-26 19:58:05
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:58:06,407
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 18 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过
+时间:2022-07-26 19:58:06
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:58:07,342
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 18 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过1
+时间:2022-07-26 19:58:07
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:58:07,947
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 18 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过2
+时间:2022-07-26 19:58:07
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:58:08,513
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 18 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过3
+时间:2022-07-26 19:58:08
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:58:09,571
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 18 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过4
+时间:2022-07-26 19:58:09
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 19:58:15,703
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 18 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过5
+时间:2022-07-26 19:58:15
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 20:49:55,272
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 9 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过0
+时间:2022-07-26 20:49:55
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 20:49:55,427
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 9 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过
+时间:2022-07-26 20:49:55
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 20:49:55,432
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 9 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:文件地址:D:\新凯迪MES\VueWebApi\VueWebApi\grf\Rework.frx
+时间:2022-07-26 20:49:55
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 20:49:55,434
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 9 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过1
+时间:2022-07-26 20:49:55
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 20:49:55,521
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 9 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过2
+时间:2022-07-26 20:49:55
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 20:49:55,524
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 9 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过3
+时间:2022-07-26 20:49:55
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 20:49:55,530
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 9 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过4
+时间:2022-07-26 20:49:55
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 20:50:27,311
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 9 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过5
+时间:2022-07-26 20:50:27
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 21:18:24,955
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 17 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:文件地址:D:\新凯迪MES\VueWebApi\VueWebApi\grf\Rework.frx
+时间:2022-07-26 21:18:24
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 21:19:15,553
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 15 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:文件地址:D:\新凯迪MES\VueWebApi\VueWebApi\grf\Rework.frx
+时间:2022-07-26 21:19:15
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 21:20:37,841
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 19 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:文件地址:D:\新凯迪MES\VueWebApi\VueWebApi\grf\Rework.frx
+时间:2022-07-26 21:20:37
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
+ 【时间】:2022-07-26 21:20:38,213
+ 【级别】:ERROR
+ 【类名】:日志记录
+ 【线程ID】: 19 
+ 【文件地址】:D:\新凯迪MES\VueWebApi\VueWebApi\Tools\LogHelper.cs 第37行
+ 【日志内容】:序列化通过5
+时间:2022-07-26 21:20:38
+ 【日记详细】: 
+---------------------------------------------------------------------------------------------------------------
diff --git a/VueWebApi/Properties/PublishProfiles/FolderProfile.pubxml.user b/VueWebApi/Properties/PublishProfiles/FolderProfile.pubxml.user
index e207cee..6ba920b 100644
--- a/VueWebApi/Properties/PublishProfiles/FolderProfile.pubxml.user
+++ b/VueWebApi/Properties/PublishProfiles/FolderProfile.pubxml.user
@@ -5,7 +5,7 @@
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <_PublishTargetUrl>D:\缃戠珯鍙戝竷\XKDMesApi</_PublishTargetUrl>
-    <History>True|2022-07-21T09:53:41.1464086Z;True|2022-07-21T17:43:33.5311479+08:00;True|2022-07-21T16:09:07.7687640+08:00;True|2022-07-21T16:04:47.9317019+08:00;True|2022-07-21T15:58:21.2359033+08:00;True|2022-07-21T15:56:07.7425829+08:00;True|2022-07-21T15:51:34.7108381+08:00;True|2022-07-21T15:48:57.5735708+08:00;True|2022-07-21T15:44:25.8205030+08:00;True|2022-07-21T15:25:51.4222269+08:00;True|2022-07-21T15:22:36.8818295+08:00;True|2022-07-21T15:19:28.8532774+08:00;True|2022-07-21T14:57:45.7532568+08:00;True|2022-07-21T11:16:12.0900762+08:00;True|2022-07-21T10:10:40.4714948+08:00;True|2022-07-21T10:00:19.5258058+08:00;True|2022-07-14T14:34:28.5093226+08:00;True|2022-07-14T13:59:59.7754985+08:00;True|2022-07-14T12:46:29.6685284+08:00;True|2022-07-14T09:22:25.9079652+08:00;True|2022-07-14T09:22:04.6797478+08:00;True|2022-07-14T09:10:45.0177607+08:00;True|2022-07-14T08:41:43.3026713+08:00;True|2022-07-14T08:27:32.7454972+08:00;True|2022-07-14T08:21:58.6572366+08:00;True|2022-07-14T08:17:59.2904747+08:00;True|2022-07-14T08:12:39.8483472+08:00;True|2022-06-30T15:04:41.6941982+08:00;True|2022-06-24T16:39:01.1080301+08:00;True|2022-06-17T13:23:15.1455451+08:00;True|2022-06-17T13:22:18.5517557+08:00;True|2022-06-17T13:19:27.7323818+08:00;True|2022-06-17T13:12:24.1252779+08:00;True|2022-06-17T13:09:20.4234258+08:00;True|2022-06-17T13:06:49.9869509+08:00;True|2022-06-17T12:58:54.6964621+08:00;False|2022-06-17T12:58:10.6767711+08:00;False|2022-06-17T12:57:08.9747950+08:00;False|2022-06-17T12:56:18.4650121+08:00;False|2022-06-17T12:55:57.9981927+08:00;True|2022-06-13T14:21:36.5610928+08:00;True|2022-06-13T11:41:39.4210151+08:00;True|2022-06-11T02:35:03.4727934+08:00;True|2022-06-11T02:31:13.7362660+08:00;True|2022-06-11T02:30:58.3616790+08:00;True|2022-06-11T01:57:04.4951468+08:00;True|2022-06-10T13:27:13.2097124+08:00;</History>
+    <History>True|2022-07-25T07:35:49.6958399Z;True|2022-07-25T15:30:40.4444876+08:00;True|2022-07-25T13:33:38.4068153+08:00;True|2022-07-22T15:00:56.7326322+08:00;True|2022-07-22T14:51:18.0169121+08:00;True|2022-07-22T14:26:08.4246205+08:00;True|2022-07-22T14:23:05.0897016+08:00;True|2022-07-22T14:18:18.7806854+08:00;True|2022-07-22T14:09:29.7924367+08:00;True|2022-07-22T14:02:26.6403133+08:00;True|2022-07-22T13:56:40.0887615+08:00;True|2022-07-22T13:50:10.7852190+08:00;True|2022-07-22T11:38:25.6671780+08:00;True|2022-07-22T10:55:36.7947659+08:00;True|2022-07-21T17:53:41.1464086+08:00;True|2022-07-21T17:43:33.5311479+08:00;True|2022-07-21T16:09:07.7687640+08:00;True|2022-07-21T16:04:47.9317019+08:00;True|2022-07-21T15:58:21.2359033+08:00;True|2022-07-21T15:56:07.7425829+08:00;True|2022-07-21T15:51:34.7108381+08:00;True|2022-07-21T15:48:57.5735708+08:00;True|2022-07-21T15:44:25.8205030+08:00;True|2022-07-21T15:25:51.4222269+08:00;True|2022-07-21T15:22:36.8818295+08:00;True|2022-07-21T15:19:28.8532774+08:00;True|2022-07-21T14:57:45.7532568+08:00;True|2022-07-21T11:16:12.0900762+08:00;True|2022-07-21T10:10:40.4714948+08:00;True|2022-07-21T10:00:19.5258058+08:00;True|2022-07-14T14:34:28.5093226+08:00;True|2022-07-14T13:59:59.7754985+08:00;True|2022-07-14T12:46:29.6685284+08:00;True|2022-07-14T09:22:25.9079652+08:00;True|2022-07-14T09:22:04.6797478+08:00;True|2022-07-14T09:10:45.0177607+08:00;True|2022-07-14T08:41:43.3026713+08:00;True|2022-07-14T08:27:32.7454972+08:00;True|2022-07-14T08:21:58.6572366+08:00;True|2022-07-14T08:17:59.2904747+08:00;True|2022-07-14T08:12:39.8483472+08:00;True|2022-06-30T15:04:41.6941982+08:00;True|2022-06-24T16:39:01.1080301+08:00;True|2022-06-17T13:23:15.1455451+08:00;True|2022-06-17T13:22:18.5517557+08:00;True|2022-06-17T13:19:27.7323818+08:00;True|2022-06-17T13:12:24.1252779+08:00;True|2022-06-17T13:09:20.4234258+08:00;True|2022-06-17T13:06:49.9869509+08:00;True|2022-06-17T12:58:54.6964621+08:00;False|2022-06-17T12:58:10.6767711+08:00;False|2022-06-17T12:57:08.9747950+08:00;False|2022-06-17T12:56:18.4650121+08:00;False|2022-06-17T12:55:57.9981927+08:00;True|2022-06-13T14:21:36.5610928+08:00;True|2022-06-13T11:41:39.4210151+08:00;True|2022-06-11T02:35:03.4727934+08:00;True|2022-06-11T02:31:13.7362660+08:00;True|2022-06-11T02:30:58.3616790+08:00;True|2022-06-11T01:57:04.4951468+08:00;True|2022-06-10T13:27:13.2097124+08:00;</History>
   </PropertyGroup>
   <ItemGroup>
     <File Include="Areas/HelpPage/HelpPage.css">
@@ -92,6 +92,15 @@
     <File Include="bin/FastReport.Editor.dll">
       <publishTime>06/30/2022 13:48:04</publishTime>
     </File>
+    <File Include="bin/FastReport.Service.dll">
+      <publishTime>06/30/2022 13:48:36</publishTime>
+    </File>
+    <File Include="bin/FastReport.Service.dll.config">
+      <publishTime>06/30/2022 13:48:08</publishTime>
+    </File>
+    <File Include="bin/FastReport.VSDesign.dll">
+      <publishTime>06/30/2022 13:48:34</publishTime>
+    </File>
     <File Include="bin/FastReport.Web.dll">
       <publishTime>06/30/2022 13:48:36</publishTime>
     </File>
@@ -110,14 +119,38 @@
     <File Include="bin/log4net.dll">
       <publishTime>12/17/2021 18:45:06</publishTime>
     </File>
+    <File Include="bin/Microsoft.AspNetCore.Http.Abstractions.dll">
+      <publishTime>11/13/2018 01:29:00</publishTime>
+    </File>
+    <File Include="bin/Microsoft.AspNetCore.Http.Features.dll">
+      <publishTime>11/13/2018 01:28:58</publishTime>
+    </File>
+    <File Include="bin/Microsoft.AspNetCore.Mvc.Abstractions.dll">
+      <publishTime>11/13/2018 01:40:10</publishTime>
+    </File>
+    <File Include="bin/Microsoft.AspNetCore.Routing.Abstractions.dll">
+      <publishTime>11/13/2018 01:38:16</publishTime>
+    </File>
     <File Include="bin/Microsoft.Bcl.AsyncInterfaces.dll">
       <publishTime>10/20/2020 02:40:36</publishTime>
     </File>
     <File Include="bin/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll">
       <publishTime>09/05/2018 16:10:50</publishTime>
     </File>
+    <File Include="bin/Microsoft.Extensions.Primitives.dll">
+      <publishTime>11/11/2018 08:26:36</publishTime>
+    </File>
+    <File Include="bin/Microsoft.Net.Http.Headers.dll">
+      <publishTime>11/13/2018 01:28:58</publishTime>
+    </File>
     <File Include="bin/Microsoft.Web.Infrastructure.dll">
       <publishTime>07/25/2012 11:48:56</publishTime>
+    </File>
+    <File Include="bin/Microsoft.Win32.Primitives.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/netstandard.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
     </File>
     <File Include="bin/Newtonsoft.Json.dll">
       <publishTime>04/22/2019 01:06:16</publishTime>
@@ -314,41 +347,302 @@
     <File Include="bin/Swashbuckle.Core.dll">
       <publishTime>07/08/2017 01:30:56</publishTime>
     </File>
+    <File Include="bin/System.AppContext.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
     <File Include="bin/System.Buffers.dll">
       <publishTime>02/19/2020 10:05:18</publishTime>
+    </File>
+    <File Include="bin/System.CodeDom.dll">
+      <publishTime>10/23/2021 07:52:04</publishTime>
+    </File>
+    <File Include="bin/System.Collections.Concurrent.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Collections.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Collections.NonGeneric.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Collections.Specialized.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.ComponentModel.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.ComponentModel.EventBasedAsync.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.ComponentModel.Primitives.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.ComponentModel.TypeConverter.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Console.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Data.Common.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Diagnostics.Contracts.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Diagnostics.Debug.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Diagnostics.FileVersionInfo.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
     </File>
     <File Include="bin/System.Diagnostics.PerformanceCounter.dll">
       <publishTime>10/20/2020 02:49:34</publishTime>
     </File>
+    <File Include="bin/System.Diagnostics.Process.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Diagnostics.StackTrace.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Diagnostics.TextWriterTraceListener.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Diagnostics.Tools.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Diagnostics.TraceSource.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Diagnostics.Tracing.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Drawing.Primitives.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Dynamic.Runtime.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Globalization.Calendars.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Globalization.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Globalization.Extensions.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
     <File Include="bin/System.IO.Compression.dll">
-      <publishTime>11/05/2016 12:56:08</publishTime>
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.IO.Compression.ZipFile.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.IO.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.IO.FileSystem.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.IO.FileSystem.DriveInfo.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.IO.FileSystem.Primitives.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.IO.FileSystem.Watcher.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.IO.IsolatedStorage.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.IO.MemoryMappedFiles.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
     </File>
     <File Include="bin/System.IO.Pipelines.dll">
       <publishTime>11/26/2020 10:00:22</publishTime>
+    </File>
+    <File Include="bin/System.IO.Pipes.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.IO.UnmanagedMemoryStream.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Linq.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Linq.Expressions.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Linq.Parallel.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Linq.Queryable.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
     </File>
     <File Include="bin/System.Memory.dll">
       <publishTime>02/19/2020 10:05:18</publishTime>
     </File>
     <File Include="bin/System.Net.Http.dll">
-      <publishTime>11/05/2016 18:56:30</publishTime>
+      <publishTime>12/24/2021 15:38:29</publishTime>
     </File>
     <File Include="bin/System.Net.Http.Formatting.dll">
       <publishTime>05/28/2022 07:41:34</publishTime>
     </File>
+    <File Include="bin/System.Net.NameResolution.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Net.NetworkInformation.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Net.Ping.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Net.Primitives.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Net.Requests.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Net.Security.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Net.Sockets.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Net.WebHeaderCollection.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Net.WebSockets.Client.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Net.WebSockets.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
     <File Include="bin/System.Numerics.Vectors.dll">
       <publishTime>05/15/2018 13:29:44</publishTime>
+    </File>
+    <File Include="bin/System.ObjectModel.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Reflection.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Reflection.Extensions.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Reflection.Primitives.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Resources.Reader.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Resources.ResourceManager.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Resources.Writer.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
     </File>
     <File Include="bin/System.Runtime.CompilerServices.Unsafe.dll">
       <publishTime>02/19/2020 10:05:16</publishTime>
     </File>
+    <File Include="bin/System.Runtime.CompilerServices.VisualC.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Runtime.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Runtime.Extensions.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Runtime.Handles.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Runtime.InteropServices.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
     <File Include="bin/System.Runtime.InteropServices.RuntimeInformation.dll">
-      <publishTime>11/05/2016 12:57:00</publishTime>
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Runtime.Numerics.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Runtime.Serialization.Formatters.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Runtime.Serialization.Json.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Runtime.Serialization.Primitives.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Runtime.Serialization.Xml.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Security.Claims.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Security.Cryptography.Algorithms.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Security.Cryptography.Csp.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Security.Cryptography.Encoding.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Security.Cryptography.Primitives.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Security.Cryptography.X509Certificates.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Security.Principal.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Security.SecureString.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Text.Encoding.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Text.Encoding.Extensions.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Text.Encodings.Web.dll">
+      <publishTime>05/15/2018 21:29:52</publishTime>
+    </File>
+    <File Include="bin/System.Text.RegularExpressions.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
     </File>
     <File Include="bin/System.Threading.Channels.dll">
       <publishTime>10/20/2020 02:46:24</publishTime>
     </File>
+    <File Include="bin/System.Threading.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Threading.Overlapped.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Threading.Tasks.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
     <File Include="bin/System.Threading.Tasks.Extensions.dll">
       <publishTime>02/19/2020 10:05:18</publishTime>
+    </File>
+    <File Include="bin/System.Threading.Tasks.Parallel.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Threading.Thread.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Threading.ThreadPool.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Threading.Timer.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.ValueTuple.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
     </File>
     <File Include="bin/System.Web.Cors.dll">
       <publishTime>11/28/2018 12:58:44</publishTime>
@@ -383,17 +677,35 @@
     <File Include="bin/System.Web.WebPages.Razor.dll">
       <publishTime>11/28/2018 13:04:24</publishTime>
     </File>
+    <File Include="bin/System.Xml.ReaderWriter.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Xml.XDocument.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Xml.XmlDocument.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Xml.XmlSerializer.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Xml.XPath.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
+    <File Include="bin/System.Xml.XPath.XDocument.dll">
+      <publishTime>12/24/2021 15:38:29</publishTime>
+    </File>
     <File Include="bin/VueWebApi.dll">
-      <publishTime>07/21/2022 17:53:36</publishTime>
+      <publishTime>07/27/2022 08:43:00</publishTime>
     </File>
     <File Include="bin/VueWebApi.dll.config">
       <publishTime>06/15/2022 15:31:43</publishTime>
     </File>
     <File Include="bin/VueWebApi.pdb">
-      <publishTime>07/21/2022 17:53:36</publishTime>
+      <publishTime>07/27/2022 08:43:00</publishTime>
     </File>
     <File Include="bin/VueWebApi.xml">
-      <publishTime>06/16/2022 14:26:01</publishTime>
+      <publishTime>07/27/2022 08:43:00</publishTime>
     </File>
     <File Include="bin/WebActivatorEx.dll">
       <publishTime>02/08/2013 16:42:28</publishTime>
@@ -461,11 +773,17 @@
     <File Include="DisplayViewReport.html">
       <publishTime>06/29/2022 20:36:27</publishTime>
     </File>
+    <File Include="Excel/浠撳簱搴撲綅娓呭崟.xls">
+      <publishTime>07/25/2022 13:45:20</publishTime>
+    </File>
+    <File Include="Excel/寰�鏉ュ崟浣�.xls">
+      <publishTime>07/25/2022 12:46:29</publishTime>
+    </File>
     <File Include="Excel/鐢ㄦ埛娓呭崟.xls">
       <publishTime>07/20/2022 10:52:30</publishTime>
     </File>
     <File Include="Excel/瑙掕壊娓呭崟.xls">
-      <publishTime>07/20/2022 11:30:06</publishTime>
+      <publishTime>07/22/2022 11:26:24</publishTime>
     </File>
     <File Include="favicon.ico">
       <publishTime>06/10/2022 08:20:24</publishTime>
@@ -869,6 +1187,9 @@
     <File Include="grf/program/data_from_url.grf">
       <publishTime>06/30/2022 09:09:37</publishTime>
     </File>
+    <File Include="grf/Rework.frx">
+      <publishTime>07/26/2022 14:37:33</publishTime>
+    </File>
     <File Include="grf/SummaryToDetail/ChartBar.grf">
       <publishTime>06/30/2022 09:09:37</publishTime>
     </File>
@@ -966,7 +1287,7 @@
       <publishTime>06/10/2022 08:20:24</publishTime>
     </File>
     <File Include="Web.config">
-      <publishTime>07/21/2022 17:53:40</publishTime>
+      <publishTime>07/27/2022 08:43:06</publishTime>
     </File>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/VueWebApi/Tools/ExcelList.cs b/VueWebApi/Tools/ExcelList.cs
index c017594..412d9bb 100644
--- a/VueWebApi/Tools/ExcelList.cs
+++ b/VueWebApi/Tools/ExcelList.cs
@@ -16,8 +16,7 @@
                 new ScoreReport("2","鐢ㄦ埛娓呭崟"),
                 new ScoreReport("3","宸ヤ綅娓呭崟"),
                 new ScoreReport("4","寰�鏉ュ崟浣�"),
-                new ScoreReport("6.1","浠撳簱瀹氫箟"),
-                new ScoreReport("6.2","搴撲綅瀹氫箟"),
+                new ScoreReport("6","浠撳簱搴撲綅娓呭崟"),
                 new ScoreReport("7","瀹瑰櫒瀹氫箟"),
                 new ScoreReport("8","瀛樿揣妗f"),
                 new ScoreReport("9","璁惧娓呭崟"),
diff --git a/VueWebApi/Tools/ImportExcel.cs b/VueWebApi/Tools/ImportExcel.cs
index 699a575..f7470ad 100644
--- a/VueWebApi/Tools/ImportExcel.cs
+++ b/VueWebApi/Tools/ImportExcel.cs
@@ -53,6 +53,10 @@
             ISheet sheet = Workbook.GetSheetAt(0);
             //绗竴琛屼负鏍囬琛�
             IRow headerRow = sheet.GetRow(0);
+            if (headerRow == null)
+            {
+                return table;
+            }
             int cellCount = headerRow.LastCellNum;
             int rowCount = sheet.LastRowNum;
 
@@ -68,7 +72,7 @@
             {
                 IRow row = sheet.GetRow(i);
                 DataRow dataRow = table.NewRow();
-                if (row != null)
+                if (row != null&&row.Cells.Count>0)
                 {
                     for (int j = row.FirstCellNum; j < cellCount; j++)
                     {
@@ -146,6 +150,10 @@
                 ISheet sheet = Workbook.GetSheetAt(0);
                 //绗竴琛屼负鏍囬琛�
                 IRow headerRow = sheet.GetRow(0);
+                if (headerRow == null) 
+                {
+                   return list;
+                }
                 int cellCount = headerRow.LastCellNum;
                 int rowCount = sheet.LastRowNum;
 
@@ -161,7 +169,7 @@
                 {
                     IRow row = sheet.GetRow(i);
                     DataRow dataRow = table.NewRow();
-                    if (row != null)
+                    if (row != null&&row.Cells.Count>0)
                     {
                         for (int j = row.FirstCellNum; j < cellCount; j++)
                         {
@@ -198,13 +206,17 @@
             }
             else
             {
-                for (int m = 0; m < 2; m++)
+                for (int m = 0; m < count; m++)
                 {
                     DataTable table = new DataTable();
                     //瀹氫綅鍦ㄧ涓�涓猻heet
                     ISheet sheet = Workbook.GetSheetAt(m);
                     //绗竴琛屼负鏍囬琛�
                     IRow headerRow = sheet.GetRow(0);
+                    if (headerRow == null)
+                    {
+                        return list;
+                    }
                     int cellCount = headerRow.LastCellNum;
                     int rowCount = sheet.LastRowNum;
 
@@ -220,7 +232,7 @@
                     {
                         IRow row = sheet.GetRow(i);
                         DataRow dataRow = table.NewRow();
-                        if (row != null)
+                        if (row != null&&row.Cells.Count>0)
                         {
                             for (int j = row.FirstCellNum; j < cellCount; j++)
                             {
diff --git a/VueWebApi/Tools/ImportExcelData.cs b/VueWebApi/Tools/ImportExcelData.cs
index 34cd005..e932323 100644
--- a/VueWebApi/Tools/ImportExcelData.cs
+++ b/VueWebApi/Tools/ImportExcelData.cs
@@ -18,57 +18,110 @@
         {
             string Message = "";
             code = "";
-            DataTable excelTable = new DataTable();
-            excelTable = ImportExcel.ExcelToTable(FileCode);
-            if (excelTable.Columns.Count != 6)
+            List<DataTable> excelTable = new List<DataTable>();
+            excelTable = ImportExcel.ExcelToTableList(FileCode);
+            if (excelTable.Count != 4)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "瀵煎叆妯℃澘涓嶇鍚堣鑼�,璇锋鏌heet鏁�";
+                return Message;
+
             }
-            else if (excelTable.Columns[0].ColumnName != "搴忓彿")
+            else if (excelTable[0].Columns.Count != 4)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛鐝粍妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
+                return Message;
             }
-            else if (excelTable.Columns[1].ColumnName != "鐢ㄦ埛缂栧彿(鍞竴)")
+            else if (excelTable[1].Columns.Count != 10)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
+                return Message;
             }
-            else if (excelTable.Columns[2].ColumnName != "鐢ㄦ埛濮撳悕")
+            else if (excelTable[0].Columns[0].ColumnName != "搴忓彿")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
+                return Message;
             }
-            else if (excelTable.Columns[3].ColumnName != "瀵嗙爜")
+            else if (excelTable[0].Columns[1].ColumnName != "鐝粍缂栧彿(鍞竴)")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕鐝粍缂栧彿(鍞竴)}";
+                return Message;
             }
-            else if (excelTable.Columns[4].ColumnName != "鎵嬫満鍙�")
+            else if (excelTable[0].Columns[2].ColumnName != "鐝粍鍚嶇О")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕鐝粍鍚嶇О}";
+                return Message;
             }
-            else if (excelTable.Columns[5].ColumnName != "閭")
+            else if (excelTable[0].Columns[3].ColumnName != "鐝粍鎻忚堪")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�4鍒楀簲涓簕鐝粍鎻忚堪}";
+                return Message;
             }
-            else if (excelTable.Columns[6].ColumnName != "鎵�灞炵粍缁�")
+            else if (excelTable[1].Columns[0].ColumnName != "搴忓彿")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
+                return Message;
             }
-            else if (excelTable.Columns[7].ColumnName != "鍦ㄨ亴鐘舵��")
+            else if (excelTable[1].Columns[1].ColumnName != "鐢ㄦ埛缂栧彿(鍞竴)")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕鐢ㄦ埛缂栧彿(鍞竴)}";
+                return Message;
             }
-            else if (excelTable.Columns[8].ColumnName != "宸ヨ祫绫诲瀷")
+            else if (excelTable[1].Columns[2].ColumnName != "鐢ㄦ埛濮撳悕")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕鐢ㄦ埛濮撳悕}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[3].ColumnName != "鍦ㄨ亴鐘舵��")
+            {
+                code = "300";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�4鍒楀簲涓簕鍦ㄨ亴鐘舵�亇";
+                return Message;
+            }
+            else if (excelTable[1].Columns[4].ColumnName != "瀵嗙爜")
+            {
+                code = "300";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�5鍒楀簲涓簕瀵嗙爜}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[5].ColumnName != "鎵嬫満鍙�")
+            {
+                code = "300";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�6鍒楀簲涓簕鎵嬫満鍙穧";
+                return Message;
+            }
+            else if (excelTable[1].Columns[6].ColumnName != "閭")
+            {
+                code = "300";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�7鍒楀簲涓簕閭}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[7].ColumnName != "缁勭粐缂栫爜")
+            {
+                code = "300";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�8鍒楀簲涓簕缁勭粐缂栫爜}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[8].ColumnName != "宸ヨ祫绫诲瀷")
+            {
+                code = "300";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�9鍒楀簲涓簕宸ヨ祫绫诲瀷}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[9].ColumnName != "鐢ㄦ埛缁勭紪鐮�")
+            {
+                code = "300";
+                Message = "鐢ㄦ埛娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�10鍒楀簲涓簕鐢ㄦ埛缁勭紪鐮亇";
+                return Message;
             }
             else
             {
@@ -84,32 +137,74 @@
         {
             string Message = "";
             code = "";
-            DataTable excelTable = new DataTable();
-            excelTable = ImportExcel.ExcelToTable(FileCode);
-            if (excelTable.Columns.Count != 4)
+            List<DataTable> excelTable = new List<DataTable>();
+            excelTable = ImportExcel.ExcelToTableList(FileCode);
+            if (excelTable.Count != 4)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "瀵煎叆妯℃澘涓嶇鍚堣鑼�,璇锋鏌heet鏁�";
+                return Message;
+
             }
-            else if (excelTable.Columns[0].ColumnName != "搴忓彿")
+            else if (excelTable[0].Columns.Count != 3)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "瑙掕壊绫诲瀷妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
+                return Message;
             }
-            else if (excelTable.Columns[1].ColumnName != "瑙掕壊缂栧彿(鍞竴)")
+            else if (excelTable[1].Columns.Count != 5)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "妯℃澘瑙掕壊娓呭崟涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
+                return Message;
             }
-            else if (excelTable.Columns[2].ColumnName != "瑙掕壊鍚嶇О(鍞竴)")
+            else if (excelTable[0].Columns[0].ColumnName != "搴忓彿")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "瑙掕壊绫诲瀷妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
+                return Message;
             }
-            else if (excelTable.Columns[3].ColumnName != "瑙掕壊绫诲瀷")
+            else if (excelTable[0].Columns[1].ColumnName != "瑙掕壊绫诲瀷缂栧彿(鍞竴)")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "瑙掕壊绫诲瀷妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕瑙掕壊绫诲瀷缂栧彿(鍞竴)}";
+                return Message;
+            }
+            else if (excelTable[0].Columns[2].ColumnName != "瑙掕壊绫诲瀷鍚嶇О")
+            {
+                code = "300";
+                Message = "瑙掕壊绫诲瀷妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕瑙掕壊绫诲瀷鍚嶇О}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[0].ColumnName != "搴忓彿")
+            {
+                code = "300";
+                Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[1].ColumnName != "瑙掕壊缂栧彿(鍞竴)")
+            {
+                code = "300";
+                Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕瑙掕壊缂栧彿(鍞竴)}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[2].ColumnName != "瑙掕壊濮撳悕")
+            {
+                code = "300";
+                Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕瑙掕壊濮撳悕}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[3].ColumnName != "瑙掕壊绫诲瀷缂栫爜")
+            {
+                code = "300";
+                Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�4鍒楀簲涓簕瑙掕壊绫诲瀷缂栫爜}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[4].ColumnName != "瑙掕壊鎻忚堪")
+            {
+                code = "300";
+                Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�5鍒楀簲涓簕瑙掕壊鎻忚堪}";
+                return Message;
             }
             else
             {
@@ -186,42 +281,67 @@
         }
         #endregion
 
-        #region銆怑xcel妯℃澘涓婁紶楠岃瘉,渚涙柟娓呭崟妯℃澘銆�
+        #region銆怑xcel妯℃澘涓婁紶楠岃瘉,寰�鏉ュ崟浣嶆竻鍗曟ā鏉裤��
         public static string Four(string FileCode, out string code)
         {
             string Message = "";
             code = "";
-            DataTable excelTable = new DataTable();
-            excelTable = ImportExcel.ExcelToTable(FileCode);
-            if (excelTable.Columns.Count != 5)
+            List<DataTable> excelTable = new List<DataTable>();
+            excelTable = ImportExcel.ExcelToTableList(FileCode);
+            if (excelTable.Count != 2)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "瀵煎叆妯℃澘涓嶇鍚堣鑼�,璇锋鏌heet鏁�";
+                return Message;
+
             }
-            else if (excelTable.Columns[0].ColumnName != "搴忓彿")
+            else if (excelTable[0].Columns.Count != 7)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "寰�鏉ュ崟浣嶆ā鏉夸笉绗﹀悎瑙勮寖,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
+                return Message;
             }
-            else if (excelTable.Columns[1].ColumnName != "渚涙柟缂栧彿(鍞竴)")
+            else if (excelTable[0].Columns[0].ColumnName != "搴忓彿")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "寰�鏉ュ崟浣嶆ā鏉夸笉绗﹀悎瑙勮寖锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
+                return Message;
             }
-            else if (excelTable.Columns[2].ColumnName != "渚涙柟鍚嶇О锛堝敮涓�锛�")
+            else if (excelTable[0].Columns[1].ColumnName != "寰�鏉ュ崟浣嶇紪鍙�(鍞竴)")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "寰�鏉ュ崟浣嶆ā鏉夸笉绗﹀悎瑙勮寖锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕寰�鏉ュ崟浣嶇紪鍙�(鍞竴)}";
+                return Message;
             }
-            else if (excelTable.Columns[3].ColumnName != "琛ュ厖鎻忚堪")
+            else if (excelTable[0].Columns[2].ColumnName != "寰�鏉ュ崟浣嶅悕绉�")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "寰�鏉ュ崟浣嶆ā鏉夸笉绗﹀悎瑙勮寖锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕寰�鏉ュ崟浣嶅悕绉皚";
+                return Message;
             }
-            else if (excelTable.Columns[4].ColumnName.Trim() != "渚涙柟绫诲瀷锛堝鍗忎緵鏂�,澶栬喘渚涙柟锛�")
+            else if (excelTable[0].Columns[3].ColumnName != "寰�鏉ュ崟浣嶅睘鎬�")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "寰�鏉ュ崟浣嶆ā鏉夸笉绗﹀悎瑙勮寖锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�4鍒楀簲涓簕寰�鏉ュ崟浣嶅睘鎬";
+                return Message;
+            }
+            else if (excelTable[0].Columns[4].ColumnName != "鑱旂郴浜�")
+            {
+                code = "300";
+                Message = "寰�鏉ュ崟浣嶆ā鏉夸笉绗﹀悎瑙勮寖锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�5鍒楀簲涓簕鑱旂郴浜簘";
+                return Message;
+            }
+            else if (excelTable[0].Columns[5].ColumnName != "鑱旂郴鏂瑰紡")
+            {
+                code = "300";
+                Message = "寰�鏉ュ崟浣嶆ā鏉夸笉绗﹀悎瑙勮寖锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�6鍒楀簲涓簕鑱旂郴鏂瑰紡}";
+                return Message;
+            }
+            else if (excelTable[0].Columns[6].ColumnName != "鍦板潃")
+            {
+                code = "300";
+                Message = "寰�鏉ュ崟浣嶆ā鏉夸笉绗﹀悎瑙勮寖锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�7鍒楀簲涓簕鍦板潃}";
+                return Message;
             }
             else
             {
@@ -232,180 +352,85 @@
         }
         #endregion
 
-        #region銆怑xcel妯℃澘涓婁紶楠岃瘉,瀹㈡埛娓呭崟妯℃澘銆�
-        public static string Five(string FileCode, out string code)
-        {
-            string Message = "";
-            code = "";
-            DataTable excelTable = new DataTable();
-            excelTable = ImportExcel.ExcelToTable(FileCode);
-            if (excelTable.Columns.Count != 4)
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[0].ColumnName != "搴忓彿")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[1].ColumnName != "瀹㈡埛缂栧彿(鍞竴)")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[2].ColumnName != "瀹㈡埛鍚嶇О锛堝敮涓�锛�")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[3].ColumnName != "琛ュ厖鎻忚堪")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else
-            {
-                code = "200";
-                Message = "妯℃澘妫�楠岄�氳繃";
-            }
-            return Message;
-        }
-        #endregion
-
-        #region銆怑xcel妯℃澘涓婁紶楠岃瘉,浠撳簱瀹氫箟妯℃澘銆�
+        #region銆怑xcel妯℃澘涓婁紶楠岃瘉,浠撳簱銆佸簱浣嶅畾涔夋ā鏉裤��
         public static string SixOne(string FileCode, out string code)
         {
             string Message = "";
             code = "";
-            DataTable excelTable = new DataTable();
-            excelTable = ImportExcel.ExcelToTable(FileCode);
-            if (excelTable.Columns.Count != 4)
+            List<DataTable> excelTable = new List<DataTable>();
+            excelTable = ImportExcel.ExcelToTableList(FileCode);
+            if (excelTable.Count != 4)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[0].ColumnName != "搴忓彿")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[1].ColumnName != "浠撳簱缂栫爜(鍞竴)")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[2].ColumnName != "浠撳簱鍚嶇О锛堝敮涓�锛�")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[3].ColumnName != "鍔熻兘鎻忚堪")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else
-            {
-                code = "200";
-                Message = "妯℃澘妫�楠岄�氳繃";
-            }
-            return Message;
-        }
-        #endregion
+                Message = "瀵煎叆妯℃澘涓嶇鍚堣鑼�,璇锋鏌heet鏁�";
+                return Message;
 
-        #region銆怑xcel妯℃澘涓婁紶楠岃瘉,搴撳尯瀹氫箟妯℃澘銆�
-        public static string SixTwo(string FileCode, out string code)
-        {
-            string Message = "";
-            code = "";
-            DataTable excelTable = new DataTable();
-            excelTable = ImportExcel.ExcelToTable(FileCode);
-            if (excelTable.Columns.Count != 6)
+            }
+            else if (excelTable[0].Columns.Count != 4)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "浠撳簱娓呭崟妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
+                return Message;
             }
-            else if (excelTable.Columns[0].ColumnName != "搴忓彿")
+            else if (excelTable[1].Columns.Count != 5)
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "搴撲綅娓呭崟妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
+                return Message;
             }
-            else if (excelTable.Columns[1].ColumnName != "搴撳尯缂栫爜(鍞竴)")
+            else if (excelTable[0].Columns[0].ColumnName != "搴忓彿")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
+                return Message;
             }
-            else if (excelTable.Columns[2].ColumnName != "搴撳尯鍚嶇О锛堝敮涓�锛�")
+            else if (excelTable[0].Columns[1].ColumnName != "浠撳簱缂栧彿(鍞竴)")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "浠撳簱娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕浠撳簱缂栧彿(鍞竴)}";
+                return Message;
             }
-            else if (excelTable.Columns[3].ColumnName != "鍔熻兘鎻忚堪")
+            else if (excelTable[0].Columns[2].ColumnName != "浠撳簱鍚嶇О")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "浠撳簱娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕浠撳簱鍚嶇О}";
+                return Message;
             }
-            else if (excelTable.Columns[4].ColumnName != "浠撳簱缂栫爜")
+            else if (excelTable[0].Columns[3].ColumnName != "浠撳簱鎻忚堪")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "浠撳簱娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�4鍒楀簲涓簕浠撳簱鎻忚堪}";
+                return Message;
             }
-            else if (excelTable.Columns[5].ColumnName != "浠撳簱鍚嶇О")
+            else if (excelTable[1].Columns[0].ColumnName != "搴忓彿")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "搴撲綅娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
+                return Message;
             }
-            else
-            {
-                code = "200";
-                Message = "妯℃澘妫�楠岄�氳繃";
-            }
-            return Message;
-        }
-        #endregion
-
-        #region銆怑xcel妯℃澘涓婁紶楠岃瘉,搴撲綅瀹氫箟妯℃澘銆�
-        public static string SixThree(string FileCode, out string code)
-        {
-            string Message = "";
-            code = "";
-            DataTable excelTable = new DataTable();
-            excelTable = ImportExcel.ExcelToTable(FileCode);
-            if (excelTable.Columns.Count != 6)
+            else if (excelTable[1].Columns[1].ColumnName != "搴撲綅缂栧彿(鍞竴)")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "搴撲綅娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕搴撲綅缂栧彿(鍞竴)}";
+                return Message;
             }
-            else if (excelTable.Columns[0].ColumnName != "搴忓彿")
+            else if (excelTable[1].Columns[2].ColumnName != "搴撲綅濮撳悕")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "搴撲綅娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕搴撲綅濮撳悕}";
+                return Message;
             }
-            else if (excelTable.Columns[1].ColumnName != "搴撲綅缂栫爜(鍞竴)")
+            else if (excelTable[1].Columns[3].ColumnName != "鎵�灞炰粨搴撶紪鐮�")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "搴撲綅娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�4鍒楀簲涓簕鎵�灞炰粨搴撶紪鐮亇";
+                return Message;
             }
-            else if (excelTable.Columns[2].ColumnName != "搴撲綅鍚嶇О锛堝敮涓�锛�")
+            else if (excelTable[1].Columns[4].ColumnName != "搴撲綅鎻忚堪")
             {
                 code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[3].ColumnName != "鍔熻兘鎻忚堪")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[4].ColumnName != "搴撳尯缂栫爜")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
-            }
-            else if (excelTable.Columns[5].ColumnName != "搴撳尯鍚嶇О")
-            {
-                code = "300";
-                Message = "妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚�";
+                Message = "搴撲綅娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�5鍒楀簲涓簕搴撲綅鎻忚堪}";
+                return Message;
             }
             else
             {
@@ -1692,7 +1717,7 @@
                     index++;
                     item.Seq = index.ToString();
                 }
-                StuCode = "300";
+                StuCode = "301";
                 message = "鏁版嵁楠岃瘉澶辫触";
             }
             else
@@ -1778,7 +1803,7 @@
                     index++;
                     item.Seq = index.ToString();
                 }
-                StuCode = "300";
+                StuCode = "301";
                 message = "鏁版嵁楠岃瘉澶辫触";
             }
             else
@@ -1805,7 +1830,7 @@
         }
         #endregion
 
-        #region銆怑xcel涓婁紶鏁版嵁楠岃瘉,渚涙柟娓呭崟銆�
+        #region銆怑xcel涓婁紶鏁版嵁楠岃瘉,寰�鏉ュ崟浣嶆竻鍗曘��
         public static List<ExcelErro> FourData(string FileCode, out string StuCode, out string message, out int count)
         {
             message = "";
@@ -1813,64 +1838,132 @@
             count = 0;
             string sql = "";
             DataTable dt;
+            var dynamicParams = new DynamicParameters();
             List<ExcelErro> list = new List<ExcelErro>();
+            DataTable excelTable = new DataTable();
+            list = ImportExcel.ExcelToTableErro(FileCode);    //楠岃瘉Excel鏁版嵁蹇呭~瀛楁鏄惁涓虹┖銆佸敮涓�瀛楁鏄惁閲嶅
+            excelTable = ImportExcel.ExcelToTable(FileCode);  //鑾峰彇Excel鏁版嵁
+            for (int i = 0; i < excelTable.Rows.Count; i++)
+            {
+                if (excelTable.Rows[i][1].ToString().Trim() != null && excelTable.Rows[i][1].ToString().Trim() != "")
+                {
+                    sql = @"select code  from TCustomer where code=@code";
 
+                    dynamicParams.Add("@code", excelTable.Rows[i][1].ToString().Trim());
+                    dt = DapperHelper.selectdata(sql, dynamicParams);
+                    if (dt.Rows.Count > 0)
+                    {
+                        ExcelErro erro = new ExcelErro();
+                        erro.RoeNumber = "/";
+                        erro.ErrorField = "{寰�鏉ュ崟浣嶇紪鐮�(鍞竴)}";
+                        erro.ErrorCont = "寰�鏉ュ崟浣嶈〃:{寰�鏉ュ崟浣嶇紪鐮�(鍞竴)}瀛楁" + excelTable.Rows[i][1].ToString().Trim() + "宸插瓨鍦�";
+                        list.Add(erro);
+                    }
+                }
+            }
+            if (list.Count > 0)
+            {
+                int index = 0;
+                foreach (ExcelErro item in list)
+                {
+                    index++;
+                    item.Seq = index.ToString();
+                }
+                StuCode = "301";
+                message = "鏁版嵁楠岃瘉澶辫触";
+            }
+            else
+            {
+                StuCode = "200";
+                message = "鏁版嵁楠岃瘉鎴愬姛";
+                count = excelTable.Rows.Count;
+            }
             return list;
         }
         #endregion
 
-        #region銆怑xcel涓婁紶鏁版嵁楠岃瘉,瀹㈡埛娓呭崟銆�
-        public static List<ExcelErro> FiveData(string FileCode, out string StuCode, out string message, out int count)
-        {
-            message = "";
-            StuCode = "";
-            count = 0;
-            string sql = "";
-            DataTable dt;
-            List<ExcelErro> list = new List<ExcelErro>();
-
-            return list;
-        }
-        #endregion
-
-        #region銆怑xcel涓婁紶鏁版嵁楠岃瘉,浠撳簱瀹氫箟銆�
+        #region銆怑xcel涓婁紶鏁版嵁楠岃瘉,浠撳簱銆佸簱浣嶅畾涔夈��
         public static List<ExcelErro> SixOneData(string FileCode, out string StuCode, out string message, out int count)
         {
             message = "";
             StuCode = "";
             count = 0;
             string sql = "";
+            var dynamicParams = new DynamicParameters();
             DataTable dt;
             List<ExcelErro> list = new List<ExcelErro>();
-
-            return list;
-        }
-        #endregion
-
-        #region銆怑xcel涓婁紶鏁版嵁楠岃瘉,搴撳尯瀹氫箟銆�
-        public static List<ExcelErro> SixTwoData(string FileCode, out string StuCode, out string message, out int count)
-        {
-            message = "";
-            StuCode = "";
-            count = 0;
-            string sql = "";
-            DataTable dt;
-            List<ExcelErro> list = new List<ExcelErro>();
-
-            return list;
-        }
-        #endregion
-
-        #region銆怑xcel涓婁紶鏁版嵁楠岃瘉,搴撲綅瀹氫箟銆�
-        public static List<ExcelErro> SixThreeData(string FileCode, out string StuCode, out string message, out int count)
-        {
-            message = "";
-            StuCode = "";
-            count = 0;
-            string sql = "";
-            DataTable dt;
-            List<ExcelErro> list = new List<ExcelErro>();
-
+            List<DataTable> excelTable = new List<DataTable>();
+            list = ImportExcel.ExcelToTableListErro(FileCode);    //楠岃瘉Excel鏁版嵁蹇呭~瀛楁鏄惁涓虹┖銆佸敮涓�瀛楁鏄惁閲嶅
+            excelTable = ImportExcel.ExcelToTableList(FileCode);  //鑾峰彇Excel鏁版嵁
+            //浠撳簱琛�
+            for (int j = 0; j < excelTable[0].Rows.Count; j++)
+            {
+                if (excelTable[0].Rows[j][1].ToString().Trim() != null && excelTable[0].Rows[j][1].ToString().Trim() != "")
+                {
+                    sql = @"select *  from T_Sec_Stck where code=@code";
+                    dynamicParams.Add("@code", excelTable[0].Rows[j][1].ToString().Trim());
+                    dt = DapperHelper.selectdata(sql, dynamicParams);
+                    if (dt.Rows.Count > 0)
+                    {
+                        ExcelErro erro = new ExcelErro();
+                        erro.RoeNumber = "/";
+                        erro.ErrorField = "{浠撳簱缂栧彿(鍞竴)}";
+                        erro.ErrorCont = "浠撳簱琛�:{浠撳簱缂栧彿(鍞竴)}瀛楁" + excelTable[0].Rows[j][1].ToString().Trim() + "宸插瓨鍦�";
+                        list.Add(erro);
+                    }
+                }
+            }
+            //搴撲綅琛�
+            for (int k = 0; k < excelTable[1].Rows.Count; k++)
+            {
+                if (excelTable[1].Rows[k][1].ToString().Trim() != null && excelTable[1].Rows[k][1].ToString().Trim() != "")
+                {
+                    sql = @"select *  from T_Sec_Loca where code=@code";
+                    dynamicParams.Add("@code", excelTable[1].Rows[k][1].ToString().Trim());
+                    dt = DapperHelper.selectdata(sql, dynamicParams);
+                    if (dt.Rows.Count > 0)
+                    {
+                        ExcelErro erro = new ExcelErro();
+                        erro.RoeNumber = "/";
+                        erro.ErrorField = "{搴撲綅缂栧彿(鍞竴)}";
+                        erro.ErrorCont = "搴撲綅琛�:{搴撲綅缂栧彿(鍞竴)}瀛楁" + excelTable[1].Rows[k][2].ToString().Trim() + "宸插瓨鍦�";
+                        list.Add(erro);
+                    }
+                }
+            }
+            //鍒ゆ柇瀛愯〃澶栭敭涓嶅瓨鍦ㄤ簬涓昏〃涓婚敭涓殑鏁版嵁
+            var dt3 = from r in excelTable[1].AsEnumerable()
+                      where !(
+                          from rr in excelTable[0].AsEnumerable()
+                          select rr.Field<string>("浠撳簱缂栧彿(鍞竴)")
+                      ).Contains(r.Field<string>("鎵�灞炰粨搴撶紪鐮�"))
+                      select r;
+            List<DataRow> listRow = dt3.ToList();
+            if (listRow.Count > 0)
+            {
+                ExcelErro erro = new ExcelErro();
+                erro.RoeNumber = "/";
+                erro.ErrorField = "{鎵�灞炰粨搴撶紪鐮亇";
+                erro.ErrorCont = "搴撲綅琛�:{鎵�灞炰粨搴撶紪鐮亇瀛楁涓湁鍊煎湪浠撳簱琛�:{浠撳簱缂栧彿(鍞竴)}涓笉瀛樺湪";
+                list.Add(erro);
+            }
+            if (list.Count > 0)
+            {
+                int index = 0;
+                foreach (ExcelErro item in list)
+                {
+                    index++;
+                    item.Seq = index.ToString();
+                }
+                StuCode = "301";
+                message = "鏁版嵁楠岃瘉澶辫触";
+            }
+            else
+            {
+                StuCode = "200";
+                message = "鏁版嵁楠岃瘉鎴愬姛";
+                count = excelTable[0].Rows.Count + excelTable[1].Rows.Count;
+            }
             return list;
         }
         #endregion
@@ -2189,27 +2282,27 @@
                         {
                             UserCode = excelTable[1].Rows[i][1].ToString().Trim(),
                             UserName = excelTable[1].Rows[i][2].ToString().Trim(),
-                            password= excelTable[1].Rows[i][4].ToString().Trim(),
-                            Enable= Enable,
-                            Mobile= excelTable[1].Rows[i][5].ToString().Trim(),
-                            CreateDate= DateTime.Now.ToString(),
-                            Email= excelTable[1].Rows[i][6].ToString().Trim(),
-                            Operator= User,
-                            StuOrg= excelTable[1].Rows[i][7].ToString().Trim(),
-                            wagetype= WageType
+                            password = excelTable[1].Rows[i][4].ToString().Trim(),
+                            Enable = Enable,
+                            Mobile = excelTable[1].Rows[i][5].ToString().Trim(),
+                            CreateDate = DateTime.Now.ToString(),
+                            Email = excelTable[1].Rows[i][6].ToString().Trim(),
+                            Operator = User,
+                            StuOrg = excelTable[1].Rows[i][7].ToString().Trim(),
+                            wagetype = WageType
                         }
                     });
                 }
                 bool aa = DapperHelper.DoTransaction(list);
                 if (aa)
                 {
-                    StuCode = "300";
-                    message = "瀵煎叆澶辫触锛�";
+                    StuCode = "200";
+                    message = "瀵煎叆鎴愬姛锛�";
                 }
                 else
                 {
-                    StuCode = "200";
-                    message = "瀵煎叆鎴愬姛锛�";
+                    StuCode = "300";
+                    message = "瀵煎叆澶辫触锛�";
                 }
             }
             catch (Exception e)
@@ -2273,13 +2366,13 @@
                 bool aa = DapperHelper.DoTransaction(list);
                 if (aa)
                 {
-                    StuCode = "300";
-                    message = "瀵煎叆澶辫触锛�";
+                    StuCode = "200";
+                    message = "瀵煎叆鎴愬姛锛�";
                 }
                 else
                 {
-                    StuCode = "200";
-                    message = "瀵煎叆鎴愬姛锛�";
+                    StuCode = "300";
+                    message = "瀵煎叆澶辫触锛�";
                 }
             }
             catch (Exception e)
@@ -2309,14 +2402,70 @@
         }
         #endregion
 
-        #region銆怑xcel鏁版嵁涓婁紶,渚涙柟娓呭崟銆�
+        #region銆怑xcel鏁版嵁涓婁紶,寰�鏉ュ崟浣嶆竻鍗曘��
         public static string FourSubmit(string FileCode, string User, out string StuCode)
         {
             string message = "";
             StuCode = "";
+            string sql = "";
+            DataTable dt;
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
             try
             {
+                list.Clear();
+                DataTable excelTable = new DataTable();
+                excelTable = ImportExcel.ExcelToTable(FileCode);
+                //瀵煎叆寰�鏉ュ崟浣嶈〃
+                for (int i = 0; i < excelTable.Rows.Count; i++)
+                {
+                    string WGType = "", WXType = "", KHType = "";
+                    switch (excelTable.Rows[i][3].ToString().Trim())
+                    {
+                        case "澶栬喘渚涙柟":
+                            WGType = "WG";
+                            break;
+                        case "澶栧崗渚涙柟":
+                            WXType = "WX";
+                            break;
+                        case "瀹㈡埛":
+                            KHType = "KH";
+                            break;
+                        default:
+                            break;
+                    }
 
+                    sql = @"insert into TCustomer(code,name,mtype,conttacts,conttphone,addr,lm_user,lm_date,btype,htype) 
+                            values(@code,@name,@mtype,@conttacts,@conttphone,@addr,@Operator,@CreateDate,@btype,@htype)";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            code = excelTable.Rows[i][1].ToString().Trim(),
+                            name = excelTable.Rows[i][2].ToString().Trim(),
+                            mtype = WGType,
+                            conttacts = excelTable.Rows[i][4].ToString().Trim(),
+                            conttphone = excelTable.Rows[i][5].ToString().Trim(),
+                            addr = excelTable.Rows[i][6].ToString().Trim(),
+                            Operator = User,
+                            CreateDate = DateTime.Now.ToString(),
+                            btype = WXType,
+                            htype = KHType
+                        }
+                    });
+                }
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    StuCode = "200";
+                    message = "瀵煎叆鎴愬姛锛�";
+                }
+                else
+                {
+                    StuCode = "300";
+                    message = "瀵煎叆澶辫触锛�";
+                }
             }
             catch (Exception e)
             {
@@ -2327,68 +2476,67 @@
         }
         #endregion
 
-        #region銆怑xcel鏁版嵁涓婁紶,瀹㈡埛娓呭崟銆�
-        public static string FiveSubmit(string FileCode, string User, out string StuCode)
-        {
-            string message = "";
-            StuCode = "";
-            try
-            {
-
-            }
-            catch (Exception e)
-            {
-                StuCode = "300";
-                message = e.Message;
-            }
-            return message;
-        }
-        #endregion
-
-        #region銆怑xcel鏁版嵁涓婁紶,浠撳簱瀹氫箟銆�
+        #region銆怑xcel鏁版嵁涓婁紶,浠撳簱銆佸簱浣嶅畾涔夈��
         public static string SixOneSubmit(string FileCode, string User, out string StuCode)
         {
             string message = "";
             StuCode = "";
+            string sql = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
             try
             {
-
-            }
-            catch (Exception e)
-            {
-                StuCode = "300";
-                message = e.Message;
-            }
-            return message;
-        }
-        #endregion
-
-        #region銆怑xcel鏁版嵁涓婁紶,搴撳尯瀹氫箟銆�
-        public static string SixTwoSubmit(string FileCode, string User, out string StuCode)
-        {
-            string message = "";
-            StuCode = "";
-            try
-            {
-
-            }
-            catch (Exception e)
-            {
-                StuCode = "300";
-                message = e.Message;
-            }
-            return message;
-        }
-        #endregion
-
-        #region銆怑xcel鏁版嵁涓婁紶,搴撲綅瀹氫箟銆�
-        public static string SixThreeSubmit(string FileCode, string User, out string StuCode)
-        {
-            string message = "";
-            StuCode = "";
-            try
-            {
-
+                list.Clear();
+                List<DataTable> excelTable = new List<DataTable>();
+                excelTable = ImportExcel.ExcelToTableList(FileCode);
+                //瀵煎叆浠撳簱
+                for (int k = 0; k < excelTable[0].Rows.Count; k++)
+                {
+                    sql = @"insert into T_Sec_Stck(code,name,description,lm_user,lm_date) 
+                            values(@code,@name,@description,@Operator,@CreateDate)";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            code = excelTable[0].Rows[k][1].ToString().Trim(),
+                            name = excelTable[0].Rows[k][2].ToString().Trim(),
+                            description = excelTable[0].Rows[k][3].ToString().Trim(),
+                            CreateDate = DateTime.Now.ToString(),
+                            Operator = User
+                        }
+                    });
+                }
+                //瀵煎叆搴撲綅
+                for (int i = 0; i < excelTable[1].Rows.Count; i++)
+                {
+                    sql = @"insert into T_Sec_Loca(code,name,description,stock_code,lm_user,lm_date) 
+                            values(@code,@name,@description,@stock_code,@Operator,@CreateDate)";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            code = excelTable[1].Rows[i][1].ToString().Trim(),
+                            name = excelTable[1].Rows[i][2].ToString().Trim(),
+                            stock_code = excelTable[1].Rows[i][3].ToString().Trim(),
+                            description = excelTable[1].Rows[i][4].ToString().Trim(),
+                            Operator = User,
+                            CreateDate = DateTime.Now.ToString()
+                        }
+                    });
+                }
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    StuCode = "200";
+                    message = "瀵煎叆鎴愬姛锛�";
+                }
+                else
+                {
+                    StuCode = "300";
+                    message = "瀵煎叆澶辫触锛�";
+                }
             }
             catch (Exception e)
             {
diff --git a/VueWebApi/Tools/PrintMessage.cs b/VueWebApi/Tools/PrintMessage.cs
new file mode 100644
index 0000000..1638cf2
--- /dev/null
+++ b/VueWebApi/Tools/PrintMessage.cs
@@ -0,0 +1,24 @@
+锘縰sing Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Net;
+using System.Net.Http;
+using System.Web;
+
+namespace VueWebApi.Tools
+{
+    public class PrintMessage
+    {
+        public string code { get; set; }
+        public string Message { get; set; }
+        public DataTable data { get; set; }
+
+        public HttpResponseMessage ResponseMess(ToMessage mes)
+        {
+            HttpResponseMessage result = new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(JsonConvert.SerializeObject(mes), System.Text.Encoding.UTF8) };
+            return result;
+        }
+    }
+}
\ No newline at end of file
diff --git a/VueWebApi/VueWebApi.csproj b/VueWebApi/VueWebApi.csproj
index 50959e4..1b62773 100644
--- a/VueWebApi/VueWebApi.csproj
+++ b/VueWebApi/VueWebApi.csproj
@@ -44,6 +44,7 @@
     <DefineConstants>TRACE</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
+    <DocumentationFile>bin\VueWebApi.xml</DocumentationFile>
   </PropertyGroup>
   <ItemGroup>
     <Reference Include="BouncyCastle.Crypto, Version=1.8.9.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL">
@@ -54,6 +55,20 @@
     </Reference>
     <Reference Include="FastReport">
       <HintPath>..\..\..\FastReports\FastReport.Net\FastReport.dll</HintPath>
+    </Reference>
+    <Reference Include="FastReport.Bars, Version=2014.2.3.0, Culture=neutral, PublicKeyToken=db7e5ce63278458c, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>C:\Users\YL\Desktop\鎵撳嵃\鎵撳嵃\Rework\Rework\bin\Debug\FastReport.Bars.dll</HintPath>
+    </Reference>
+    <Reference Include="FastReport.Editor, Version=2014.2.3.0, Culture=neutral, PublicKeyToken=db7e5ce63278458c, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>C:\Users\YL\Desktop\鎵撳嵃\鎵撳嵃\Rework\Rework\bin\Debug\FastReport.Editor.dll</HintPath>
+    </Reference>
+    <Reference Include="FastReport.Service">
+      <HintPath>C:\Users\YL\Desktop\鎵撳嵃\鎵撳嵃\Rework\Rework\bin\Debug\FastReport.Service.dll</HintPath>
+    </Reference>
+    <Reference Include="FastReport.VSDesign">
+      <HintPath>C:\Users\YL\Desktop\鎵撳嵃\鎵撳嵃\Rework\Rework\bin\Debug\FastReport.VSDesign.dll</HintPath>
     </Reference>
     <Reference Include="FastReport.Web">
       <HintPath>..\..\..\FastReports\FastReport.Net\FastReport.Web.dll</HintPath>
@@ -67,10 +82,28 @@
     <Reference Include="log4net, Version=2.0.14.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
       <HintPath>..\packages\log4net.2.0.14\lib\net45\log4net.dll</HintPath>
     </Reference>
+    <Reference Include="Microsoft.AspNetCore.Http.Abstractions, Version=2.2.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+      <HintPath>..\packages\Microsoft.AspNetCore.Http.Abstractions.2.2.0\lib\netstandard2.0\Microsoft.AspNetCore.Http.Abstractions.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.AspNetCore.Http.Features, Version=2.2.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+      <HintPath>..\packages\Microsoft.AspNetCore.Http.Features.2.2.0\lib\netstandard2.0\Microsoft.AspNetCore.Http.Features.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.AspNetCore.Mvc.Abstractions, Version=2.2.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+      <HintPath>..\packages\Microsoft.AspNetCore.Mvc.Abstractions.2.2.0\lib\netstandard2.0\Microsoft.AspNetCore.Mvc.Abstractions.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.AspNetCore.Routing.Abstractions, Version=2.2.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+      <HintPath>..\packages\Microsoft.AspNetCore.Routing.Abstractions.2.2.0\lib\netstandard2.0\Microsoft.AspNetCore.Routing.Abstractions.dll</HintPath>
+    </Reference>
     <Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
       <HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.5.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
     </Reference>
     <Reference Include="Microsoft.CSharp" />
+    <Reference Include="Microsoft.Extensions.Primitives, Version=2.2.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+      <HintPath>..\packages\Microsoft.Extensions.Primitives.2.2.0\lib\netstandard2.0\Microsoft.Extensions.Primitives.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.Net.Http.Headers, Version=2.2.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
+      <HintPath>..\packages\Microsoft.Net.Http.Headers.2.2.0\lib\netstandard2.0\Microsoft.Net.Http.Headers.dll</HintPath>
+    </Reference>
     <Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
       <HintPath>..\packages\Newtonsoft.Json.12.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
     </Reference>
@@ -111,6 +144,9 @@
     <Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
       <HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
     </Reference>
+    <Reference Include="System.CodeDom, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+      <HintPath>..\packages\System.CodeDom.6.0.0\lib\net461\System.CodeDom.dll</HintPath>
+    </Reference>
     <Reference Include="System.Data" />
     <Reference Include="System.Diagnostics.PerformanceCounter, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
       <HintPath>..\packages\System.Diagnostics.PerformanceCounter.5.0.0\lib\net461\System.Diagnostics.PerformanceCounter.dll</HintPath>
@@ -122,6 +158,7 @@
     <Reference Include="System.IO.Pipelines, Version=5.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
       <HintPath>..\packages\System.IO.Pipelines.5.0.1\lib\net461\System.IO.Pipelines.dll</HintPath>
     </Reference>
+    <Reference Include="System.Management" />
     <Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
       <HintPath>..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll</HintPath>
     </Reference>
@@ -137,6 +174,9 @@
     </Reference>
     <Reference Include="System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
       <HintPath>..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Text.Encodings.Web, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+      <HintPath>..\packages\System.Text.Encodings.Web.4.5.0\lib\netstandard2.0\System.Text.Encodings.Web.dll</HintPath>
     </Reference>
     <Reference Include="System.Threading.Channels, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
       <HintPath>..\packages\System.Threading.Channels.5.0.0\lib\net461\System.Threading.Channels.dll</HintPath>
@@ -262,6 +302,7 @@
     <Compile Include="Controllers\ErpSyncMesController.cs" />
     <Compile Include="Controllers\GridReportController.cs" />
     <Compile Include="Controllers\ImportExcelController.cs" />
+    <Compile Include="Controllers\KanBanManagerentController.cs" />
     <Compile Include="Controllers\LoginController.cs" />
     <Compile Include="Controllers\MaterialManagerController.cs" />
     <Compile Include="Controllers\ProductionManagementController.cs" />
@@ -269,11 +310,13 @@
     <Compile Include="Controllers\QualityManagementController.cs" />
     <Compile Include="Controllers\SystemSettingController.cs" />
     <Compile Include="Controllers\ValuesController.cs" />
+    <Compile Include="DDKanBanModel\ShopTopLeft.cs" />
     <Compile Include="DLL\BLL\BasicSettingBLL.cs" />
     <Compile Include="DLL\BLL\DeviceManagerBLL.cs" />
     <Compile Include="DLL\BLL\ErpSyncMesBLL.cs" />
     <Compile Include="DLL\BLL\ExcelCheckBLL.cs" />
     <Compile Include="DLL\BLL\GridReportBLL.cs" />
+    <Compile Include="DLL\BLL\KanBanManagerentBLL.cs" />
     <Compile Include="DLL\BLL\LoginBLL.cs" />
     <Compile Include="DLL\BLL\MaterialManagerBLL.cs" />
     <Compile Include="DLL\BLL\ProductionManagementBLL.cs" />
@@ -286,6 +329,7 @@
     <Compile Include="DLL\DAL\ErpSyncMesDAL.cs" />
     <Compile Include="DLL\DAL\ExcelCheckDAL.cs" />
     <Compile Include="DLL\DAL\GridReportDAL.cs" />
+    <Compile Include="DLL\DAL\KanBanManagerentDAL.cs" />
     <Compile Include="DLL\DAL\LoginDAL.cs" />
     <Compile Include="DLL\DAL\MaterialManagerDAL.cs" />
     <Compile Include="DLL\DAL\ProductionManagementDAL.cs" />
@@ -325,6 +369,7 @@
     <Compile Include="Tools\JwtTools.cs" />
     <Compile Include="Tools\LogHelper.cs" />
     <Compile Include="Tools\NPOIHelper.cs" />
+    <Compile Include="Tools\PrintMessage.cs" />
     <Compile Include="Tools\RedisHelper.cs" />
     <Compile Include="Tools\Regedit.cs" />
     <Compile Include="Tools\ScanStartReport.cs" />
@@ -376,6 +421,9 @@
     <Content Include="grf\鎶ュ伐鎵撳嵃鏍囩.grf" />
     <Content Include="grf\澶栧崗鏀舵枡鏍囩.grf" />
     <Content Include="Excel\瑙掕壊娓呭崟.xls" />
+    <Content Include="Excel\浠撳簱搴撲綅娓呭崟.xls" />
+    <Content Include="Excel\寰�鏉ュ崟浣�.xls" />
+    <Content Include="grf\Rework.frx" />
     <None Include="Scripts\jquery-3.4.1.intellisense.js" />
     <Content Include="Scripts\jquery-3.4.1.js" />
     <Content Include="Scripts\jquery-3.4.1.min.js" />
diff --git a/VueWebApi/VueWebApi.csproj.user b/VueWebApi/VueWebApi.csproj.user
index 9bc68ca..ab42bcd 100644
--- a/VueWebApi/VueWebApi.csproj.user
+++ b/VueWebApi/VueWebApi.csproj.user
@@ -10,7 +10,7 @@
     <UseGlobalApplicationHostFile />
     <LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
     <NameOfLastUsedPublishProfile>D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
-    <ProjectView>ShowAllFiles</ProjectView>
+    <ProjectView>ProjectFiles</ProjectView>
     <Controller_SelectedScaffolderID>ApiControllerEmptyScaffolder</Controller_SelectedScaffolderID>
     <Controller_SelectedScaffolderCategoryPath>root/Common/Web API</Controller_SelectedScaffolderCategoryPath>
     <WebStackScaffolding_ControllerDialogWidth>600</WebStackScaffolding_ControllerDialogWidth>
diff --git a/VueWebApi/Web.config b/VueWebApi/Web.config
index 39cfa39..ff7ce4e 100644
--- a/VueWebApi/Web.config
+++ b/VueWebApi/Web.config
@@ -31,7 +31,7 @@
 	</appSettings>
 	<system.web>
 		<compilation debug="true" targetFramework="4.6.1" />
-		<customErrors mode="Off"/>
+		<customErrors mode="Off" />
 		<httpRuntime targetFramework="4.6.1" />
 		<!--session澶辨晥鏃堕棿-->
 		<sessionState mode="InProc" timeout="240">
@@ -114,6 +114,18 @@
 				<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
 				<bindingRedirect oldVersion="0.0.0.0-4.1.1.3" newVersion="4.0.0.0" />
 			</dependentAssembly>
+			<dependentAssembly>
+				<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+				<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
+			</dependentAssembly>
+			<dependentAssembly>
+				<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+				<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
+			</dependentAssembly>
+			<dependentAssembly>
+				<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+				<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
+			</dependentAssembly>
 		</assemblyBinding>
 	</runtime>
 	<system.codedom>
diff --git a/VueWebApi/bin/FastReport.Service.dll.config b/VueWebApi/bin/FastReport.Service.dll.config
new file mode 100644
index 0000000..518ccae
--- /dev/null
+++ b/VueWebApi/bin/FastReport.Service.dll.config
@@ -0,0 +1,72 @@
+锘�<?xml version="1.0"?>
+<configuration>
+  <appSettings>
+    <!-- path to folder with reports -->
+    <add key="FastReport.ReportsPath" value="C:\Program files\FastReports\FastReport.Net\Demos\WCF" />
+    <!-- name of connection string for reports -->
+    <add key="FastReport.ConnectionStringName" value="FastReportDemo" />
+    <!-- Comma-separated list of available formats PDF,DOCX,XLSX,PPTX,RTF,ODS,ODT,MHT,CSV,DBF,XML,TXT,FPX. 
+    You can delete any or change order in this list. -->
+    <add key="FastReport.Gear" value="PDF,DOCX,XLSX,PPTX,RTF,ODS,ODT,MHT,CSV,DBF,XML,TXT,FPX" />
+  </appSettings>
+  <connectionStrings>
+     <!-- you need change path to database to your own -->
+     <add name="FastReportDemo" connectionString="XsdFile=;XmlFile=C:\MyProjects\fr.net\Demos\Reports\nwind.xml"/>
+  </connectionStrings>
+  <system.web>
+    <compilation debug="true" />
+    <membership defaultProvider="ClientAuthenticationMembershipProvider">
+      <providers>
+        <add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
+      </providers>
+    </membership>
+    <roleManager defaultProvider="ClientRoleProvider" enabled="true">
+      <providers>
+        <add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
+      </providers>
+    </roleManager>
+  </system.web>
+  <!-- When deploying the service library project, the content of the config file must be added to the host's 
+  app.config file. System.Configuration does not support config files for libraries. -->
+  <system.serviceModel>
+    <services>
+      <service behaviorConfiguration="FastReportServiceBehavior" name="FastReport.Service.ReportService">
+        <endpoint address="" binding="wsHttpBinding" contract="FastReport.Service.IFastReportService">
+          <identity>
+            <dns value="localhost" />
+          </identity>
+        </endpoint>
+        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
+        <host>
+          <baseAddresses>
+            <add baseAddress="http://localhost:8732/FastReportService/" />
+          </baseAddresses>
+        </host>
+      </service>
+    </services>
+    <behaviors>
+      <serviceBehaviors>
+        <behavior name="FastReportServiceBehavior">
+          <serviceMetadata httpGetEnabled="True" />
+          <serviceDebug includeExceptionDetailInFaults="True" />
+        </behavior>
+      </serviceBehaviors>
+    </behaviors>
+    <bindings>
+      <basicHttpBinding>
+        <binding messageEncoding="Mtom"
+          closeTimeout="00:02:00" openTimeout="00:02:00"
+          receiveTimeout="00:10:00" sendTimeout="00:02:00"
+          maxReceivedMessageSize="67108864" maxBufferSize="65536"
+          transferMode="Streamed">
+          <security mode="None">
+            <transport clientCredentialType="None" />
+          </security>
+        </binding>
+      </basicHttpBinding>
+    </bindings>
+  </system.serviceModel>
+  <startup>
+    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
+  </startup>
+</configuration>
\ No newline at end of file
diff --git a/VueWebApi/bin/Microsoft.AspNetCore.Http.Abstractions.xml b/VueWebApi/bin/Microsoft.AspNetCore.Http.Abstractions.xml
new file mode 100644
index 0000000..6e1ad17
--- /dev/null
+++ b/VueWebApi/bin/Microsoft.AspNetCore.Http.Abstractions.xml
@@ -0,0 +1,1555 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.AspNetCore.Http.Abstractions</name>
+    </assembly>
+    <members>
+        <member name="T:Microsoft.Extensions.Internal.ActivatorUtilities">
+            <summary>
+            Helper code for the various activator services.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.CreateInstance(System.IServiceProvider,System.Type,System.Object[])">
+            <summary>
+            Instantiate a type with constructor arguments provided directly and/or from an <see cref="T:System.IServiceProvider"/>.
+            </summary>
+            <param name="provider">The service provider used to resolve dependencies</param>
+            <param name="instanceType">The type to activate</param>
+            <param name="parameters">Constructor arguments not provided by the <paramref name="provider"/>.</param>
+            <returns>An activated object of type instanceType</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.CreateFactory(System.Type,System.Type[])">
+            <summary>
+            Create a delegate that will instantiate a type with constructor arguments provided directly
+            and/or from an <see cref="T:System.IServiceProvider"/>.
+            </summary>
+            <param name="instanceType">The type to activate</param>
+            <param name="argumentTypes">
+            The types of objects, in order, that will be passed to the returned function as its second parameter
+            </param>
+            <returns>
+            A factory that will instantiate instanceType using an <see cref="T:System.IServiceProvider"/>
+            and an argument array containing objects matching the types defined in argumentTypes
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.CreateInstance``1(System.IServiceProvider,System.Object[])">
+            <summary>
+            Instantiate a type with constructor arguments provided directly and/or from an <see cref="T:System.IServiceProvider"/>.
+            </summary>
+            <typeparam name="T">The type to activate</typeparam>
+            <param name="provider">The service provider used to resolve dependencies</param>
+            <param name="parameters">Constructor arguments not provided by the <paramref name="provider"/>.</param>
+            <returns>An activated object of type T</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.GetServiceOrCreateInstance``1(System.IServiceProvider)">
+            <summary>
+            Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+            </summary>
+            <typeparam name="T">The type of the service</typeparam>
+            <param name="provider">The service provider used to resolve dependencies</param>
+            <returns>The resolved service or created instance</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.GetServiceOrCreateInstance(System.IServiceProvider,System.Type)">
+            <summary>
+            Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+            </summary>
+            <param name="provider">The service provider</param>
+            <param name="type">The type of the service</param>
+            <returns>The resolved service or created instance</returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Internal.ActivatorUtilitiesConstructorAttribute">
+            <summary>
+            Marks the constructor to be used when activating type using <see cref="T:Microsoft.Extensions.Internal.ActivatorUtilities"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Extensions.Internal.ObjectFactory">
+            <summary>
+            The result of <see cref="M:Microsoft.Extensions.Internal.ActivatorUtilities.CreateFactory(System.Type,System.Type[])"/>.
+            </summary>
+            <param name="serviceProvider">The <see cref="T:System.IServiceProvider"/> to get service arguments from.</param>
+            <param name="arguments">Additional constructor arguments.</param>
+            <returns>The instantiated type.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Authentication.AuthenticateInfo">
+            <summary>
+            Used to store the results of an Authenticate call.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticateInfo.Principal">
+            <summary>
+            The <see cref="T:System.Security.Claims.ClaimsPrincipal"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticateInfo.Properties">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticateInfo.Description">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription">
+            <summary>
+            Contains information describing an authentication provider.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription"/> class
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.#ctor(System.Collections.Generic.IDictionary{System.String,System.Object})">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription"/> class
+            </summary>
+            <param name="items"></param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.Items">
+            <summary>
+            Contains metadata about the authentication provider.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.AuthenticationScheme">
+            <summary>
+            Gets or sets the name used to reference the authentication middleware instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.DisplayName">
+            <summary>
+            Gets or sets the display name for the authentication provider.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.Authentication.AuthenticationManager.AutomaticScheme">
+            <summary>
+            Constant used to represent the automatic scheme
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationManager.ForbidAsync">
+            <summary>
+            Creates a challenge for the authentication manager with <see cref="F:Microsoft.AspNetCore.Http.Features.Authentication.ChallengeBehavior.Forbidden"/>.
+            </summary>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that represents the asynchronous challenge operation.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationManager.ForbidAsync(Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties)">
+            <summary>
+            Creates a challenge for the authentication manager with <see cref="F:Microsoft.AspNetCore.Http.Features.Authentication.ChallengeBehavior.Forbidden"/>.
+            </summary>
+            <param name="properties">Additional arbitrary values which may be used by particular authentication types.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that represents the asynchronous challenge operation.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties">
+            <summary>
+            Dictionary used to store state values about the authentication session.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties"/> class
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.#ctor(System.Collections.Generic.IDictionary{System.String,System.String})">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties"/> class
+            </summary>
+            <param name="items"></param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.Items">
+            <summary>
+            State values about the authentication session.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.IsPersistent">
+            <summary>
+            Gets or sets whether the authentication session is persisted across multiple requests.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.RedirectUri">
+            <summary>
+            Gets or sets the full path or absolute URI to be used as an HTTP redirect response value.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.IssuedUtc">
+            <summary>
+            Gets or sets the time at which the authentication ticket was issued.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.ExpiresUtc">
+            <summary>
+            Gets or sets the time at which the authentication ticket expires.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.AllowRefresh">
+            <summary>
+            Gets or sets if refreshing the authentication session should be allowed.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.ConnectionInfo.Id">
+            <summary>
+            Gets or sets a unique identifier to represent this connection.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.CookieBuilder">
+            <summary>
+            Defines settings used to create a cookie.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.Name">
+            <summary>
+            The name of the cookie.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.Path">
+            <summary>
+            The cookie path.
+            </summary>
+            <remarks>
+            Determines the value that will set on <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.Path"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.Domain">
+            <summary>
+            The domain to associate the cookie with.
+            </summary>
+            <remarks>
+            Determines the value that will set on <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.Domain"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.HttpOnly">
+            <summary>
+            Indicates whether a cookie is accessible by client-side script.
+            </summary>
+            <remarks>
+            Determines the value that will set on <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.HttpOnly"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.SameSite">
+            <summary>
+            The SameSite attribute of the cookie. The default value is <see cref="F:Microsoft.AspNetCore.Http.SameSiteMode.Lax"/>
+            </summary>
+            <remarks>
+            Determines the value that will set on <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.SameSite"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.SecurePolicy">
+            <summary>
+            The policy that will be used to determine <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.Secure"/>.
+            This is determined from the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> passed to <see cref="M:Microsoft.AspNetCore.Http.CookieBuilder.Build(Microsoft.AspNetCore.Http.HttpContext,System.DateTimeOffset)"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.Expiration">
+            <summary>
+            Gets or sets the lifespan of a cookie.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.MaxAge">
+            <summary>
+            Gets or sets the max-age for the cookie.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.IsEssential">
+            <summary>
+            Indicates if this cookie is essential for the application to function correctly. If true then
+            consent policy checks may be bypassed. The default value is false.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.CookieBuilder.Build(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Creates the cookie options from the given <paramref name="context"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.</param>
+            <returns>The cookie options.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.CookieBuilder.Build(Microsoft.AspNetCore.Http.HttpContext,System.DateTimeOffset)">
+            <summary>
+            Creates the cookie options from the given <paramref name="context"/> with an expiration based on <paramref name="expiresFrom"/> and <see cref="P:Microsoft.AspNetCore.Http.CookieBuilder.Expiration"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.</param>
+            <param name="expiresFrom">The time to use as the base for computing <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.Expires" />.</param>
+            <returns>The cookie options.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.CookieSecurePolicy">
+            <summary>
+            Determines how cookie security properties are set.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.CookieSecurePolicy.SameAsRequest">
+            <summary>
+            If the URI that provides the cookie is HTTPS, then the cookie will only be returned to the server on 
+            subsequent HTTPS requests. Otherwise if the URI that provides the cookie is HTTP, then the cookie will 
+            be returned to the server on all HTTP and HTTPS requests. This is the default value because it ensures
+            HTTPS for all authenticated requests on deployed servers, and also supports HTTP for localhost development 
+            and for servers that do not have HTTPS support.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.CookieSecurePolicy.Always">
+            <summary>
+            Secure is always marked true. Use this value when your login page and all subsequent pages
+            requiring the authenticated identity are HTTPS. Local development will also need to be done with HTTPS urls.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.CookieSecurePolicy.None">
+            <summary>
+            Secure is not marked true. Use this value when your login page is HTTPS, but other pages
+            on the site which are HTTP also require authentication information. This setting is not recommended because
+            the authentication information provided with an HTTP request may be observed and used by other computers
+            on your local network or wireless connection.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HeaderDictionaryExtensions.Append(Microsoft.AspNetCore.Http.IHeaderDictionary,System.String,Microsoft.Extensions.Primitives.StringValues)">
+            <summary>
+            Add new values. Each item remains a separate array entry.
+            </summary>
+            <param name="headers">The <see cref="T:Microsoft.AspNetCore.Http.IHeaderDictionary"/> to use.</param>
+            <param name="key">The header name.</param>
+            <param name="value">The header value.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HeaderDictionaryExtensions.AppendCommaSeparatedValues(Microsoft.AspNetCore.Http.IHeaderDictionary,System.String,System.String[])">
+            <summary>
+            Quotes any values containing commas, and then comma joins all of the values with any existing values.
+            </summary>
+            <param name="headers">The <see cref="T:Microsoft.AspNetCore.Http.IHeaderDictionary"/> to use.</param>
+            <param name="key">The header name.</param>
+            <param name="values">The header values.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HeaderDictionaryExtensions.GetCommaSeparatedValues(Microsoft.AspNetCore.Http.IHeaderDictionary,System.String)">
+            <summary>
+            Get the associated values from the collection separated into individual values.
+            Quoted values will not be split, and the quotes will be removed.
+            </summary>
+            <param name="headers">The <see cref="T:Microsoft.AspNetCore.Http.IHeaderDictionary"/> to use.</param>
+            <param name="key">The header name.</param>
+            <returns>the associated values from the collection separated into individual values, or StringValues.Empty if the key is not present.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HeaderDictionaryExtensions.SetCommaSeparatedValues(Microsoft.AspNetCore.Http.IHeaderDictionary,System.String,System.String[])">
+            <summary>
+            Quotes any values containing commas, and then comma joins all of the values.
+            </summary>
+            <param name="headers">The <see cref="T:Microsoft.AspNetCore.Http.IHeaderDictionary"/> to use.</param>
+            <param name="key">The header name.</param>
+            <param name="values">The header values.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HttpResponseWritingExtensions">
+            <summary>
+            Convenience methods for writing to the response.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponseWritingExtensions.WriteAsync(Microsoft.AspNetCore.Http.HttpResponse,System.String,System.Threading.CancellationToken)">
+            <summary>
+            Writes the given text to the response body. UTF-8 encoding will be used.
+            </summary>
+            <param name="response">The <see cref="T:Microsoft.AspNetCore.Http.HttpResponse"/>.</param>
+            <param name="text">The text to write to the response.</param>
+            <param name="cancellationToken">Notifies when request operations should be cancelled.</param>
+            <returns>A task that represents the completion of the write operation.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponseWritingExtensions.WriteAsync(Microsoft.AspNetCore.Http.HttpResponse,System.String,System.Text.Encoding,System.Threading.CancellationToken)">
+            <summary>
+            Writes the given text to the response body using the given encoding.
+            </summary>
+            <param name="response">The <see cref="T:Microsoft.AspNetCore.Http.HttpResponse"/>.</param>
+            <param name="text">The text to write to the response.</param>
+            <param name="encoding">The encoding to use.</param>
+            <param name="cancellationToken">Notifies when request operations should be cancelled.</param>
+            <returns>A task that represents the completion of the write operation.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ResponseTrailerExtensions.DeclareTrailer(Microsoft.AspNetCore.Http.HttpResponse,System.String)">
+            <summary>
+            Adds the given trailer name to the 'Trailer' response header. This must happen before the response headers are sent.
+            </summary>
+            <param name="response"></param>
+            <param name="trailerName"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ResponseTrailerExtensions.SupportsTrailers(Microsoft.AspNetCore.Http.HttpResponse)">
+            <summary>
+            Indicates if the server supports sending trailer headers for this response.
+            </summary>
+            <param name="response"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ResponseTrailerExtensions.AppendTrailer(Microsoft.AspNetCore.Http.HttpResponse,System.String,Microsoft.Extensions.Primitives.StringValues)">
+            <summary>
+            Adds the given trailer header to the trailers collection to be sent at the end of the response body.
+            Check <see cref="M:Microsoft.AspNetCore.Http.ResponseTrailerExtensions.SupportsTrailers(Microsoft.AspNetCore.Http.HttpResponse)" /> or an InvalidOperationException may be thrown.
+            </summary>
+            <param name="response"></param>
+            <param name="trailerName"></param>
+            <param name="trailerValues"></param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.FragmentString">
+            <summary>
+            Provides correct handling for FragmentString value when needed to generate a URI string
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.FragmentString.Empty">
+            <summary>
+            Represents the empty fragment string. This field is read-only.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.#ctor(System.String)">
+            <summary>
+            Initialize the fragment string with a given value. This value must be in escaped and delimited format with
+            a leading '#' character.
+            </summary>
+            <param name="value">The fragment string to be assigned to the Value property.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.FragmentString.Value">
+            <summary>
+            The escaped fragment string with the leading '#' character
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.FragmentString.HasValue">
+            <summary>
+            True if the fragment string is not empty
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.ToString">
+            <summary>
+            Provides the fragment string escaped in a way which is correct for combining into the URI representation.
+            A leading '#' character will be included unless the Value is null or empty. Characters which are potentially
+            dangerous are escaped.
+            </summary>
+            <returns>The fragment string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.ToUriComponent">
+            <summary>
+            Provides the fragment string escaped in a way which is correct for combining into the URI representation.
+            A leading '#' character will be included unless the Value is null or empty. Characters which are potentially
+            dangerous are escaped.
+            </summary>
+            <returns>The fragment string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.FromUriComponent(System.String)">
+            <summary>
+            Returns an FragmentString given the fragment as it is escaped in the URI format. The string MUST NOT contain any
+            value that is not a fragment.
+            </summary>
+            <param name="uriComponent">The escaped fragment as it appears in the URI format.</param>
+            <returns>The resulting FragmentString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.FromUriComponent(System.Uri)">
+            <summary>
+            Returns an FragmentString given the fragment as from a Uri object. Relative Uri objects are not supported.
+            </summary>
+            <param name="uri">The Uri object</param>
+            <returns>The resulting FragmentString</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HostString">
+            <summary>
+            Represents the host portion of a URI can be used to construct URI's properly formatted and encoded for use in
+            HTTP headers.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.#ctor(System.String)">
+            <summary>
+            Creates a new HostString without modification. The value should be Unicode rather than punycode, and may have a port.
+            IPv4 and IPv6 addresses are also allowed, and also may have ports.
+            </summary>
+            <param name="value"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.#ctor(System.String,System.Int32)">
+            <summary>
+            Creates a new HostString from its host and port parts.
+            </summary>
+            <param name="host">The value should be Unicode rather than punycode. IPv6 addresses must use square braces.</param>
+            <param name="port">A positive, greater than 0 value representing the port in the host string.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HostString.Value">
+            <summary>
+            Returns the original value from the constructor.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HostString.Host">
+            <summary>
+            Returns the value of the host part of the value. The port is removed if it was present.
+            IPv6 addresses will have brackets added if they are missing.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HostString.Port">
+            <summary>
+            Returns the value of the port part of the host, or <value>null</value> if none is found.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.ToString">
+            <summary>
+            Returns the value as normalized by ToUriComponent().
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.ToUriComponent">
+            <summary>
+            Returns the value properly formatted and encoded for use in a URI in a HTTP header.
+            Any Unicode is converted to punycode. IPv6 addresses will have brackets added if they are missing.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.FromUriComponent(System.String)">
+            <summary>
+            Creates a new HostString from the given URI component.
+            Any punycode will be converted to Unicode.
+            </summary>
+            <param name="uriComponent"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.FromUriComponent(System.Uri)">
+            <summary>
+            Creates a new HostString from the host and port of the give Uri instance.
+            Punycode will be converted to Unicode.
+            </summary>
+            <param name="uri"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.MatchesAny(Microsoft.Extensions.Primitives.StringSegment,System.Collections.Generic.IList{Microsoft.Extensions.Primitives.StringSegment})">
+            <summary>
+            Matches the host portion of a host header value against a list of patterns.
+            The host may be the encoded punycode or decoded unicode form so long as the pattern
+            uses the same format.
+            </summary>
+            <param name="value">Host header value with or without a port.</param>
+            <param name="patterns">A set of pattern to match, without ports.</param>
+            <remarks>
+            The port on the given value is ignored. The patterns should not have ports.
+            The patterns may be exact matches like "example.com", a top level wildcard "*"
+            that matches all hosts, or a subdomain wildcard like "*.example.com" that matches
+            "abc.example.com:443" but not "example.com:443".
+            Matching is case insensitive.
+            </remarks>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.Equals(Microsoft.AspNetCore.Http.HostString)">
+            <summary>
+            Compares the equality of the Value property, ignoring case.
+            </summary>
+            <param name="other"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.Equals(System.Object)">
+            <summary>
+            Compares against the given object only if it is a HostString.
+            </summary>
+            <param name="obj"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.GetHashCode">
+            <summary>
+            Gets a hash code for the value.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.op_Equality(Microsoft.AspNetCore.Http.HostString,Microsoft.AspNetCore.Http.HostString)">
+            <summary>
+            Compares the two instances for equality.
+            </summary>
+            <param name="left"></param>
+            <param name="right"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.op_Inequality(Microsoft.AspNetCore.Http.HostString,Microsoft.AspNetCore.Http.HostString)">
+            <summary>
+            Compares the two instances for inequality.
+            </summary>
+            <param name="left"></param>
+            <param name="right"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.GetParts(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment@,Microsoft.Extensions.Primitives.StringSegment@)">
+            <summary>
+            Parses the current value. IPv6 addresses will have brackets added if they are missing.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HttpContext">
+            <summary>
+            Encapsulates all HTTP-specific information about an individual HTTP request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Features">
+            <summary>
+            Gets the collection of HTTP features provided by the server and middleware available on this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Request">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpRequest"/> object for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Response">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpResponse"/> object for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Connection">
+            <summary>
+            Gets information about the underlying connection for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.WebSockets">
+            <summary>
+            Gets an object that manages the establishment of WebSocket connections for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Authentication">
+            <summary>
+            This is obsolete and will be removed in a future version. 
+            The recommended alternative is to use Microsoft.AspNetCore.Authentication.AuthenticationHttpContextExtensions.
+            See https://go.microsoft.com/fwlink/?linkid=845470.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.User">
+            <summary>
+            Gets or sets the user for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Items">
+            <summary>
+            Gets or sets a key/value collection that can be used to share data within the scope of this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.RequestServices">
+            <summary>
+            Gets or sets the <see cref="T:System.IServiceProvider"/> that provides access to the request's service container.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.RequestAborted">
+            <summary>
+            Notifies when the connection underlying this request is aborted and thus request operations should be
+            cancelled.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.TraceIdentifier">
+            <summary>
+            Gets or sets a unique identifier to represent this request in trace logs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Session">
+            <summary>
+            Gets or sets the object used to manage user session data for this request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpContext.Abort">
+            <summary>
+            Aborts the connection underlying this request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HttpRequest">
+            <summary>
+            Represents the incoming side of an individual HTTP request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.HttpContext">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.HttpContext"/> for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Method">
+            <summary>
+            Gets or sets the HTTP method.
+            </summary>
+            <returns>The HTTP method.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Scheme">
+            <summary>
+            Gets or sets the HTTP request scheme.
+            </summary>
+            <returns>The HTTP request scheme.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.IsHttps">
+            <summary>
+            Returns true if the RequestScheme is https.
+            </summary>
+            <returns>true if this request is using https; otherwise, false.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Host">
+            <summary>
+            Gets or sets the Host header. May include the port.
+            </summary>
+            <return>The Host header.</return>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.PathBase">
+            <summary>
+            Gets or sets the RequestPathBase.
+            </summary>
+            <returns>The RequestPathBase.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Path">
+            <summary>
+            Gets or sets the request path from RequestPath.
+            </summary>
+            <returns>The request path from RequestPath.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.QueryString">
+            <summary>
+            Gets or sets the raw query string used to create the query collection in Request.Query.
+            </summary>
+            <returns>The raw query string.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Query">
+            <summary>
+            Gets the query value collection parsed from Request.QueryString.
+            </summary>
+            <returns>The query value collection parsed from Request.QueryString.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Protocol">
+            <summary>
+            Gets or sets the RequestProtocol.
+            </summary>
+            <returns>The RequestProtocol.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Headers">
+            <summary>
+            Gets the request headers.
+            </summary>
+            <returns>The request headers.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Cookies">
+            <summary>
+            Gets the collection of Cookies for this request.
+            </summary>
+            <returns>The collection of Cookies for this request.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.ContentLength">
+            <summary>
+            Gets or sets the Content-Length header.
+            </summary>
+            <returns>The value of the Content-Length header, if any.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.ContentType">
+            <summary>
+            Gets or sets the Content-Type header.
+            </summary>
+            <returns>The Content-Type header.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Body">
+            <summary>
+            Gets or sets the RequestBody Stream.
+            </summary>
+            <returns>The RequestBody Stream.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.HasFormContentType">
+            <summary>
+            Checks the Content-Type header for form types.
+            </summary>
+            <returns>true if the Content-Type header represents a form content type; otherwise, false.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Form">
+            <summary>
+            Gets or sets the request body as a form.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpRequest.ReadFormAsync(System.Threading.CancellationToken)">
+            <summary>
+            Reads the request body if it is a form.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HttpResponse">
+            <summary>
+            Represents the outgoing side of an individual HTTP request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.HttpContext">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Http.HttpResponse.HttpContext"/> for this response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.StatusCode">
+            <summary>
+            Gets or sets the HTTP response code.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.Headers">
+            <summary>
+            Gets the response headers.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.Body">
+            <summary>
+            Gets or sets the response body <see cref="T:System.IO.Stream"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.ContentLength">
+            <summary>
+            Gets or sets the value for the <c>Content-Length</c> response header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.ContentType">
+            <summary>
+            Gets or sets the value for the <c>Content-Type</c> response header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.Cookies">
+            <summary>
+            Gets an object that can be used to manage cookies for this response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.HasStarted">
+            <summary>
+            Gets a value indicating whether response headers have been sent to the client.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.OnStarting(System.Func{System.Object,System.Threading.Tasks.Task},System.Object)">
+            <summary>
+            Adds a delegate to be invoked just before response headers will be sent to the client.
+            </summary>
+            <param name="callback">The delegate to execute.</param>
+            <param name="state">A state object to capture and pass back to the delegate.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.OnStarting(System.Func{System.Threading.Tasks.Task})">
+            <summary>
+            Adds a delegate to be invoked just before response headers will be sent to the client.
+            </summary>
+            <param name="callback">The delegate to execute.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.OnCompleted(System.Func{System.Object,System.Threading.Tasks.Task},System.Object)">
+            <summary>
+            Adds a delegate to be invoked after the response has finished being sent to the client.
+            </summary>
+            <param name="callback">The delegate to invoke.</param>
+            <param name="state">A state object to capture and pass back to the delegate.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.RegisterForDispose(System.IDisposable)">
+            <summary>
+            Registers an object for disposal by the host once the request has finished processing.
+            </summary>
+            <param name="disposable">The object to be disposed.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.OnCompleted(System.Func{System.Threading.Tasks.Task})">
+            <summary>
+            Adds a delegate to be invoked after the response has finished being sent to the client.
+            </summary>
+            <param name="callback">The delegate to invoke.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.Redirect(System.String)">
+            <summary>
+            Returns a temporary redirect response (HTTP 302) to the client.
+            </summary>
+            <param name="location">The URL to redirect the client to. This must be properly encoded for use in http headers
+            where only ASCII characters are allowed.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.Redirect(System.String,System.Boolean)">
+            <summary>
+            Returns a redirect response (HTTP 301 or HTTP 302) to the client.
+            </summary>
+            <param name="location">The URL to redirect the client to. This must be properly encoded for use in http headers
+            where only ASCII characters are allowed.</param>
+            <param name="permanent"><c>True</c> if the redirect is permanent (301), otherwise <c>false</c> (302).</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IMiddleware">
+            <summary>
+            Defines middleware that can be added to the application's request pipeline.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IMiddleware.InvokeAsync(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Http.RequestDelegate)">
+            <summary>
+            Request handling method.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <param name="next">The delegate representing the remaining middleware in the request pipeline.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that represents the execution of this middleware.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IMiddlewareFactory">
+            <summary>
+            Provides methods to create middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IMiddlewareFactory.Create(System.Type)">
+            <summary>
+            Creates a middleware instance for each request.
+            </summary>
+            <param name="middlewareType">The concrete <see cref="T:System.Type"/> of the <see cref="T:Microsoft.AspNetCore.Http.IMiddleware"/>.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Http.IMiddleware"/> instance.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IMiddlewareFactory.Release(Microsoft.AspNetCore.Http.IMiddleware)">
+            <summary>
+            Releases a <see cref="T:Microsoft.AspNetCore.Http.IMiddleware"/> instance at the end of each request.
+            </summary>
+            <param name="middleware">The <see cref="T:Microsoft.AspNetCore.Http.IMiddleware"/> instance to release.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.PathString">
+            <summary>
+            Provides correct escaping for Path and PathBase values when needed to reconstruct a request or redirect URI string
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.PathString.Empty">
+            <summary>
+            Represents the empty path. This field is read-only.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.#ctor(System.String)">
+            <summary>
+            Initialize the path string with a given value. This value must be in unescaped format. Use
+            PathString.FromUriComponent(value) if you have a path value which is in an escaped format.
+            </summary>
+            <param name="value">The unescaped path to be assigned to the Value property.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.PathString.Value">
+            <summary>
+            The unescaped path value
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.PathString.HasValue">
+            <summary>
+            True if the path is not empty
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.ToString">
+            <summary>
+            Provides the path string escaped in a way which is correct for combining into the URI representation.
+            </summary>
+            <returns>The escaped path value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.ToUriComponent">
+            <summary>
+            Provides the path string escaped in a way which is correct for combining into the URI representation.
+            </summary>
+            <returns>The escaped path value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.FromUriComponent(System.String)">
+            <summary>
+            Returns an PathString given the path as it is escaped in the URI format. The string MUST NOT contain any
+            value that is not a path.
+            </summary>
+            <param name="uriComponent">The escaped path as it appears in the URI format.</param>
+            <returns>The resulting PathString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.FromUriComponent(System.Uri)">
+            <summary>
+            Returns an PathString given the path as from a Uri object. Relative Uri objects are not supported.
+            </summary>
+            <param name="uri">The Uri object</param>
+            <returns>The resulting PathString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/>.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,System.StringComparison)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> when compared
+            using the specified comparison option.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="comparisonType">One of the enumeration values that determines how this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and value are compared.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString@)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and returns
+            the remaining segments.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="remaining">The remaining segments after the match.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,System.StringComparison,Microsoft.AspNetCore.Http.PathString@)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> when compared
+            using the specified comparison option and returns the remaining segments.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="comparisonType">One of the enumeration values that determines how this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and value are compared.</param>
+            <param name="remaining">The remaining segments after the match.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString@,Microsoft.AspNetCore.Http.PathString@)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and returns
+            the matched and remaining segments.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="matched">The matched segments with the original casing in the source value.</param>
+            <param name="remaining">The remaining segments after the match.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,System.StringComparison,Microsoft.AspNetCore.Http.PathString@,Microsoft.AspNetCore.Http.PathString@)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> when compared
+            using the specified comparison option and returns the matched and remaining segments.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="comparisonType">One of the enumeration values that determines how this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and value are compared.</param>
+            <param name="matched">The matched segments with the original casing in the source value.</param>
+            <param name="remaining">The remaining segments after the match.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Add(Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Adds two PathString instances into a combined PathString value.
+            </summary>
+            <returns>The combined PathString value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Add(Microsoft.AspNetCore.Http.QueryString)">
+            <summary>
+            Combines a PathString and QueryString into the joined URI formatted string value.
+            </summary>
+            <returns>The joined URI formatted string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Equals(Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Compares this PathString value to another value. The default comparison is StringComparison.OrdinalIgnoreCase.
+            </summary>
+            <param name="other">The second PathString for comparison.</param>
+            <returns>True if both PathString values are equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Equals(Microsoft.AspNetCore.Http.PathString,System.StringComparison)">
+            <summary>
+            Compares this PathString value to another value using a specific StringComparison type
+            </summary>
+            <param name="other">The second PathString for comparison</param>
+            <param name="comparisonType">The StringComparison type to use</param>
+            <returns>True if both PathString values are equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Equals(System.Object)">
+            <summary>
+            Compares this PathString value to another value. The default comparison is StringComparison.OrdinalIgnoreCase.
+            </summary>
+            <param name="obj">The second PathString for comparison.</param>
+            <returns>True if both PathString values are equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.GetHashCode">
+            <summary>
+            Returns the hash code for the PathString value. The hash code is provided by the OrdinalIgnoreCase implementation.
+            </summary>
+            <returns>The hash code</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Equality(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Operator call through to Equals
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>True if both PathString values are equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Inequality(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Operator call through to Equals
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>True if both PathString values are not equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Addition(System.String,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>The ToString combination of both values</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Addition(Microsoft.AspNetCore.Http.PathString,System.String)">
+            <summary>
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>The ToString combination of both values</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Addition(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Operator call through to Add
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>The PathString combination of both values</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Addition(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.QueryString)">
+            <summary>
+            Operator call through to Add
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>The PathString combination of both values</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Implicit(System.String)~Microsoft.AspNetCore.Http.PathString">
+            <summary>
+            Implicitly creates a new PathString from the given string.
+            </summary>
+            <param name="s"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Implicit(Microsoft.AspNetCore.Http.PathString)~System.String">
+            <summary>
+            Implicitly calls ToString().
+            </summary>
+            <param name="path"></param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareIServiceProviderNotAvailable">
+            <summary>
+            '{0}' is not available.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareIServiceProviderNotAvailable(System.Object)">
+            <summary>
+            '{0}' is not available.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareNoInvokeMethod">
+            <summary>
+            No public '{0}' or '{1}' method found for middleware of type '{2}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareNoInvokeMethod(System.Object,System.Object,System.Object)">
+            <summary>
+            No public '{0}' or '{1}' method found for middleware of type '{2}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareNonTaskReturnType">
+            <summary>
+            '{0}' or '{1}' does not return an object of type '{2}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareNonTaskReturnType(System.Object,System.Object,System.Object)">
+            <summary>
+            '{0}' or '{1}' does not return an object of type '{2}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareNoParameters">
+            <summary>
+            The '{0}' or '{1}' method's first argument must be of type '{2}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareNoParameters(System.Object,System.Object,System.Object)">
+            <summary>
+            The '{0}' or '{1}' method's first argument must be of type '{2}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddleMutlipleInvokes">
+            <summary>
+            Multiple public '{0}' or '{1}' methods are available.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddleMutlipleInvokes(System.Object,System.Object)">
+            <summary>
+            Multiple public '{0}' or '{1}' methods are available.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_PathMustStartWithSlash">
+            <summary>
+            The path in '{0}' must start with '/'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_PathMustStartWithSlash(System.Object)">
+            <summary>
+            The path in '{0}' must start with '/'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_InvokeMiddlewareNoService">
+            <summary>
+            Unable to resolve service for type '{0}' while attempting to Invoke middleware '{1}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_InvokeMiddlewareNoService(System.Object,System.Object)">
+            <summary>
+            Unable to resolve service for type '{0}' while attempting to Invoke middleware '{1}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_InvokeDoesNotSupportRefOrOutParams">
+            <summary>
+            The '{0}' method must not have ref or out parameters.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_InvokeDoesNotSupportRefOrOutParams(System.Object)">
+            <summary>
+            The '{0}' method must not have ref or out parameters.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_PortMustBeGreaterThanZero">
+            <summary>
+            The value must be greater than zero.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_PortMustBeGreaterThanZero">
+            <summary>
+            The value must be greater than zero.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareNoMiddlewareFactory">
+            <summary>
+            No service for type '{0}' has been registered.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareNoMiddlewareFactory(System.Object)">
+            <summary>
+            No service for type '{0}' has been registered.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareUnableToCreateMiddleware">
+            <summary>
+            '{0}' failed to create middleware of type '{1}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareUnableToCreateMiddleware(System.Object,System.Object)">
+            <summary>
+            '{0}' failed to create middleware of type '{1}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareExplicitArgumentsNotSupported">
+            <summary>
+            Types that implement '{0}' do not support explicit arguments.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareExplicitArgumentsNotSupported(System.Object)">
+            <summary>
+            Types that implement '{0}' do not support explicit arguments.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.ArgumentCannotBeNullOrEmpty">
+            <summary>
+            Argument cannot be null or empty.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatArgumentCannotBeNullOrEmpty">
+            <summary>
+            Argument cannot be null or empty.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.QueryString">
+            <summary>
+            Provides correct handling for QueryString value when needed to reconstruct a request or redirect URI string
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.QueryString.Empty">
+            <summary>
+            Represents the empty query string. This field is read-only.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.#ctor(System.String)">
+            <summary>
+            Initialize the query string with a given value. This value must be in escaped and delimited format with
+            a leading '?' character. 
+            </summary>
+            <param name="value">The query string to be assigned to the Value property.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.QueryString.Value">
+            <summary>
+            The escaped query string with the leading '?' character
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.QueryString.HasValue">
+            <summary>
+            True if the query string is not empty
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.ToString">
+            <summary>
+            Provides the query string escaped in a way which is correct for combining into the URI representation. 
+            A leading '?' character will be included unless the Value is null or empty. Characters which are potentially
+            dangerous are escaped.
+            </summary>
+            <returns>The query string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.ToUriComponent">
+            <summary>
+            Provides the query string escaped in a way which is correct for combining into the URI representation. 
+            A leading '?' character will be included unless the Value is null or empty. Characters which are potentially
+            dangerous are escaped.
+            </summary>
+            <returns>The query string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.FromUriComponent(System.String)">
+            <summary>
+            Returns an QueryString given the query as it is escaped in the URI format. The string MUST NOT contain any
+            value that is not a query.
+            </summary>
+            <param name="uriComponent">The escaped query as it appears in the URI format.</param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.FromUriComponent(System.Uri)">
+            <summary>
+            Returns an QueryString given the query as from a Uri object. Relative Uri objects are not supported.
+            </summary>
+            <param name="uri">The Uri object</param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.Create(System.String,System.String)">
+            <summary>
+            Create a query string with a single given parameter name and value.
+            </summary>
+            <param name="name">The un-encoded parameter name</param>
+            <param name="value">The un-encoded parameter value</param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.Create(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
+            <summary>
+            Creates a query string composed from the given name value pairs.
+            </summary>
+            <param name="parameters"></param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.Create(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,Microsoft.Extensions.Primitives.StringValues}})">
+            <summary>
+            Creates a query string composed from the given name value pairs.
+            </summary>
+            <param name="parameters"></param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.RequestDelegate">
+            <summary>
+            A function that can process an HTTP request.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the request.</param>
+            <returns>A task that represents the completion of request processing.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.WebSocketManager">
+            <summary>
+            Manages the establishment of WebSocket connections for a specific HTTP request. 
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.WebSocketManager.IsWebSocketRequest">
+            <summary>
+            Gets a value indicating whether the request is a WebSocket establishment request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.WebSocketManager.WebSocketRequestedProtocols">
+            <summary>
+            Gets the list of requested WebSocket sub-protocols.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.WebSocketManager.AcceptWebSocketAsync">
+            <summary>
+            Transitions the request to a WebSocket connection.
+            </summary>
+            <returns>A task representing the completion of the transition.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.WebSocketManager.AcceptWebSocketAsync(System.String)">
+            <summary>
+            Transitions the request to a WebSocket connection using the specified sub-protocol.
+            </summary>
+            <param name="subProtocol">The sub-protocol to use.</param>
+            <returns>A task representing the completion of the transition.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.MapExtensions">
+            <summary>
+            Extension methods for the <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.MapExtensions.Map(Microsoft.AspNetCore.Builder.IApplicationBuilder,Microsoft.AspNetCore.Http.PathString,System.Action{Microsoft.AspNetCore.Builder.IApplicationBuilder})">
+            <summary>
+            Branches the request pipeline based on matches of the given request path. If the request path starts with
+            the given path, the branch is executed.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="pathMatch">The request path to match.</param>
+            <param name="configuration">The branch to take for positive path matches.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware">
+            <summary>
+            Represents a middleware that maps a request path to a sub-request pipeline.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.#ctor(Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Builder.Extensions.MapOptions)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware"/>.
+            </summary>
+            <param name="next">The delegate representing the next middleware in the request pipeline.</param>
+            <param name="options">The middleware options.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Executes the middleware.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <returns>A task that represents the execution of this middleware.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.MapOptions">
+            <summary>
+            Options for the <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.Extensions.MapOptions.PathMatch">
+            <summary>
+            The path to match.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.Extensions.MapOptions.Branch">
+            <summary>
+            The branch taken for a positive match.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware">
+            <summary>
+            Represents a middleware that runs a sub-request pipeline when a given predicate is matched.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.#ctor(Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Builder.Extensions.MapWhenOptions)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware"/>.
+            </summary>
+            <param name="next">The delegate representing the next middleware in the request pipeline.</param>
+            <param name="options">The middleware options.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Executes the middleware.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <returns>A task that represents the execution of this middleware.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenOptions">
+            <summary>
+            Options for the <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.Extensions.MapWhenOptions.Predicate">
+            <summary>
+            The user callback that determines if the branch should be taken.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.Extensions.MapWhenOptions.Branch">
+            <summary>
+            The branch taken for a positive match.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware">
+            <summary>
+            Represents a middleware that extracts the specified path base from request path and postpend it to the request path base.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware.#ctor(Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware"/>.
+            </summary>
+            <param name="next">The delegate representing the next middleware in the request pipeline.</param>
+            <param name="pathBase">The path base to extract.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware.Invoke(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Executes the middleware.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <returns>A task that represents the execution of this middleware.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.MapWhenExtensions">
+            <summary>
+            Extension methods for the <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.MapWhenExtensions.MapWhen(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Func{Microsoft.AspNetCore.Http.HttpContext,System.Boolean},System.Action{Microsoft.AspNetCore.Builder.IApplicationBuilder})">
+            <summary>
+            Branches the request pipeline based on the result of the given predicate.
+            </summary>
+            <param name="app"></param>
+            <param name="predicate">Invoked with the request environment to determine if the branch should be taken</param>
+            <param name="configuration">Configures a branch to take</param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.RunExtensions">
+            <summary>
+            Extension methods for adding terminal middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.RunExtensions.Run(Microsoft.AspNetCore.Builder.IApplicationBuilder,Microsoft.AspNetCore.Http.RequestDelegate)">
+            <summary>
+            Adds a terminal middleware delegate to the application's request pipeline.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="handler">A delegate that handles the request.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.UseExtensions">
+            <summary>
+            Extension methods for adding middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UseExtensions.Use(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Func{Microsoft.AspNetCore.Http.HttpContext,System.Func{System.Threading.Tasks.Task},System.Threading.Tasks.Task})">
+            <summary>
+            Adds a middleware delegate defined in-line to the application's request pipeline.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="middleware">A function that handles the request or calls the given next function.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.UseMiddlewareExtensions">
+            <summary>
+            Extension methods for adding typed middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.UseMiddleware``1(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Object[])">
+            <summary>
+            Adds a middleware type to the application's request pipeline.
+            </summary>
+            <typeparam name="TMiddleware">The middleware type.</typeparam>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="args">The arguments to pass to the middleware type instance's constructor.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.UseMiddleware(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Type,System.Object[])">
+            <summary>
+            Adds a middleware type to the application's request pipeline.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="middleware">The middleware type.</param>
+            <param name="args">The arguments to pass to the middleware type instance's constructor.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.UsePathBaseExtensions">
+            <summary>
+            Extension methods for <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UsePathBaseExtensions.UsePathBase(Microsoft.AspNetCore.Builder.IApplicationBuilder,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Adds a middleware that extracts the specified path base from request path and postpend it to the request path base.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="pathBase">The path base to extract.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.UseWhenExtensions">
+            <summary>
+            Extension methods for <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UseWhenExtensions.UseWhen(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Func{Microsoft.AspNetCore.Http.HttpContext,System.Boolean},System.Action{Microsoft.AspNetCore.Builder.IApplicationBuilder})">
+            <summary>
+            Conditionally creates a branch in the request pipeline that is rejoined to the main pipeline.
+            </summary>
+            <param name="app"></param>
+            <param name="predicate">Invoked with the request environment to determine if the branch should be taken</param>
+            <param name="configuration">Configures a branch to take</param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.IApplicationBuilder">
+            <summary>
+            Defines a class that provides the mechanisms to configure an application's request pipeline.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.IApplicationBuilder.ApplicationServices">
+            <summary>
+            Gets or sets the <see cref="T:System.IServiceProvider"/> that provides access to the application's service container.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.IApplicationBuilder.ServerFeatures">
+            <summary>
+            Gets the set of HTTP features the application's server provides.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.IApplicationBuilder.Properties">
+            <summary>
+            Gets a key/value collection that can be used to share data between middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.IApplicationBuilder.Use(System.Func{Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Http.RequestDelegate})">
+            <summary>
+            Adds a middleware delegate to the application's request pipeline.
+            </summary>
+            <param name="middleware">The middleware delegate.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.IApplicationBuilder.New">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> that shares the <see cref="P:Microsoft.AspNetCore.Builder.IApplicationBuilder.Properties"/> of this
+            <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.
+            </summary>
+            <returns>The new <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.IApplicationBuilder.Build">
+            <summary>
+            Builds the delegate used by this application to process HTTP requests.
+            </summary>
+            <returns>The request handling delegate.</returns>
+        </member>
+    </members>
+</doc>
diff --git a/VueWebApi/bin/Microsoft.AspNetCore.Http.Features.xml b/VueWebApi/bin/Microsoft.AspNetCore.Http.Features.xml
new file mode 100644
index 0000000..4222fde
--- /dev/null
+++ b/VueWebApi/bin/Microsoft.AspNetCore.Http.Features.xml
@@ -0,0 +1,869 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.AspNetCore.Http.Features</name>
+    </assembly>
+    <members>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IFeatureCollection">
+            <summary>
+            Represents a collection of HTTP features.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFeatureCollection.IsReadOnly">
+            <summary>
+            Indicates if the collection can be modified.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFeatureCollection.Revision">
+            <summary>
+            Incremented for each modification and can be used to verify cached results.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFeatureCollection.Item(System.Type)">
+            <summary>
+            Gets or sets a given feature. Setting a null value removes the feature.
+            </summary>
+            <param name="key"></param>
+            <returns>The requested feature, or null if it is not present.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IFeatureCollection.Get``1">
+            <summary>
+            Retrieves the requested feature from the collection.
+            </summary>
+            <typeparam name="TFeature">The feature key.</typeparam>
+            <returns>The requested feature, or null if it is not present.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IFeatureCollection.Set``1(``0)">
+            <summary>
+            Sets the given feature in the collection.
+            </summary>
+            <typeparam name="TFeature">The feature key.</typeparam>
+            <param name="instance">The feature value.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFormFeature.HasFormContentType">
+            <summary>
+            Indicates if the request has a supported form content-type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFormFeature.Form">
+            <summary>
+            The parsed form, if any.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IFormFeature.ReadForm">
+            <summary>
+            Parses the request body as a form.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IFormFeature.ReadFormAsync(System.Threading.CancellationToken)">
+            <summary>
+            Parses the request body as a form.
+            </summary>
+            <param name="cancellationToken"></param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpBodyControlFeature">
+            <summary>
+            Controls the IO behavior for the <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Body"/> and <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Body"/> 
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpBodyControlFeature.AllowSynchronousIO">
+            <summary>
+            Gets or sets a value that controls whether synchronous IO is allowed for the <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Body"/> and <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Body"/> 
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature">
+            <summary>
+            Information regarding the TCP/IP connection carrying the request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.ConnectionId">
+            <summary>
+            The unique identifier for the connection the request was received on. This is primarily for diagnostic purposes.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.RemoteIpAddress">
+            <summary>
+            The IPAddress of the client making the request. Note this may be for a proxy rather than the end user.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.LocalIpAddress">
+            <summary>
+            The local IPAddress on which the request was received.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.RemotePort">
+            <summary>
+            The remote port of the client making the request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.LocalPort">
+            <summary>
+            The local port on which the request was received.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpMaxRequestBodySizeFeature">
+            <summary>
+            Feature to inspect and modify the maximum request body size for a single request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpMaxRequestBodySizeFeature.IsReadOnly">
+            <summary>
+            Indicates whether <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpMaxRequestBodySizeFeature.MaxRequestBodySize"/> is read-only.
+            If true, this could mean that the request body has already been read from
+            or that <see cref="M:Microsoft.AspNetCore.Http.Features.IHttpUpgradeFeature.UpgradeAsync"/> was called.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpMaxRequestBodySizeFeature.MaxRequestBodySize">
+            <summary>
+            The maximum allowed size of the current request body in bytes.
+            When set to null, the maximum request body size is unlimited.
+            This cannot be modified after the reading the request body has started.
+            This limit does not affect upgraded connections which are always unlimited.
+            </summary>
+            <remarks>
+            Defaults to the server's global max request body size limit.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature">
+            <summary>
+            Contains the details of a given request. These properties should all be mutable.
+            None of these properties should ever be set to null.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Protocol">
+            <summary>
+            The HTTP-version as defined in RFC 7230. E.g. "HTTP/1.1"
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Scheme">
+            <summary>
+            The request uri scheme. E.g. "http" or "https". Note this value is not included
+            in the original request, it is inferred by checking if the transport used a TLS
+            connection or not.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Method">
+            <summary>
+            The request method as defined in RFC 7230. E.g. "GET", "HEAD", "POST", etc..
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.PathBase">
+            <summary>
+            The first portion of the request path associated with application root. The value
+            is un-escaped. The value may be string.Empty.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Path">
+            <summary>
+            The portion of the request path that identifies the requested resource. The value
+            is un-escaped. The value may be string.Empty if <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.PathBase"/> contains the
+            full path.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.QueryString">
+            <summary>
+            The query portion of the request-target as defined in RFC 7230. The value
+            may be string.Empty. If not empty then the leading '?' will be included. The value
+            is in its original form, without un-escaping.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.RawTarget">
+            <summary>
+            The request target as it was sent in the HTTP request. This property contains the
+            raw path and full query, as well as other request targets such as * for OPTIONS
+            requests (https://tools.ietf.org/html/rfc7230#section-5.3).
+            </summary>
+            <remarks>
+            This property is not used internally for routing or authorization decisions. It has not
+            been UrlDecoded and care should be taken in its use.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Headers">
+            <summary>
+            Headers included in the request, aggregated by header name. The values are not split
+            or merged across header lines. E.g. The following headers:
+            HeaderA: value1, value2
+            HeaderA: value3
+            Result in Headers["HeaderA"] = { "value1, value2", "value3" }
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Body">
+            <summary>
+            A <see cref="T:System.IO.Stream"/> representing the request body, if any. Stream.Null may be used
+            to represent an empty request body.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpRequestIdentifierFeature">
+            <summary>
+            Feature to identify a request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestIdentifierFeature.TraceIdentifier">
+            <summary>
+            Identifier to trace a request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestLifetimeFeature.RequestAborted">
+            <summary>
+            A <see cref="T:System.Threading.CancellationToken"/> that fires if the request is aborted and
+            the application should cease processing. The token will not fire if the request
+            completes successfully.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpRequestLifetimeFeature.Abort">
+            <summary>
+            Forcefully aborts the request if it has not already completed. This will result in
+            RequestAborted being triggered.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature">
+            <summary>
+            Represents the fields and state of an HTTP response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.StatusCode">
+            <summary>
+            The status-code as defined in RFC 7230. The default value is 200.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.ReasonPhrase">
+            <summary>
+            The reason-phrase as defined in RFC 7230. Note this field is no longer supported by HTTP/2.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Headers">
+            <summary>
+            The response headers to send. Headers with multiple values will be emitted as multiple headers.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Body">
+            <summary>
+            The <see cref="T:System.IO.Stream"/> for writing the response body.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.HasStarted">
+            <summary>
+            Indicates if the response has started. If true, the <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.StatusCode"/>,
+            <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.ReasonPhrase"/>, and <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Headers"/> are now immutable, and
+            OnStarting should no longer be called.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.OnStarting(System.Func{System.Object,System.Threading.Tasks.Task},System.Object)">
+            <summary>
+            Registers a callback to be invoked just before the response starts. This is the
+            last chance to modify the <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Headers"/>, <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.StatusCode"/>, or
+            <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.ReasonPhrase"/>.
+            </summary>
+            <param name="callback">The callback to invoke when starting the response.</param>
+            <param name="state">The state to pass into the callback.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.OnCompleted(System.Func{System.Object,System.Threading.Tasks.Task},System.Object)">
+            <summary>
+            Registers a callback to be invoked after a response has fully completed. This is
+            intended for resource cleanup.
+            </summary>
+            <param name="callback">The callback to invoke after the response has completed.</param>
+            <param name="state">The state to pass into the callback.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpSendFileFeature">
+            <summary>
+            Provides an efficient mechanism for transferring files from disk to the network.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpSendFileFeature.SendFileAsync(System.String,System.Int64,System.Nullable{System.Int64},System.Threading.CancellationToken)">
+            <summary>
+            Sends the requested file in the response body. This may bypass the IHttpResponseFeature.Body
+            <see cref="T:System.IO.Stream"/>. A response may include multiple writes.
+            </summary>
+            <param name="path">The full disk path to the file.</param>
+            <param name="offset">The offset in the file to start at.</param>
+            <param name="count">The number of bytes to send, or null to send the remainder of the file.</param>
+            <param name="cancellation">A <see cref="T:System.Threading.CancellationToken"/> used to abort the transmission.</param>
+            <returns></returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpUpgradeFeature.IsUpgradableRequest">
+            <summary>
+            Indicates if the server can upgrade this request to an opaque, bidirectional stream.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpUpgradeFeature.UpgradeAsync">
+            <summary>
+            Attempt to upgrade the request to an opaque, bidirectional stream. The response status code
+            and headers need to be set before this is invoked. Check <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpUpgradeFeature.IsUpgradableRequest"/>
+            before invoking.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpWebSocketFeature.IsWebSocketRequest">
+            <summary>
+            Indicates if this is a WebSocket upgrade request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpWebSocketFeature.AcceptAsync(Microsoft.AspNetCore.Http.WebSocketAcceptContext)">
+            <summary>
+            Attempts to upgrade the request to a <see cref="T:System.Net.WebSockets.WebSocket"/>. Check <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpWebSocketFeature.IsWebSocketRequest"/>
+            before invoking this.
+            </summary>
+            <param name="context"></param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IResponseCookiesFeature">
+            <summary>
+            A helper for creating the response Set-Cookie header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IResponseCookiesFeature.Cookies">
+            <summary>
+            Gets the wrapper for the response Set-Cookie header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.ITlsConnectionFeature.ClientCertificate">
+            <summary>
+            Synchronously retrieves the client certificate, if any.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITlsConnectionFeature.GetClientCertificateAsync(System.Threading.CancellationToken)">
+            <summary>
+            Asynchronously retrieves the client certificate, if any.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.ITlsTokenBindingFeature">
+            <summary>
+            Provides information regarding TLS token binding parameters.
+            </summary>
+            <remarks>
+            TLS token bindings help mitigate the risk of impersonation by an attacker in the
+            event an authenticated client's bearer tokens are somehow exfiltrated from the
+            client's machine. See https://datatracker.ietf.org/doc/draft-popov-token-binding/
+            for more information.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITlsTokenBindingFeature.GetProvidedTokenBindingId">
+            <summary>
+            Gets the 'provided' token binding identifier associated with the request.
+            </summary>
+            <returns>The token binding identifier, or null if the client did not
+            supply a 'provided' token binding or valid proof of possession of the
+            associated private key. The caller should treat this identifier as an
+            opaque blob and should not try to parse it.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITlsTokenBindingFeature.GetReferredTokenBindingId">
+            <summary>
+            Gets the 'referred' token binding identifier associated with the request.
+            </summary>
+            <returns>The token binding identifier, or null if the client did not
+            supply a 'referred' token binding or valid proof of possession of the
+            associated private key. The caller should treat this identifier as an
+            opaque blob and should not try to parse it.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature">
+            <summary>
+            Used to query, grant, and withdraw user consent regarding the storage of user
+            information related to site activity and functionality.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.IsConsentNeeded">
+            <summary>
+            Indicates if consent is required for the given request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.HasConsent">
+            <summary>
+            Indicates if consent was given.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.CanTrack">
+            <summary>
+            Indicates either if consent has been given or if consent is not required.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.GrantConsent">
+            <summary>
+            Grants consent for this request. If the response has not yet started then
+            this will also grant consent for future requests.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.WithdrawConsent">
+            <summary>
+            Withdraws consent for this request. If the response has not yet started then
+            this will also withdraw consent for future requests.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.CreateConsentCookie">
+            <summary>
+            Creates a consent cookie for use when granting consent from a javascript client.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.CookieOptions">
+            <summary>
+            Options used to create a new cookie.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.CookieOptions.#ctor">
+            <summary>
+            Creates a default cookie with a path of '/'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.Domain">
+            <summary>
+            Gets or sets the domain to associate the cookie with.
+            </summary>
+            <returns>The domain to associate the cookie with.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.Path">
+            <summary>
+            Gets or sets the cookie path.
+            </summary>
+            <returns>The cookie path.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.Expires">
+            <summary>
+            Gets or sets the expiration date and time for the cookie.
+            </summary>
+            <returns>The expiration date and time for the cookie.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.Secure">
+            <summary>
+            Gets or sets a value that indicates whether to transmit the cookie using Secure Sockets Layer (SSL)--that is, over HTTPS only.
+            </summary>
+            <returns>true to transmit the cookie only over an SSL connection (HTTPS); otherwise, false.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.SameSite">
+            <summary>
+            Gets or sets the value for the SameSite attribute of the cookie. The default value is <see cref="F:Microsoft.AspNetCore.Http.SameSiteMode.Lax"/>
+            </summary>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Http.SameSiteMode"/> representing the enforcement mode of the cookie.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.HttpOnly">
+            <summary>
+            Gets or sets a value that indicates whether a cookie is accessible by client-side script.
+            </summary>
+            <returns>true if a cookie must not be accessible by client-side script; otherwise, false.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.MaxAge">
+            <summary>
+            Gets or sets the max-age for the cookie.
+            </summary>
+            <returns>The max-age date and time for the cookie.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.IsEssential">
+            <summary>
+            Indicates if this cookie is essential for the application to function correctly. If true then
+            consent policy checks may be bypassed. The default value is false.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IFormCollection">
+            <summary>
+            Represents the parsed form values sent with the HttpRequest.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormCollection.Count">
+            <summary>
+                Gets the number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </summary>
+            <returns>
+                The number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormCollection.Keys">
+            <summary>
+                Gets an <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the
+                <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </summary>
+            <returns>
+                An <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the object
+                that implements <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormCollection.ContainsKey(System.String)">
+            <summary>
+                Determines whether the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" /> contains an element
+                with the specified key.
+            </summary>
+            <param name="key">
+            The key to locate in the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </param>
+            <returns>
+                true if the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" /> contains an element with
+                the key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormCollection.TryGetValue(System.String,Microsoft.Extensions.Primitives.StringValues@)">
+            <summary>
+               Gets the value associated with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <param name="value">
+                The key of the value to get.
+                When this method returns, the value associated with the specified key, if the
+                key is found; otherwise, the default value for the type of the value parameter.
+                This parameter is passed uninitialized.
+            </param>
+            <returns>
+               true if the object that implements <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" /> contains
+                an element with the specified key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormCollection.Item(System.String)">
+            <summary>
+                Gets the value with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <returns>
+                The element with the specified key, or <c>StringValues.Empty</c> if the key is not present.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+            <remarks>
+                <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" /> has a different indexer contract than
+                <see cref="T:System.Collections.Generic.IDictionary`2" />, as it will return <c>StringValues.Empty</c> for missing entries
+                rather than throwing an Exception.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormCollection.Files">
+            <summary>
+            The file collection sent with the request.
+            </summary>
+            <returns>The files included with the request.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IFormFile">
+            <summary>
+            Represents a file sent with the HttpRequest.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.ContentType">
+            <summary>
+            Gets the raw Content-Type header of the uploaded file.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.ContentDisposition">
+            <summary>
+            Gets the raw Content-Disposition header of the uploaded file.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.Headers">
+            <summary>
+            Gets the header dictionary of the uploaded file.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.Length">
+            <summary>
+            Gets the file length in bytes.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.Name">
+            <summary>
+            Gets the form field name from the Content-Disposition header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.FileName">
+            <summary>
+            Gets the file name from the Content-Disposition header.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormFile.OpenReadStream">
+            <summary>
+            Opens the request stream for reading the uploaded file.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormFile.CopyTo(System.IO.Stream)">
+            <summary>
+            Copies the contents of the uploaded file to the <paramref name="target"/> stream.
+            </summary>
+            <param name="target">The stream to copy the file contents to.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormFile.CopyToAsync(System.IO.Stream,System.Threading.CancellationToken)">
+            <summary>
+            Asynchronously copies the contents of the uploaded file to the <paramref name="target"/> stream.
+            </summary>
+            <param name="target">The stream to copy the file contents to.</param>
+            <param name="cancellationToken"></param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IFormFileCollection">
+            <summary>
+            Represents the collection of files sent with the HttpRequest.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IHeaderDictionary">
+            <summary>
+            Represents HttpRequest and HttpResponse headers
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IHeaderDictionary.Item(System.String)">
+            <summary>
+            IHeaderDictionary has a different indexer contract than IDictionary, where it will return StringValues.Empty for missing entries.
+            </summary>
+            <param name="key"></param>
+            <returns>The stored value, or StringValues.Empty if the key is not present.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IHeaderDictionary.ContentLength">
+            <summary>
+            Strongly typed access to the Content-Length header. Implementations must keep this in sync with the string representation.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IQueryCollection">
+            <summary>
+                Represents the HttpRequest query string collection
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IQueryCollection.Count">
+            <summary>
+                Gets the number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </summary>
+            <returns>
+                The number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IQueryCollection.Keys">
+            <summary>
+                Gets an <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the
+                <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </summary>
+            <returns>
+                An <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the object
+                that implements <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IQueryCollection.ContainsKey(System.String)">
+            <summary>
+                Determines whether the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" /> contains an element
+                with the specified key.
+            </summary>
+            <param name="key">
+            The key to locate in the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </param>
+            <returns>
+                true if the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" /> contains an element with
+                the key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IQueryCollection.TryGetValue(System.String,Microsoft.Extensions.Primitives.StringValues@)">
+            <summary>
+               Gets the value associated with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <param name="value">
+                The key of the value to get.
+                When this method returns, the value associated with the specified key, if the
+                key is found; otherwise, the default value for the type of the value parameter.
+                This parameter is passed uninitialized.
+            </param>
+            <returns>
+               true if the object that implements <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" /> contains
+                an element with the specified key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IQueryCollection.Item(System.String)">
+            <summary>
+                Gets the value with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <returns>
+                The element with the specified key, or <c>StringValues.Empty</c> if the key is not present.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+            <remarks>
+                <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" /> has a different indexer contract than
+                <see cref="T:System.Collections.Generic.IDictionary`2" />, as it will return <c>StringValues.Empty</c> for missing entries
+                rather than throwing an Exception.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IRequestCookieCollection">
+            <summary>
+            Represents the HttpRequest cookie collection
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IRequestCookieCollection.Count">
+            <summary>
+                Gets the number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </summary>
+            <returns>
+                The number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IRequestCookieCollection.Keys">
+            <summary>
+                Gets an <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the
+                <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </summary>
+            <returns>
+                An <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the object
+                that implements <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IRequestCookieCollection.ContainsKey(System.String)">
+            <summary>
+                Determines whether the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" /> contains an element
+                with the specified key.
+            </summary>
+            <param name="key">
+            The key to locate in the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </param>
+            <returns>
+                true if the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" /> contains an element with
+                the key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IRequestCookieCollection.TryGetValue(System.String,System.String@)">
+            <summary>
+               Gets the value associated with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <param name="value">
+                The key of the value to get.
+                When this method returns, the value associated with the specified key, if the
+                key is found; otherwise, the default value for the type of the value parameter.
+                This parameter is passed uninitialized.
+            </param>
+            <returns>
+               true if the object that implements <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" /> contains
+                an element with the specified key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IRequestCookieCollection.Item(System.String)">
+            <summary>
+                Gets the value with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <returns>
+                The element with the specified key, or <c>string.Empty</c> if the key is not present.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+            <remarks>
+                <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" /> has a different indexer contract than
+                <see cref="T:System.Collections.Generic.IDictionary`2" />, as it will return <c>string.Empty</c> for missing entries
+                rather than throwing an Exception.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IResponseCookies">
+            <summary>
+            A wrapper for the response Set-Cookie header.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IResponseCookies.Append(System.String,System.String)">
+            <summary>
+            Add a new cookie and value.
+            </summary>
+            <param name="key">Name of the new cookie.</param>
+            <param name="value">Value of the new cookie.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IResponseCookies.Append(System.String,System.String,Microsoft.AspNetCore.Http.CookieOptions)">
+            <summary>
+            Add a new cookie.
+            </summary>
+            <param name="key">Name of the new cookie.</param>
+            <param name="value">Value of the new cookie.</param>
+            <param name="options"><see cref="T:Microsoft.AspNetCore.Http.CookieOptions"/> included in the new cookie setting.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IResponseCookies.Delete(System.String)">
+            <summary>
+            Sets an expired cookie.
+            </summary>
+            <param name="key">Name of the cookie to expire.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IResponseCookies.Delete(System.String,Microsoft.AspNetCore.Http.CookieOptions)">
+            <summary>
+            Sets an expired cookie.
+            </summary>
+            <param name="key">Name of the cookie to expire.</param>
+            <param name="options">
+            <see cref="T:Microsoft.AspNetCore.Http.CookieOptions"/> used to discriminate the particular cookie to expire. The
+            <see cref="P:Microsoft.AspNetCore.Http.CookieOptions.Domain"/> and <see cref="P:Microsoft.AspNetCore.Http.CookieOptions.Path"/> values are especially important.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.ISession.IsAvailable">
+            <summary>
+            Indicate whether the current session has loaded.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.ISession.Id">
+            <summary>
+            A unique identifier for the current session. This is not the same as the session cookie
+            since the cookie lifetime may not be the same as the session entry lifetime in the data store.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.ISession.Keys">
+            <summary>
+            Enumerates all the keys, if any.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.LoadAsync(System.Threading.CancellationToken)">
+            <summary>
+            Load the session from the data store. This may throw if the data store is unavailable.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.CommitAsync(System.Threading.CancellationToken)">
+            <summary>
+            Store the session in the data store. This may throw if the data store is unavailable.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.TryGetValue(System.String,System.Byte[]@)">
+            <summary>
+            Retrieve the value of the given key, if present.
+            </summary>
+            <param name="key"></param>
+            <param name="value"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.Set(System.String,System.Byte[])">
+            <summary>
+            Set the given key and value in the current session. This will throw if the session
+            was not established prior to sending the response.
+            </summary>
+            <param name="key"></param>
+            <param name="value"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.Remove(System.String)">
+            <summary>
+            Remove the given key from the session if present.
+            </summary>
+            <param name="key"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.Clear">
+            <summary>
+            Remove all entries from the current session, if any.
+            The session cookie is not removed.
+            </summary>
+        </member>
+    </members>
+</doc>
diff --git a/VueWebApi/bin/Microsoft.AspNetCore.Mvc.Abstractions.xml b/VueWebApi/bin/Microsoft.AspNetCore.Mvc.Abstractions.xml
new file mode 100644
index 0000000..401295f
--- /dev/null
+++ b/VueWebApi/bin/Microsoft.AspNetCore.Mvc.Abstractions.xml
@@ -0,0 +1,4528 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.AspNetCore.Mvc.Abstractions</name>
+    </assembly>
+    <members>
+        <member name="T:Microsoft.Extensions.Internal.ClosedGenericMatcher">
+            <summary>
+            Helper related to generic interface definitions and implementing classes.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ClosedGenericMatcher.ExtractGenericInterface(System.Type,System.Type)">
+            <summary>
+            Determine whether <paramref name="queryType"/> is or implements a closed generic <see cref="T:System.Type"/>
+            created from <paramref name="interfaceType"/>.
+            </summary>
+            <param name="queryType">The <see cref="T:System.Type"/> of interest.</param>
+            <param name="interfaceType">The open generic <see cref="T:System.Type"/> to match. Usually an interface.</param>
+            <returns>
+            The closed generic <see cref="T:System.Type"/> created from <paramref name="interfaceType"/> that
+            <paramref name="queryType"/> is or implements. <c>null</c> if the two <see cref="T:System.Type"/>s have no such
+            relationship.
+            </returns>
+            <remarks>
+            This method will return <paramref name="queryType"/> if <paramref name="interfaceType"/> is
+            <c>typeof(KeyValuePair{,})</c>, and <paramref name="queryType"/> is
+            <c>typeof(KeyValuePair{string, object})</c>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Id">
+            <summary>
+            Gets an id which uniquely identifies the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.RouteValues">
+            <summary>
+            Gets or sets the collection of route values that must be provided by routing
+            for the action to be selected.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.ActionConstraints">
+            <summary>
+            The set of constraints for this action. Must all be satisfied for the action to be selected.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.EndpointMetadata">
+            <summary>
+            Gets or sets the endpoint metadata for this action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Parameters">
+            <summary>
+            The set of parameters associated with this action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.BoundProperties">
+            <summary>
+            The set of properties which are model bound.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.FilterDescriptors">
+            <summary>
+            The set of filters associated with this action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.DisplayName">
+            <summary>
+            A friendly name for this action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Properties">
+            <summary>
+            Stores arbitrary metadata properties associated with the <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorExtensions">
+            <summary>
+            Extension methods for <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorExtensions.GetProperty``1(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor)">
+            <summary>
+            Gets the value of a property from the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Properties"/> collection
+            using the provided value of <typeparamref name="T"/> as the key.
+            </summary>
+            <typeparam name="T">The type of the property.</typeparam>
+            <param name="actionDescriptor">The action descriptor.</param>
+            <returns>The property or the default value of <typeparamref name="T"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorExtensions.SetProperty``1(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor,``0)">
+            <summary>
+            Sets the value of an property in the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Properties"/> collection using
+            the provided value of <typeparamref name="T"/> as the key.
+            </summary>
+            <typeparam name="T">The type of the property.</typeparam>
+            <param name="actionDescriptor">The action descriptor.</param>
+            <param name="value">The value of the property.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker">
+            <summary>
+            Defines an interface for invoking an MVC action.
+            </summary>
+            <remarks>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker"/> is created for each request the MVC handles by querying the set of
+            <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider"/> instances. See <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider"/> for more information. 
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker.InvokeAsync">
+            <summary>
+            Invokes an MVC action.
+            </summary>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> which will complete when action processing has completed.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider">
+            <summary>
+            Defines an interface for components that can create an <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker"/> for the
+            current request.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider"/> instances form a pipeline that results in the creation of an
+            <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker"/>. The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider"/> instances are ordered by
+            an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/>.  
+            </para>
+            <para>
+            To create an <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker"/>, each provider has its <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> method
+            called in sequence and given the same instance of <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext"/>. Then each
+            provider has its <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> method called in the reverse order. The result is
+            the value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext.Result"/>.  
+            </para>
+            <para>
+            As providers are called in a predefined sequence, each provider has a chance to observe and decorate the
+            result of the providers that have already run. 
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)">
+            <summary>
+            Called to execute the provider. 
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)">
+            <summary>
+            Called to execute the provider, after the <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> methods of all providers,
+            have been called.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.ArgumentCannotBeNullOrEmpty">
+            <summary>
+            Value cannot be null or empty.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatArgumentCannotBeNullOrEmpty">
+            <summary>
+            Value cannot be null or empty.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.ModelBindingContext_ModelMetadataMustBeSet">
+            <summary>
+            The ModelMetadata property must be set before accessing this property.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatModelBindingContext_ModelMetadataMustBeSet">
+            <summary>
+            The ModelMetadata property must be set before accessing this property.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.Validation_InvalidFieldCannotBeReset">
+            <summary>
+            A field previously marked invalid should not be marked valid.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatValidation_InvalidFieldCannotBeReset">
+            <summary>
+            A field previously marked invalid should not be marked valid.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.Validation_InvalidFieldCannotBeReset_ToSkipped">
+            <summary>
+            A field previously marked invalid should not be marked skipped.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatValidation_InvalidFieldCannotBeReset_ToSkipped">
+            <summary>
+            A field previously marked invalid should not be marked skipped.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.ModelStateDictionary_MaxModelStateErrors">
+            <summary>
+            The maximum number of allowed model errors has been reached.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatModelStateDictionary_MaxModelStateErrors">
+            <summary>
+            The maximum number of allowed model errors has been reached.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Body">
+            <summary>
+            Body
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Body">
+            <summary>
+            Body
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Custom">
+            <summary>
+            Custom
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Custom">
+            <summary>
+            Custom
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Form">
+            <summary>
+            Form
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Form">
+            <summary>
+            Form
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Header">
+            <summary>
+            Header
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Header">
+            <summary>
+            Header
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Services">
+            <summary>
+            Services
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Services">
+            <summary>
+            Services
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_ModelBinding">
+            <summary>
+            ModelBinding
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_ModelBinding">
+            <summary>
+            ModelBinding
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Path">
+            <summary>
+            Path
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Path">
+            <summary>
+            Path
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Query">
+            <summary>
+            Query
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Query">
+            <summary>
+            Query
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_CannotBeComposite">
+            <summary>
+            The provided binding source '{0}' is a composite. '{1}' requires that the source must represent a single type of input.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_CannotBeComposite(System.Object,System.Object)">
+            <summary>
+            The provided binding source '{0}' is a composite. '{1}' requires that the source must represent a single type of input.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_MustBeFromRequest">
+            <summary>
+            The provided binding source '{0}' is not a request-based binding source. '{1}' requires that the source must represent data from an HTTP request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_MustBeFromRequest(System.Object,System.Object)">
+            <summary>
+            The provided binding source '{0}' is not a request-based binding source. '{1}' requires that the source must represent data from an HTTP request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_CannotBeGreedy">
+            <summary>
+            The provided binding source '{0}' is a greedy data source. '{1}' does not support greedy data sources.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_CannotBeGreedy(System.Object,System.Object)">
+            <summary>
+            The provided binding source '{0}' is a greedy data source. '{1}' does not support greedy data sources.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_MustBeGreedy">
+            <summary>
+            The provided binding source '{0}' is not a greedy data source. '{1}' only supports greedy data sources.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_MustBeGreedy(System.Object,System.Object)">
+            <summary>
+            The provided binding source '{0}' is not a greedy data source. '{1}' only supports greedy data sources.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Special">
+            <summary>
+            Special
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Special">
+            <summary>
+            Special
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_FormFile">
+            <summary>
+            FormFile
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_FormFile">
+            <summary>
+            FormFile
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext">
+            <summary>
+            Context for <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/> execution.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext.Candidates">
+            <summary>
+            The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate"/>. This includes all actions that are valid for the current
+            request, as well as their constraints.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext.CurrentCandidate">
+            <summary>
+            The current <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext.RouteContext">
+            <summary>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext.RouteContext"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem">
+            <summary>
+            Represents an <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata"/> with or without a corresponding
+            <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.#ctor(Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata"/> instance.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.Constraint">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/> associated with <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.Metadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.Metadata">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata"/> instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.IsReusable">
+            <summary>
+            Gets or sets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.Constraint"/> can be reused across requests.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext">
+            <summary>
+            Context for an action constraint provider.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the request.</param>
+            <param name="action">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for which constraints are being created.</param>
+            <param name="items">The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem"/> objects.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext.HttpContext">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext.Action">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for which constraints are being created.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext.Results">
+            <summary>
+            The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem"/> objects.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate">
+            <summary>
+            A candidate action for action selection.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate.#ctor(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor,System.Collections.Generic.IReadOnlyList{Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate"/>.
+            </summary>
+            <param name="action">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> representing a candidate for selection.</param>
+            <param name="constraints">
+            The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/> instances associated with <paramref name="action"/>.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate.Action">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> representing a candidate for selection.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate.Constraints">
+            <summary>
+            The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/> instances associated with <see name="Action"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint">
+             <summary>
+             Supports conditional logic to determine whether or not an associated action is valid to be selected
+             for the given request.
+             </summary>
+             <remarks>
+             Action constraints have the secondary effect of making an action with a constraint applied a better
+             match than one without.
+            
+             Consider two actions, 'A' and 'B' with the same action and controller name. Action 'A' only allows the
+             HTTP POST method (via a constraint) and action 'B' has no constraints.
+            
+             If an incoming request is a POST, then 'A' is considered the best match because it both matches and
+             has a constraint. If an incoming request uses any other verb, 'A' will not be valid for selection
+             due to it's constraint, so 'B' is the best match.
+            
+            
+             Action constraints are also grouped according to their order value. Any constraints with the same
+             group value are considered to be part of the same application policy, and will be executed in the
+             same stage.
+            
+             Stages run in ascending order based on the value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Order"/>. Given a set of actions which
+             are candidates for selection, the next stage to run is the lowest value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Order"/> for any
+             constraint of any candidate which is greater than the order of the last stage.
+            
+             Once the stage order is identified, each action has all of its constraints in that stage executed.
+             If any constraint does not match, then that action is not a candidate for selection. If any actions
+             with constraints in the current state are still candidates, then those are the 'best' actions and this
+             process will repeat with the next stage on the set of 'best' actions. If after processing the
+             subsequent stages of the 'best' actions no candidates remain, this process will repeat on the set of
+             'other' candidate actions from this stage (those without a constraint).
+             </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Order">
+            <summary>
+            The constraint order.
+            </summary>
+            <remarks>
+            Constraints are grouped into stages by the value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Order"/>. See remarks on
+            <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Accept(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext)">
+            <summary>
+            Determines whether an action is a valid candidate for selection.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext"/>.</param>
+            <returns>True if the action is valid for selection, otherwise false.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory">
+             <summary>
+             A factory for <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+             </summary>
+             <remarks>
+             <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory"/> will be invoked during action selection
+             to create constraint instances for an action.
+            
+             Place an attribute implementing this interface on a controller or action to insert an action
+             constraint created by a factory.
+             </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory.IsReusable">
+            <summary>
+            Gets a value that indicates if the result of <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory.CreateInstance(System.IServiceProvider)"/>
+            can be reused across requests.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory.CreateInstance(System.IServiceProvider)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+            </summary>
+            <param name="services">The per-request services.</param>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata">
+            <summary>
+            A marker interface that identifies a type as metadata for an <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionContext">
+            <summary>
+            Context object for execution of action which has been selected as part of an HTTP request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionContext.#ctor">
+            <summary>
+            Creates an empty <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+            <remarks>
+            The default constructor is provided for unit test purposes only.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/> to copy.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteData,Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <param name="routeData">The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> for the current request.</param>
+            <param name="actionDescriptor">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for the selected action.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteData,Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor,Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <param name="routeData">The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> for the current request.</param>
+            <param name="actionDescriptor">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for the selected action.</param>
+            <param name="modelState">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionContext.ActionDescriptor">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for the selected action.
+            </summary>
+            <remarks>
+            The property setter is provided for unit test purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionContext.HttpContext">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.
+            </summary>
+            <remarks>
+            The property setter is provided for unit test purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionContext.ModelState">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionContext.RouteData">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> for the current request.
+            </summary>
+            <remarks>
+            The property setter is provided for unit test purposes only.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription">
+            <summary>
+            Represents an API exposed by this application.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.ActionDescriptor">
+            <summary>
+            Gets or sets <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.ActionDescriptor"/> for this api.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.GroupName">
+            <summary>
+            Gets or sets group name for this api.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.HttpMethod">
+            <summary>
+            Gets or sets the supported HTTP method for this api, or null if all HTTP methods are supported.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.ParameterDescriptions">
+            <summary>
+            Gets a list of <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription"/> for this api.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.Properties">
+            <summary>
+            Gets arbitrary metadata properties associated with the <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.RelativePath">
+            <summary>
+            Gets or sets relative url path template (relative to application root) for this api.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.SupportedRequestFormats">
+            <summary>
+            Gets the list of possible formats for a request.
+            </summary>
+            <remarks>
+            Will be empty if the action does not accept a parameter decorated with the <c>[FromBody]</c> attribute.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.SupportedResponseTypes">
+            <summary>
+            Gets the list of possible formats for a response.
+            </summary>
+            <remarks>
+            Will be empty if the action returns no response, or if the response type is unclear. Use
+            <c>ProducesAttribute</c> on an action method to specify a response type.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext">
+            <summary>
+            A context object for <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/> providers.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext.#ctor(System.Collections.Generic.IReadOnlyList{Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor})">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext"/>.
+            </summary>
+            <param name="actions">The list of actions.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext.Actions">
+            <summary>
+            The list of actions.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext.Results">
+            <summary>
+            The list of resulting <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription">
+            <summary>
+            A metadata description of an input to an API.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.ModelMetadata">
+            <summary>
+            Gets or sets the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Name">
+            <summary>
+            Gets or sets the name.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.RouteInfo">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Source">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Type">
+            <summary>
+            Gets or sets the parameter type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.ParameterDescriptor">
+            <summary>
+            Gets or sets the parameter descriptor.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.IsRequired">
+            <summary>
+            Gets or sets a value that determines if the parameter is required.
+            </summary>
+            <remarks>
+            A parameter is considered required if
+            <list type="bullet">
+            <item>it's bound from the request body (<see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Body"/>).</item>
+            <item>it's a required route value.</item>
+            <item>it has annotations (e.g. BindRequiredAttribute) that indicate it's required.</item>
+            </list>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.DefaultValue">
+            <summary>
+            Gets or sets the default value for a parameter.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo">
+            <summary>
+            A metadata description of routing information for an <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo.Constraints">
+            <summary>
+            Gets or sets the set of <see cref="T:Microsoft.AspNetCore.Routing.IRouteConstraint"/> objects for the parameter.
+            </summary>
+            <remarks>
+            Route constraints are only applied when a value is bound from a URL's path. See
+            <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Source"/> for the data source considered.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo.DefaultValue">
+            <summary>
+            Gets or sets the default value for the parameter.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo.IsOptional">
+             <summary>
+             Gets a value indicating whether not a parameter is considered optional by routing.
+             </summary>
+             <remarks>
+             An optional parameter is considered optional by the routing system. This does not imply
+             that the parameter is considered optional by the action.
+            
+             If the parameter uses <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.ModelBinding"/> for the value of
+             <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Source"/> then the value may also come from the
+             URL query string or form data.
+             </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiRequestFormat">
+            <summary>
+            A possible format for the body of a request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiRequestFormat.Formatter">
+            <summary>
+            The formatter used to read this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiRequestFormat.MediaType">
+            <summary>
+            The media type of the request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseFormat">
+            <summary>
+            Possible format for an <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseFormat.Formatter">
+            <summary>
+            Gets or sets the formatter used to output this response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseFormat.MediaType">
+            <summary>
+            Gets or sets the media type of the response.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType">
+            <summary>
+            Possible type of the response body which is formatted by <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.ApiResponseFormats"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.ApiResponseFormats">
+            <summary>
+            Gets or sets the response formats supported by this type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.ModelMetadata">
+            <summary>
+            Gets or sets <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.Type"/> or null.
+            </summary>
+            <remarks>
+            Will be null if <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.Type"/> is null or void.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.Type">
+            <summary>
+            Gets or sets the CLR data type of the response or null.
+            </summary>
+            <remarks>
+            Will be null if the action returns no response, or if the response type is unclear. Use
+            <c>Microsoft.AspNetCore.Mvc.ProducesAttribute</c> or <c>Microsoft.AspNetCore.Mvc.ProducesResponseTypeAttribute</c> on an action method
+            to specify a response type.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.StatusCode">
+            <summary>
+            Gets or sets the HTTP response status code.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.IsDefaultResponse">
+            <summary>
+            Gets or sets a value indicating whether the response type represents a default response.
+            </summary>
+            <remarks>
+            If an <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/> has a default response, then the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.StatusCode"/> property should be ignored. This response
+            will be used when a more specific response format does not apply. The common use of a default response is to specify the format
+            for communicating error conditions.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)">
+            <summary>
+            Creates or modifies <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/>s.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)">
+            <summary>
+            Called after <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider"/> implementations with higher <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> values have been called.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Authorization.IAllowAnonymousFilter">
+            <summary>
+            A filter that allows anonymous requests, disabling some <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAuthorizationFilter"/>s.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext">
+            <summary>
+            A context for action filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuted(Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},System.Object)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+            <param name="controller">The controller instance containing the action.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Canceled">
+            <summary>
+            Gets or sets an indication that an action filter short-circuited the action and the action filter pipeline.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Controller">
+            <summary>
+            Gets the controller instance containing the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Exception">
+            <summary>
+            Gets or sets the <see cref="T:System.Exception"/> caught while executing the action or action filters, if
+            any.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.ExceptionDispatchInfo">
+            <summary>
+            Gets or sets the <see cref="T:System.Runtime.ExceptionServices.ExceptionDispatchInfo"/> for the
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Exception"/>, if an <see cref="T:System.Exception"/> was caught and this information captured.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.ExceptionHandled">
+            <summary>
+            Gets or sets an indication that the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Exception"/> has been handled.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Result">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext">
+            <summary>
+            A context for action filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuted(Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext)"/> and
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter.OnActionExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},System.Collections.Generic.IDictionary{System.String,System.Object},System.Object)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+            <param name="actionArguments">
+            The arguments to pass when invoking the action. Keys are parameter names.
+            </param>
+            <param name="controller">The controller instance containing the action.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.Result">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> to execute. Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.Result"/> to a non-<c>null</c>
+            value inside an action filter will short-circuit the action and any remaining action filters.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.ActionArguments">
+            <summary>
+            Gets the arguments to pass when invoking the action. Keys are parameter names.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.Controller">
+            <summary>
+            Gets the controller instance containing the action.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate">
+            <summary>
+            A delegate that asynchronously returns an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext"/> indicating the action or the next
+            action filter has executed.
+            </summary>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion returns an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext"/>.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext">
+            <summary>
+            A context for authorization filters i.e. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAuthorizationFilter"/> and
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAuthorizationFilter"/> implementations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata})">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext.Result">
+            <summary>
+            Gets or sets the result of the request. Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext.Result"/> to a non-<c>null</c> value inside
+            an authorization filter will short-circuit the remainder of the filter pipeline.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext">
+            <summary>
+            A context for exception filters i.e. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IExceptionFilter"/> and
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncExceptionFilter"/> implementations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata})">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.Exception">
+            <summary>
+            Gets or sets the <see cref="T:System.Exception"/> caught while executing the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.ExceptionDispatchInfo">
+            <summary>
+            Gets or sets the <see cref="T:System.Runtime.ExceptionServices.ExceptionDispatchInfo"/> for the
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.Exception"/>, if this information was captured.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.ExceptionHandled">
+            <summary>
+            Gets or sets an indication that the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.Exception"/> has been handled.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.Result">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext">
+            <summary>
+            An abstract context for filters.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata})">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterContext.Filters">
+            <summary>
+            Gets all applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterContext.IsEffectivePolicy``1(``0)">
+            <summary>
+            Returns a value indicating whether the provided <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> is the most effective
+            policy (most specific) applied to the action associated with the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext"/>.
+            </summary>
+            <typeparam name="TMetadata">The type of the filter policy.</typeparam>
+            <param name="policy">The filter policy instance.</param>
+            <returns>
+            <c>true</c> if the provided <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> is the most effective policy, otherwise <c>false</c>.
+            </returns>
+            <remarks>
+            <para>
+            The <see cref="M:Microsoft.AspNetCore.Mvc.Filters.FilterContext.IsEffectivePolicy``1(``0)"/> method is used to implement a common convention
+            for filters that define an overriding behavior. When multiple filters may apply to the same 
+            cross-cutting concern, define a common interface for the filters (<typeparamref name="TMetadata"/>) and 
+            implement the filters such that all of the implementations call this method to determine if they should
+            take action.
+            </para>
+            <para>
+            For instance, a global filter might be overridden by placing a filter attribute on an action method.
+            The policy applied directly to the action method could be considered more specific.
+            </para>
+            <para>
+            This mechanism for overriding relies on the rules of order and scope that the filter system
+            provides to control ordering of filters. It is up to the implementor of filters to implement this 
+            protocol cooperatively. The filter system has no innate notion of overrides, this is a recommended
+            convention.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterContext.FindEffectivePolicy``1">
+            <summary>
+            Returns the most effective (most specific) policy of type <typeparamref name="TMetadata"/> applied to 
+            the action associated with the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext"/>.
+            </summary>
+            <typeparam name="TMetadata">The type of the filter policy.</typeparam>
+            <returns>The implementation of <typeparamref name="TMetadata"/> applied to the action associated with
+            the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext"/>
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor">
+             <summary>
+             Descriptor for an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/>.
+             </summary>
+             <remarks>
+             <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/> describes an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> with an order and scope.
+            
+             Order and scope control the execution order of filters. Filters with a higher value of Order execute
+             later in the pipeline.
+            
+             When filters have the same Order, the Scope value is used to determine the order of execution. Filters
+             with a higher value of Scope execute later in the pipeline. See <c>Microsoft.AspNetCore.Mvc.FilterScope</c>
+             for commonly used scopes.
+            
+             For <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IExceptionFilter"/> implementations, the filter runs only after an exception has occurred,
+             and so the observed order of execution will be opposite that of other filters.
+             </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.#ctor(Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata,System.Int32)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>.
+            </summary>
+            <param name="filter">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/>.</param>
+            <param name="filterScope">The filter scope.</param>
+            <remarks>
+            If the <paramref name="filter"/> implements <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter"/>, then the value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Order"/> will be taken from <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>. Otherwise the value
+            of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Order"/> will default to <c>0</c>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Filter">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Order">
+            <summary>
+            The filter order.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Scope">
+            <summary>
+            The filter scope.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem">
+            <summary>
+            Used to associate executable filters with <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> instances
+            as part of <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext"/>. An <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider"/> should
+            inspect <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.Results"/> and set <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Filter"/> and
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.IsReusable"/> as appropriate.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterItem.#ctor(Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>.
+            </summary>
+            <param name="descriptor">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterItem.#ctor(Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor,Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>.
+            </summary>
+            <param name="descriptor">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>.</param>
+            <param name="filter"></param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Descriptor">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/> containing the filter metadata.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Filter">
+            <summary>
+            Gets or sets the executable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> associated with <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Descriptor"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.IsReusable">
+            <summary>
+            Gets or sets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Filter"/> can be reused across requests.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext">
+            <summary>
+            A context for filter providers i.e. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider"/> implementations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.FilterItem})">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.ActionContext"/>.</param>
+            <param name="items">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>s, initially created from <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>s or a cache entry.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.ActionContext">
+            <summary>
+            Gets or sets the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.ActionContext"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.Results">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>s, initially created from <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>s or a
+            cache entry. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider"/>s should set <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Filter"/> on existing items or
+            add new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>s to make executable filters available.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IActionFilter">
+            <summary>
+            A filter that surrounds execution of the action.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuting(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext)">
+            <summary>
+            Called before the action executes, after model binding is complete.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuted(Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext)">
+            <summary>
+            Called after the action executes, before the action result.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAlwaysRunResultFilter">
+            <summary>
+            A filter that surrounds execution of all action results.
+            </summary>
+            <remarks>
+            <para>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAlwaysRunResultFilter"/> interface declares an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> implementation
+            that should run for all action results. <seealso cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/>.
+            </para>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> instances are not executed in cases where
+            an authorization filter or resource filter short-circuits the request to prevent execution of the action.
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations
+            are also not executed in cases where an exception filter handles an exception by producing an action result.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter">
+            <summary>
+            A filter that asynchronously surrounds execution of the action, after model binding is complete.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter.OnActionExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate)">
+            <summary>
+            Called asynchronously before the action, after model binding is complete.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext"/>.</param>
+            <param name="next">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate"/>. Invoked to execute the next action filter or the action itself.
+            </param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion indicates the filter has executed.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter">
+            <summary>
+            A filter that asynchronously surrounds execution of all action results.
+            </summary>
+            <remarks>
+            <para>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/> interface declares an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementation
+            that should run for all action results. <seealso cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/>.
+            </para>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> instances are not executed in cases where
+            an authorization filter or resource filter short-circuits the request to prevent execution of the action.
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations
+            are also not executed in cases where an exception filter handles an exception by producing an action result.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAuthorizationFilter">
+            <summary>
+            A filter that asynchronously confirms request authorization.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncAuthorizationFilter.OnAuthorizationAsync(Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext)">
+            <summary>
+            Called early in the filter pipeline to confirm request is authorized.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext"/>.</param>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion indicates the filter has executed.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncExceptionFilter">
+            <summary>
+            A filter that runs asynchronously after an action has thrown an <see cref="T:System.Exception"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncExceptionFilter.OnExceptionAsync(Microsoft.AspNetCore.Mvc.Filters.ExceptionContext)">
+            <summary>
+            Called after an action has thrown an <see cref="T:System.Exception"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext"/>.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion indicates the filter has executed.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResourceFilter">
+            <summary>
+            A filter that asynchronously surrounds execution of model binding, the action (and filters) and the action
+            result (and filters).
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncResourceFilter.OnResourceExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ResourceExecutionDelegate)">
+            <summary>
+            Called asynchronously before the rest of the pipeline.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext"/>.</param>
+            <param name="next">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutionDelegate"/>. Invoked to execute the next resource filter or the remainder
+            of the pipeline.
+            </param>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> which will complete when the remainder of the pipeline completes.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter">
+            <summary>
+            A filter that asynchronously surrounds execution of action results successfully returned from an action.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations are executed around the action
+            result only when the action method (or action filters) complete successfully.
+            </para>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> instances are not executed in cases where
+            an authorization filter or resource filter short-circuits the request to prevent execution of the action.
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/>. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations
+            are also not executed in cases where an exception filter handles an exception by producing an action result.
+            </para>
+            <para>
+            To create a result filter that surrounds the execution of all action results, implement
+            either the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAlwaysRunResultFilter"/> or the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/> interface.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter.OnResultExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ResultExecutionDelegate)">
+            <summary>
+            Called asynchronously before the action result.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext"/>.</param>
+            <param name="next">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutionDelegate"/>. Invoked to execute the next result filter or the result itself.
+            </param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion indicates the filter has executed.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAuthorizationFilter">
+            <summary>
+            A filter that confirms request authorization.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAuthorizationFilter.OnAuthorization(Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext)">
+            <summary>
+            Called early in the filter pipeline to confirm request is authorized.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IExceptionFilter">
+            <summary>
+            A filter that runs after an action has thrown an <see cref="T:System.Exception"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IExceptionFilter.OnException(Microsoft.AspNetCore.Mvc.Filters.ExceptionContext)">
+            <summary>
+            Called after an action has thrown an <see cref="T:System.Exception"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IFilterContainer">
+            <summary>
+            A filter that requires a reference back to the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory"/> that created it.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.IFilterContainer.FilterDefinition">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory"/> that created this filter instance.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory">
+            <summary>
+            An interface for filter metadata which can create an instance of an executable filter.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory.IsReusable">
+            <summary>
+            Gets a value that indicates if the result of <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory.CreateInstance(System.IServiceProvider)"/>
+            can be reused across requests.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory.CreateInstance(System.IServiceProvider)">
+            <summary>
+            Creates an instance of the executable filter.
+            </summary>
+            <param name="serviceProvider">The request <see cref="T:System.IServiceProvider"/>.</param>
+            <returns>An instance of the executable filter.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata">
+            <summary>
+            Marker interface for filters handled in the MVC request pipeline.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/> provider. Implementations should update <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.Results"/>
+            to make executable filters available.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)">
+            <summary>
+            Called in increasing <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)">
+            <summary>
+            Called in decreasing <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>, after all <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider"/>s have executed once.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter">
+            <summary>
+            A filter that specifies the relative order it should run.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order">
+            <summary>
+            Gets the order value for determining the order of execution of filters. Filters execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Filters are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/> property.
+            </para>
+            <para>
+            Asynchronous filters, such as <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter"/>, surround the execution of subsequent
+            filters of the same filter kind. An asynchronous filter with a lower numeric <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>
+            value will have its filter method, such as <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter.OnActionExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate)"/>,
+            executed before that of a filter with a higher value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>.
+            </para>
+            <para>
+            Synchronous filters, such as <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IActionFilter"/>, have a before-method, such as
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuting(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext)"/>, and an after-method, such as
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuted(Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext)"/>. A synchronous filter with a lower numeric <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>
+            value will have its before-method executed before that of a filter with a higher value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>. During the after-stage of the filter, a synchronous filter with a lower
+            numeric <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/> value will have its after-method executed after that of a filter with a higher
+            value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>.
+            </para>
+            <para>
+            If two filters have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>, then their relative execution order
+            is determined by the filter scope.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter">
+            <summary>
+            A filter that surrounds execution of model binding, the action (and filters) and the action result
+            (and filters).
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter.OnResourceExecuting(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext)">
+            <summary>
+            Executes the resource filter. Called before execution of the remainder of the pipeline.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter.OnResourceExecuted(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext)">
+            <summary>
+            Executes the resource filter. Called after execution of the remainder of the pipeline.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter">
+            <summary>
+            A filter that surrounds execution of action results successfully returned from an action.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations are executed around the action
+            result only when the action method (or action filters) complete successfully.
+            </para>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> instances are not executed in cases where
+            an authorization filter or resource filter short-circuits the request to prevent execution of the action.
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/>. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations
+            are also not executed in cases where an exception filter handles an exception by producing an action result.
+            </para>
+            <para>
+            To create a result filter that surrounds the execution of all action results, implement
+            either the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAlwaysRunResultFilter"/> or the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/> interface.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IResultFilter.OnResultExecuting(Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext)">
+            <summary>
+            Called before the action result executes.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IResultFilter.OnResultExecuted(Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext)">
+            <summary>
+            Called after the action result executes.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext">
+            <summary>
+            A context for resource filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter.OnResourceExecuted(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">The list of <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> instances.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Canceled">
+            <summary>
+            Gets or sets a value which indicates whether or not execution was canceled by a resource filter.
+            If true, then a resource filter short-circuited execution by setting
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.Result"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception">
+            <summary>
+            Gets or set the current <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/>.
+            </summary>
+            <remarks>
+            <para>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/> or <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionDispatchInfo"/> to <c>null</c> will treat
+            the exception as handled, and it will not be rethrown by the runtime.
+            </para>
+            <para>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionHandled"/> to <c>true</c> will also mark the exception as handled.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionDispatchInfo">
+            <summary>
+            Gets or set the current <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/>.
+            </summary>
+            <remarks>
+            <para>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/> or <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionDispatchInfo"/> to <c>null</c> will treat
+            the exception as handled, and it will not be rethrown by the runtime.
+            </para>
+            <para>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionHandled"/> to <c>true</c> will also mark the exception as handled.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionHandled">
+            <summary>
+            <para>
+            Gets or sets a value indicating whether or not the current <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/> has been handled.
+            </para>
+            <para>
+            If <c>false</c> the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/> will be rethrown by the runtime after resource filters
+            have executed.
+            </para>
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Result">
+            <summary>
+            Gets or sets the result.
+            </summary>
+            <remarks>
+            <para>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Result"/> may be provided by execution of the action itself or by another
+            filter.
+            </para>
+            <para>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Result"/> has already been written to the response before being made available
+            to resource filters.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext">
+            <summary>
+            A context for resource filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter.OnResourceExecuting(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext)"/> and
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncResourceFilter.OnResourceExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ResourceExecutionDelegate)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">The list of <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> instances.</param>
+            <param name="valueProviderFactories">The list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory"/> instances.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.Result">
+            <summary>
+            Gets or sets the result of the action to be executed.
+            </summary>
+            <remarks>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.Result"/> to a non-<c>null</c> value inside a resource filter will
+            short-circuit execution of additional resource filters and the action itself.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.ValueProviderFactories">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory"/> instances used by model binding.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutionDelegate">
+            <summary>
+            A delegate that asynchronously returns a <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext"/> indicating model binding, the
+            action, the action's result, result filters, and exception filters have executed.
+            </summary>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion returns a <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext">
+            <summary>
+            A context for result filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IResultFilter.OnResultExecuted(Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},Microsoft.AspNetCore.Mvc.IActionResult,System.Object)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+            <param name="result">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> copied from <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Result"/>.
+            </param>
+            <param name="controller">The controller instance containing the action.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Canceled">
+            <summary>
+            Gets or sets an indication that a result filter set <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Cancel"/> to
+            <c>true</c> and short-circuited the filter pipeline.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Controller">
+            <summary>
+            Gets the controller instance containing the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Exception">
+            <summary>
+            Gets or sets the <see cref="T:System.Exception"/> caught while executing the result or result filters, if
+            any.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.ExceptionDispatchInfo">
+            <summary>
+            Gets or sets the <see cref="T:System.Runtime.ExceptionServices.ExceptionDispatchInfo"/> for the
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Exception"/>, if an <see cref="T:System.Exception"/> was caught and this information captured.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.ExceptionHandled">
+            <summary>
+            Gets or sets an indication that the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Exception"/> has been handled.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Result">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> copied from <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Result"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext">
+            <summary>
+            A context for result filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IResultFilter.OnResultExecuting(Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext)"/> and
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter.OnResultExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ResultExecutionDelegate)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},Microsoft.AspNetCore.Mvc.IActionResult,System.Object)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+            <param name="result">The <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> of the action and action filters.</param>
+            <param name="controller">The controller instance containing the action.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Controller">
+            <summary>
+            Gets the controller instance containing the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Result">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> to execute. Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Result"/> to a non-<c>null</c>
+            value inside a result filter will short-circuit the result and any remaining result filters.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Cancel">
+            <summary>
+            Gets or sets an indication the result filter pipeline should be short-circuited.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutionDelegate">
+            <summary>
+            A delegate that asynchronously returns an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext"/> indicating the action result or
+            the next result filter has executed.
+            </summary>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion returns an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1">
+            <summary>
+            Represents a collection of formatters.
+            </summary>
+            <typeparam name="TFormatter">The type of formatters in the collection.</typeparam>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1"/> class that is empty.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1.#ctor(System.Collections.Generic.IList{`0})">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1"/> class
+            as a wrapper for the specified list.
+            </summary>
+            <param name="list">The list that is wrapped by the new collection.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1.RemoveType``1">
+            <summary>
+            Removes all formatters of the specified type.
+            </summary>
+            <typeparam name="T">The type to remove.</typeparam>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1.RemoveType(System.Type)">
+            <summary>
+            Removes all formatters of the specified type.
+            </summary>
+            <param name="formatterType">The type to remove.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter">
+            <summary>
+            Reads an object from the request body.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.CanRead(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)">
+            <summary>
+            Determines whether this <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> can deserialize an object of the
+            <paramref name="context"/>'s <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelType"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext"/>.</param>
+            <returns>
+            <c>true</c> if this <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> can deserialize an object of the
+            <paramref name="context"/>'s <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelType"/>. <c>false</c> otherwise.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)">
+            <summary>
+            Reads an object from the request body.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext"/>.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion deserializes the request body.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatterExceptionPolicy">
+            <summary>
+            A policy which <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/>s can implement to indicate if they want the body model binder
+            to handle all exceptions. By default, all default <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/>s implement this interface and
+            have a default value of <see cref="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.MalformedInputExceptions"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatterExceptionPolicy.ExceptionPolicy">
+            <summary>
+            Gets the flag to indicate if the body model binder should handle all exceptions. If an exception is handled,
+            the body model binder converts the exception into model state errors, else the exception is allowed to propagate.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext">
+            <summary>
+            A context object used by an input formatter for deserializing the request body into an object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,System.String,Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.Func{System.IO.Stream,System.Text.Encoding,System.IO.TextReader})">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext"/>.
+            </summary>
+            <param name="httpContext">
+            The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current operation.
+            </param>
+            <param name="modelName">The name of the model.</param>
+            <param name="modelState">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> for recording errors.
+            </param>
+            <param name="metadata">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> of the model to deserialize.
+            </param>
+            <param name="readerFactory">
+            A delegate which can create a <see cref="T:System.IO.TextReader"/> for the request body.
+            </param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,System.String,Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.Func{System.IO.Stream,System.Text.Encoding,System.IO.TextReader},System.Boolean)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext"/>.
+            </summary>
+            <param name="httpContext">
+            The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current operation.
+            </param>
+            <param name="modelName">The name of the model.</param>
+            <param name="modelState">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> for recording errors.
+            </param>
+            <param name="metadata">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> of the model to deserialize.
+            </param>
+            <param name="readerFactory">
+            A delegate which can create a <see cref="T:System.IO.TextReader"/> for the request body.
+            </param>
+            <param name="treatEmptyInputAsDefaultValue">
+            A value for the <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.TreatEmptyInputAsDefaultValue"/> property.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.TreatEmptyInputAsDefaultValue">
+            <summary>
+            Gets a flag to indicate whether the input formatter should allow no value to be provided.
+            If <see langword="false"/>, the input formatter should handle empty input by returning
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.NoValueAsync"/>. If <see langword="true"/>, the input
+            formatter should handle empty input by returning the default value for the type
+            <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelType"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.HttpContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current operation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelName">
+            <summary>
+            Gets the name of the model. Used as the key or key prefix for errors added to <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelState"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelState">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> associated with the current operation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.Metadata">
+            <summary>
+            Gets the requested <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> of the request body deserialization.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelType">
+            <summary>
+            Gets the requested <see cref="T:System.Type"/> of the request body deserialization.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ReaderFactory">
+            <summary>
+            Gets a delegate which can create a <see cref="T:System.IO.TextReader"/> for the request body.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterException">
+            <summary>
+            Exception thrown by <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> when the input is not in an expected format.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy">
+            <summary>
+            Defines the set of policies that determine how the model binding system interprets exceptions
+            thrown by an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/>. Applications should set 
+            <c>MvcOptions.InputFormatterExceptionPolicy</c> to configure this setting.
+            </summary>
+            <remarks>
+            <para>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> could throw an exception for several reasons, including:
+            <list type="bullet">
+            <item><description>malformed input</description></item>
+            <item><description>client disconnect or other I/O problem</description></item>
+            <item><description>
+            application configuration problems such as <see cref="T:System.TypeLoadException"/>
+            </description></item>
+            </list>
+            </para>
+            <para>
+            The policy associated with <see cref="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.AllExceptions"/> treats
+            all such categories of problems as model state errors, and usually will be reported to the client as
+            an HTTP 400. This was the only policy supported by model binding in ASP.NET Core MVC 1.0, 1.1, and 2.0
+            and is still the default for historical reasons. 
+            </para>
+            <para>
+            The policy associated with <see cref="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.MalformedInputExceptions"/>
+            treats only <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterException"/> and its subclasses as model state errors. This means that
+            exceptions that are not related to the content of the HTTP request (such as a disconnect) will be rethrown,
+            which by default would cause an HTTP 500 response, unless there is exception-handling middleware enabled.
+            </para>
+            </remarks>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.AllExceptions">
+            <summary>
+            This value indicates that all exceptions thrown by an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> will be treated
+            as model state errors.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.MalformedInputExceptions">
+            <summary>
+            This value indicates that only <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterException"/> and subclasses will be treated
+            as model state errors. All other exceptions types will be rethrown and can be handled by a higher
+            level exception handler, such as exception-handling middleware.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult">
+            <summary>
+            Result of a <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError">
+            <summary>
+            Gets an indication whether the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation had an error.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.IsModelSet">
+            <summary>
+            Gets an indication whether a value for the <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.Model"/> property was supplied.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.Model">
+            <summary>
+            Gets the deserialized <see cref="T:System.Object"/>.
+            </summary>
+            <value>
+            <c>null</c> if <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> is <c>true</c>.
+            </value>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.Failure">
+            <summary>
+            Returns an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation failed.
+            </summary>
+            <returns>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation failed i.e. with <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> <c>true</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.FailureAsync">
+            <summary>
+            Returns a <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating
+            the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation failed.
+            </summary>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation failed i.e. with <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> <c>true</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.Success(System.Object)">
+            <summary>
+            Returns an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation was successful.
+            </summary>
+            <param name="model">The deserialized <see cref="T:System.Object"/>.</param>
+            <returns>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation succeeded i.e. with <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> <c>false</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.SuccessAsync(System.Object)">
+            <summary>
+            Returns a <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating
+            the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation was successful.
+            </summary>
+            <param name="model">The deserialized <see cref="T:System.Object"/>.</param>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation succeeded i.e. with <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> <c>false</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.NoValue">
+            <summary>
+            Returns an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation produced no value.
+            </summary>
+            <returns>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation produced no value.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.NoValueAsync">
+            <summary>
+            Returns a <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating
+            the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation produced no value.
+            </summary>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation produced no value.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter">
+            <summary>
+            Writes an object to the output stream.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.CanWriteResult(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext)">
+            <summary>
+            Determines whether this <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter"/> can serialize
+            an object of the specified type.
+            </summary>
+            <param name="context">The formatter context associated with the call.</param>
+            <returns>Returns <c>true</c> if the formatter can write the response; <c>false</c> otherwise.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.WriteAsync(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext)">
+            <summary>
+            Writes the object represented by <paramref name="context"/>'s Object property.
+            </summary>
+            <param name="context">The formatter context associated with the call.</param>
+            <returns>A Task that serializes the value to the <paramref name="context"/>'s response message.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext">
+            <summary>
+            A context object for <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.CanWriteResult(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext)"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.#ctor">
+            <summary>
+            <para>
+            This constructor is obsolete and will be removed in a future version.
+            Please use <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.#ctor(Microsoft.AspNetCore.Http.HttpContext)"/> instead.
+            </para>
+            <para>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext"/>.
+            </para>
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.#ctor(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.HttpContext"/> for the current request.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.HttpContext">
+            <summary>
+            Gets or sets the <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.HttpContext"/> context associated with the current operation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.ContentType">
+            <summary>
+            Gets or sets the content type to write to the response.
+            </summary>
+            <remarks>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter"/> can set this value when its
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.CanWriteResult(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext)"/> method is called,
+            and expect to see the same value provided in
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.WriteAsync(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext)"/>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.ContentTypeIsServerDefined">
+            <summary>
+            Gets or sets a value to indicate whether the content type was specified by server-side code.
+            This allows <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.CanWriteResult(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext)"/> to
+            implement stricter filtering on content types that, for example, are being considered purely
+            because of an incoming Accept header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.Object">
+            <summary>
+            Gets or sets the object to write to the response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.ObjectType">
+            <summary>
+            Gets or sets the <see cref="T:System.Type"/> of the object to write to the response.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext">
+            <summary>
+            A context object for <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.WriteAsync(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext)"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,System.Func{System.IO.Stream,System.Text.Encoding,System.IO.TextWriter},System.Type,System.Object)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <param name="writerFactory">The delegate used to create a <see cref="T:System.IO.TextWriter"/> for writing the response.</param>
+            <param name="objectType">The <see cref="T:System.Type"/> of the object to write to the response.</param>
+            <param name="object">The object to write to the response.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext.WriterFactory">
+            <summary>
+            <para>
+            Gets or sets a delegate used to create a <see cref="T:System.IO.TextWriter"/> for writing text to the response.
+            </para>
+            <para>
+            Write to <see cref="P:Microsoft.AspNetCore.Http.HttpResponse.Body"/> directly to write binary data to the response.
+            </para>
+            </summary>
+            <remarks>
+            <para>
+            The <see cref="T:System.IO.TextWriter"/> created by this delegate will encode text and write to the
+            <see cref="P:Microsoft.AspNetCore.Http.HttpResponse.Body"/> stream. Call this delegate to create a <see cref="T:System.IO.TextWriter"/>
+            for writing text output to the response stream.
+            </para>
+            <para>
+            To implement a formatter that writes binary data to the response stream, do not use the
+            <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext.WriterFactory"/> delegate, and use <see cref="P:Microsoft.AspNetCore.Http.HttpResponse.Body"/> instead.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.IActionResult">
+            <summary>
+            Defines a contract that represents the result of an action method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IActionResult.ExecuteResultAsync(Microsoft.AspNetCore.Mvc.ActionContext)">
+            <summary>
+            Executes the result operation of the action method asynchronously. This method is called by MVC to process
+            the result of an action method.
+            </summary>
+            <param name="context">The context in which the result is executed. The context information includes
+            information about the action that was executed and request information.</param>
+            <returns>A task that represents the asynchronous execute operation.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.IUrlHelper">
+            <summary>
+            Defines the contract for the helper to build URLs for ASP.NET MVC within an application.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.IUrlHelper.ActionContext">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Mvc.IUrlHelper.ActionContext"/> for the current request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)">
+            <summary>
+            Generates a URL with an absolute path for an action method, which contains the action
+            name, controller name, route values, protocol to use, host name, and fragment specified by
+            <see cref="T:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext"/>. Generates an absolute URL if <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Protocol"/> and
+            <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Host"/> are non-<c>null</c>. See the remarks section for important security information.
+            </summary>
+            <param name="actionContext">The context object for the generated URLs for an action method.</param>
+            <returns>The generated URL.</returns>
+            <remarks>
+            <para>
+            The value of <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Host" /> should be a trusted value. Relying on the value of the current request
+            can allow untrusted input to influence the resulting URI unless the <c>Host</c> header has been validated.
+            See the deployment documentation for instructions on how to properly validate the <c>Host</c> header in
+            your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Content(System.String)">
+            <summary>
+            Converts a virtual (relative, starting with ~/) path to an application absolute path.
+            </summary>
+            <remarks>
+            If the specified content path does not start with the tilde (~) character,
+            this method returns <paramref name="contentPath"/> unchanged.
+            </remarks>
+            <param name="contentPath">The virtual path of the content.</param>
+            <returns>The application absolute path.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.IsLocalUrl(System.String)">
+            <summary>
+            Returns a value that indicates whether the URL is local. A URL is considered local if it does not have a
+            host / authority part and it has an absolute path. URLs using virtual paths ('~/') are also local.
+            </summary>
+            <param name="url">The URL.</param>
+            <returns><c>true</c> if the URL is local; otherwise, <c>false</c>.</returns>
+            <example>
+            <para>
+            For example, the following URLs are considered local:
+            <code>
+            /Views/Default/Index.html
+            ~/Index.html
+            </code>
+            </para>
+            <para>
+            The following URLs are non-local:
+            <code>
+            ../Index.html
+            http://www.contoso.com/
+            http://localhost/Index.html
+            </code>
+            </para>
+            </example>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)">
+            <summary>
+            Generates a URL with an absolute path, which contains the route name, route values, protocol to use, host
+            name, and fragment specified by <see cref="T:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext"/>. Generates an absolute URL if
+            <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Protocol"/> and <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Host"/> are non-<c>null</c>.
+            See the remarks section for important security information.
+            </summary>
+            <param name="routeContext">The context object for the generated URLs for a route.</param>
+            <returns>The generated URL.</returns>
+            <remarks>
+            <para>
+            The value of <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Host" /> should be a trusted value. Relying on the value of the current request
+            can allow untrusted input to influence the resulting URI unless the <c>Host</c> header has been validated.
+            See the deployment documentation for instructions on how to properly validate the <c>Host</c> header in
+            your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Link(System.String,System.Object)">
+            <summary>
+            Generates an absolute URL for the specified <paramref name="routeName"/> and route
+            <paramref name="values"/>, which contains the protocol (such as "http" or "https") and host name from the
+            current request. See the remarks section for important security information.
+            </summary>
+            <param name="routeName">The name of the route that is used to generate URL.</param>
+            <param name="values">An object that contains route values.</param>
+            <returns>The generated absolute URL.</returns>
+            <remarks>
+            <para>
+            This method uses the value of <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.Host"/> to populate the host section of the generated URI.
+            Relying on the value of the current request can allow untrusted input to influence the resulting URI unless 
+            the <c>Host</c> header has been validated. See the deployment documentation for instructions on how to properly 
+            validate the <c>Host</c> header in your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo">
+            <summary>
+            Binding info which represents metadata associated to an action parameter.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.#ctor">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo)">
+            <summary>
+            Creates a copy of a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> to copy.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.BindingSource">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.BinderModelName">
+            <summary>
+            Gets or sets the binder model name.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.BinderType">
+            <summary>
+            Gets or sets the <see cref="T:System.Type"/> of the model binder used to bind the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.PropertyFilterProvider">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IPropertyFilterProvider"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.RequestPredicate">
+            <summary>
+            Gets or sets a predicate which determines whether or not the model should be bound based on state
+            from the current request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.GetBindingInfo(System.Collections.Generic.IEnumerable{System.Object})">
+            <summary>
+            Constructs a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> from the given <paramref name="attributes"/>.
+            <para>
+            This overload does not account for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> specified via <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>. Consider using
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.GetBindingInfo(System.Collections.Generic.IEnumerable{System.Object},Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/> overload, or <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.TryApplyBindingInfo(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/>
+            on the result of this method to get a more accurate <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> instance.
+            </para>
+            </summary>
+            <param name="attributes">A collection of attributes which are used to construct <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>
+            </param>
+            <returns>A new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.GetBindingInfo(System.Collections.Generic.IEnumerable{System.Object},Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Constructs a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> from the given <paramref name="attributes"/> and <paramref name="modelMetadata"/>.
+            </summary>
+            <param name="attributes">A collection of attributes which are used to construct <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>.</param>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.</param>
+            <returns>A new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> if any binding metadata was discovered; otherwise or <see langword="null"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.TryApplyBindingInfo(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Applies binding metadata from the specified <paramref name="modelMetadata"/>.
+            <para>
+            Uses values from <paramref name="modelMetadata"/> if no value is already available.
+            </para>
+            </summary>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.</param>
+            <returns><see langword="true"/> if any binding metadata from <paramref name="modelMetadata"/> was applied;
+            <see langword="false"/> otherwise.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource">
+            <summary>
+            A metadata object representing a source of data for model binding.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Body">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request body.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Custom">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for a custom model binder (unknown data source).
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Form">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request form-data.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Header">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request headers.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.ModelBinding">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for model binding. Includes form-data, query-string
+            and route data from the request.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Path">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request url path.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Query">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request query-string.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Services">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for request services.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Special">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for special parameter types that are not user input.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.FormFile">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for <see cref="T:Microsoft.AspNetCore.Http.IFormFile"/>, <see cref="T:Microsoft.AspNetCore.Http.IFormCollection"/>, and <see cref="T:Microsoft.AspNetCore.Http.IFormFileCollection"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.#ctor(System.String,System.String,System.Boolean,System.Boolean)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/>.
+            </summary>
+            <param name="id">The id, a unique identifier.</param>
+            <param name="displayName">The display name.</param>
+            <param name="isGreedy">A value indicating whether or not the source is greedy.</param>
+            <param name="isFromRequest">
+            A value indicating whether or not the data comes from the HTTP request.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.DisplayName">
+            <summary>
+            Gets the display name for the source.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Id">
+            <summary>
+            Gets the unique identifier for the source. Sources are compared based on their Id.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsGreedy">
+            <summary>
+            Gets a value indicating whether or not a source is greedy. A greedy source will bind a model in
+            a single operation, and will not decompose the model into sub-properties.
+            </summary>
+            <remarks>
+            <para>
+            For sources based on a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/>, setting <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsGreedy"/> to <c>false</c>
+            will most closely describe the behavior. This value is used inside the default model binders to 
+            determine whether or not to attempt to bind properties of a model.
+            </para>
+            <para>
+            Set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsGreedy"/> to <c>true</c> for most custom <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> implementations.
+            </para>
+            <para>
+            If a source represents an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> which will recursively traverse a model's properties
+            and bind them individually using <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/>, then set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsGreedy"/> to
+            <c>true</c>.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsFromRequest">
+            <summary>
+            Gets a value indicating whether or not the binding source uses input from the current HTTP request.
+            </summary>
+            <remarks>
+            Some sources (like <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Services"/>) are based on application state and not user
+            input. These are excluded by default from ApiExplorer diagnostics.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.CanAcceptDataFrom(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <summary>
+            Gets a value indicating whether or not the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> can accept
+            data from <paramref name="bindingSource"/>.
+            </summary>
+            <param name="bindingSource">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> to consider as input.</param>
+            <returns><c>True</c> if the source is compatible, otherwise <c>false</c>.</returns>
+            <remarks>
+            When using this method, it is expected that the left-hand-side is metadata specified
+            on a property or parameter for model binding, and the right hand side is a source of
+            data used by a model binder or value provider.
+            
+            This distinction is important as the left-hand-side may be a composite, but the right
+            may not.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.op_Equality(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource,Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.op_Inequality(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource,Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource">
+            <summary>
+            A <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource.BindingSources"/> which can represent multiple value-provider data sources.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource.Create(System.Collections.Generic.IEnumerable{Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource},System.String)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource"/>.
+            </summary>
+            <param name="bindingSources">
+            The set of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> entries.
+            Must be value-provider sources and user input.
+            </param>
+            <param name="displayName">The display name for the composite source.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource"/>.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource.BindingSources">
+            <summary>
+            Gets the set of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> entries.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource.CanAcceptDataFrom(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName">
+            <summary>
+            An abstraction used when grouping enum values for <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EnumGroupedDisplayNamesAndValues"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName.#ctor(System.String,System.String)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName"/> structure. This constructor should 
+            not be used in any site where localization is important.
+            </summary>
+            <param name="group">The group name.</param>
+            <param name="name">The name.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName.#ctor(System.String,System.Func{System.String})">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName"/> structure.
+            </summary>
+            <param name="group">The group name.</param>
+            <param name="name">A <see cref="T:System.Func`1"/> which will return the name.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName.Group">
+            <summary>
+            Gets the Group name.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName.Name">
+            <summary>
+            Gets the name.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IBinderTypeProviderMetadata">
+            <summary>
+            Provides a <see cref="T:System.Type"/> which implements <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IBinderTypeProviderMetadata.BinderType">
+            <summary>
+            A <see cref="T:System.Type"/> which implements either <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata">
+            <summary>
+            Metadata which specifies the data source for model binding.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata.BindingSource">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata.BindingSource"/>. 
+            </summary>
+            <remarks>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata.BindingSource"/> is metadata which can be used to determine which data
+            sources are valid for model binding of a property or parameter.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder">
+            <summary>
+            Defines an interface for model binders.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder.BindModelAsync(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext)">
+            <summary>
+            Attempts to bind a model.
+            </summary>
+            <param name="bindingContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext"/>.</param>
+            <returns>
+            <para>
+            A <see cref="T:System.Threading.Tasks.Task"/> which will complete when the model binding process completes.
+            </para>
+            <para>
+            If model binding was successful, the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result"/> should have
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.IsModelSet"/> set to <c>true</c>.
+            </para>
+            <para>
+            A model binder that completes successfully should set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result"/> to
+            a value returned from <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Success(System.Object)"/>. 
+            </para>
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinderProvider">
+            <summary>
+            Creates <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> instances. Register <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinderProvider"/>
+            instances in <c>MvcOptions</c>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinderProvider.GetBinder(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> based on <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext"/>.</param>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelNameProvider">
+            <summary>
+            Represents an entity which can provide model name as metadata.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IModelNameProvider.Name">
+            <summary>
+            Model name.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IPropertyFilterProvider">
+            <summary>
+            Provides a predicate which can determines which model properties should be bound by model binding.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IPropertyFilterProvider.PropertyFilter">
+            <summary>
+            Gets a predicate which can determines which model properties should be bound by model binding.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IRequestPredicateProvider">
+            <summary>
+            An interface that allows a top-level model to be bound or not bound based on state associated
+            with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IRequestPredicateProvider.RequestPredicate">
+            <summary>
+            Gets a function which determines whether or not the model object should be bound based
+            on the current request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider">
+            <summary>
+            Defines the methods that are required for a value provider.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider.ContainsPrefix(System.String)">
+            <summary>
+            Determines whether the collection contains the specified prefix.
+            </summary>
+            <param name="prefix">The prefix to search for.</param>
+            <returns>true if the collection contains the specified prefix; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider.GetValue(System.String)">
+            <summary>
+            Retrieves a value object using the specified key.
+            </summary>
+            <param name="key">The key of the value object to retrieve.</param>
+            <returns>The value object for the specified key. If the exact key is not found, null.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory">
+            <summary>
+            A factory for creating <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> instances.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory.CreateValueProviderAsync(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> with values from the current request
+            and adds it to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ValueProviders"/> list.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext"/>.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that when completed will add an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> instance
+            to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ValueProviders"/> list if applicable.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider">
+            <summary>
+            Provider for error messages the model binding system detects.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.MissingBindRequiredValueAccessor">
+            <summary>
+            Error message the model binding system adds when a property with an associated
+            <c>BindRequiredAttribute</c> is not bound.
+            </summary>
+            <value>
+            Default <see cref="T:System.String"/> is "A value for the '{0}' parameter or property was not provided.".
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.MissingKeyOrValueAccessor">
+            <summary>
+            Error message the model binding system adds when either the key or the value of a
+            <see cref="T:System.Collections.Generic.KeyValuePair`2"/> is bound but not both.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "A value is required.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.MissingRequestBodyRequiredValueAccessor">
+            <summary>
+            Error message the model binding system adds when no value is provided for the request body,
+            but a value is required.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "A non-empty request body is required.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.ValueMustNotBeNullAccessor">
+            <summary>
+            Error message the model binding system adds when a <c>null</c> value is bound to a
+            non-<see cref="T:System.Nullable"/> property.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The value '{0}' is invalid.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.AttemptedValueIsInvalidAccessor">
+            <summary>
+            Error message the model binding system adds when <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.Exception"/> is of type
+            <see cref="T:System.FormatException"/> or <see cref="T:System.OverflowException"/>, value is known, and error is associated
+            with a property.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The value '{0}' is not valid for {1}.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.NonPropertyAttemptedValueIsInvalidAccessor">
+            <summary>
+            Error message the model binding system adds when <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.Exception"/> is of type
+            <see cref="T:System.FormatException"/> or <see cref="T:System.OverflowException"/>, value is known, and error is associated
+            with a collection element or action parameter.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The value '{0}' is not valid.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.UnknownValueIsInvalidAccessor">
+            <summary>
+            Error message the model binding system adds when <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.Exception"/> is of type
+            <see cref="T:System.FormatException"/> or <see cref="T:System.OverflowException"/>, value is unknown, and error is associated
+            with a property.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The supplied value is invalid for {0}.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.NonPropertyUnknownValueIsInvalidAccessor">
+            <summary>
+            Error message the model binding system adds when <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.Exception"/> is of type
+            <see cref="T:System.FormatException"/> or <see cref="T:System.OverflowException"/>, value is unknown, and error is associated
+            with a collection element or action parameter.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The supplied value is invalid.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.ValueIsInvalidAccessor">
+            <summary>
+            Fallback error message HTML and tag helpers display when a property is invalid but the
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError"/>s have <c>null</c> <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.ErrorMessage"/>s.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The value '{0}' is invalid.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.ValueMustBeANumberAccessor">
+            <summary>
+            Error message HTML and tag helpers add for client-side validation of numeric formats. Visible in the
+            browser if the field for a <c>float</c> (for example) property does not have a correctly-formatted value.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The field {0} must be a number.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.NonPropertyValueMustBeANumberAccessor">
+            <summary>
+            Error message HTML and tag helpers add for client-side validation of numeric formats. Visible in the
+            browser if the field for a <c>float</c> (for example) collection element or action parameter does not have a
+            correctly-formatted value.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The field must be a number.".</value>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity">
+            <summary>
+            A key type which identifies a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ForType(System.Type)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/> for the provided model <see cref="T:System.Type"/>.
+            </summary>
+            <param name="modelType">The model <see cref="T:System.Type"/>.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ForProperty(System.Type,System.String,System.Type)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/> for the provided property.
+            </summary>
+            <param name="modelType">The model type.</param>
+            <param name="name">The name of the property.</param>
+            <param name="containerType">The container type of the model property.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ForParameter(System.Reflection.ParameterInfo)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/> for the provided parameter.
+            </summary>
+            <param name="parameter">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ParameterInfo" />.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ForParameter(System.Reflection.ParameterInfo,System.Type)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/> for the provided parameter with the specified
+            model type.
+            </summary>
+            <param name="parameter">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ParameterInfo" />.</param>
+            <param name="modelType">The model type.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ContainerType">
+            <summary>
+            Gets the <see cref="T:System.Type"/> defining the model property represented by the current
+            instance, or <c>null</c> if the current instance does not represent a property.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ModelType">
+            <summary>
+            Gets the <see cref="T:System.Type"/> represented by the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.MetadataKind">
+            <summary>
+            Gets a value indicating the kind of metadata represented by the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.Name">
+            <summary>
+            Gets the name of the current instance if it represents a parameter or property, or <c>null</c> if
+            the current instance represents a type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ParameterInfo">
+            <summary>
+            Gets a descriptor for the parameter, or <c>null</c> if this instance
+            does not represent a parameter.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataKind">
+            <summary>
+            Enumeration for the kinds of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataKind.Type">
+            <summary>
+            Used for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for a <see cref="T:System.Type"/>.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataKind.Property">
+            <summary>
+            Used for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for a property.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataKind.Parameter">
+            <summary>
+            Used for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for a parameter.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext">
+            <summary>
+            A context object for <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinderProvider.GetBinder(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext)"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.CreateBinder(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Creates an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> for the given <paramref name="metadata"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for the model.</param>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.CreateBinder(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo)">
+            <summary>
+            Creates an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> for the given <paramref name="metadata"/>
+            and <paramref name="bindingInfo"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for the model.</param>
+            <param name="bindingInfo">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.BindingInfo"/> that should be used
+            for creating the binder.</param>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.BindingInfo">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.BindingInfo"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.Metadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.MetadataProvider">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.Services">
+            <summary>
+            Gets the <see cref="T:System.IServiceProvider"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext">
+            <summary>
+            A context that contains operating information for model binding and validation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ActionContext">
+            <summary>
+            Represents the <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/> associated with this context.
+            </summary>
+            <remarks>
+            The property setter is provided for unit testing purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.BinderModelName">
+            <summary>
+            Gets or sets a model name which is explicitly set using an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelNameProvider"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.BindingSource">
+            <summary>
+            Gets or sets a value which represents the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> associated with the
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Model"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.FieldName">
+            <summary>
+            Gets or sets the name of the current field being bound.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.HttpContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.IsTopLevelObject">
+            <summary>
+            Gets or sets an indication that the current binder is handling the top-level object.
+            </summary>
+            <remarks>Passed into the model binding system.</remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Model">
+            <summary>
+            Gets or sets the model value for the current operation.
+            </summary>
+            <remarks>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Model"/> will typically be set for a binding operation that works
+            against a pre-existing model object to update certain properties.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelMetadata">
+            <summary>
+            Gets or sets the metadata for the model associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelName">
+            <summary>
+            Gets or sets the name of the model. This property is used as a key for looking up values in
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> during model binding.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.OriginalModelName">
+            <summary>
+            Gets or sets the name of the top-level model. This is not reset to <see cref="F:System.String.Empty"/> when value
+            providers have no match for that model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelState">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> used to capture <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> values
+            for properties in the object graph of the model when binding.
+            </summary>
+            <remarks>
+            The property setter is provided for unit testing purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelType">
+            <summary>
+            Gets the type of the model.
+            </summary>
+            <remarks>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelMetadata"/> property must be set to access this property.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.PropertyFilter">
+            <summary>
+            Gets or sets a predicate which will be evaluated for each property to determine if the property
+            is eligible for model binding.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ValidationState">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary"/>. Used for tracking validation state to
+            customize validation behavior for a model object.
+            </summary>
+            <remarks>
+            The property setter is provided for unit testing purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ValueProvider">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result">
+            <summary>
+            <para>
+            Gets or sets a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> which represents the result of the model binding process.
+            </para>
+            <para>
+            Before an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> is called, <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result"/> will be set to a value indicating
+            failure. The binder should set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result"/> to a value created with
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Success(System.Object)"/> if model binding succeeded.
+            </para>
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.EnterNestedScope(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.String,System.Object)">
+            <summary>
+            Pushes a layer of state onto this context. Model binders will call this as part of recursion when binding
+            properties or collection items.
+            </summary>
+            <param name="modelMetadata">
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> to assign to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelMetadata"/> property.
+            </param>
+            <param name="fieldName">Name to assign to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.FieldName"/> property.</param>
+            <param name="modelName">Name to assign to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelName"/> property.</param>
+            <param name="model">Instance to assign to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Model"/> property.</param>
+            <returns>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope"/> scope object which should be used in a <c>using</c> statement where
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.EnterNestedScope(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.String,System.Object)"/> is called.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.EnterNestedScope">
+            <summary>
+            Pushes a layer of state onto this context. Model binders will call this as part of recursion when binding
+            properties or collection items.
+            </summary>
+            <returns>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope"/> scope object which should be used in a <c>using</c> statement where
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.EnterNestedScope"/> is called.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ExitNestedScope">
+            <summary>
+            Removes a layer of state pushed by calling <see cref="M:EnterNestedScope"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope">
+            <summary>
+            Return value of <see cref="M:EnterNestedScope"/>. Should be disposed
+            by caller when child binding context state should be popped off of
+            the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext)">
+            <summary>
+            Initializes the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope"/> for a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext"/>.
+            </summary>
+            <param name="context"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope.Dispose">
+            <summary>
+            Exits the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope"/> created by calling <see cref="M:EnterNestedScope"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult">
+            <summary>
+            Contains the result of model binding.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Failed">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> representing a failed model binding operation.
+            </summary>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> representing a failed model binding operation.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Success(System.Object)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> representing a successful model binding operation.
+            </summary>
+            <param name="model">The model value. May be <c>null.</c></param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> representing a successful model bind.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Model">
+            <summary>
+            Gets the model associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.IsModelSet">
+            <summary>
+            <para>
+            Gets a value indicating whether or not the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Model"/> value has been set.
+            </para>
+            <para>
+            This property can be used to distinguish between a model binder which does not find a value and
+            the case where a model binder sets the <c>null</c> value.
+            </para>
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.ToString">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.op_Equality(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult,Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult)">
+            <summary>
+            Compares <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> objects for equality.
+            </summary>
+            <param name="x">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/>.</param>
+            <param name="y">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/>.</param>
+            <returns><c>true</c> if the objects are equal, otherwise <c>false</c>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.op_Inequality(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult,Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult)">
+            <summary>
+            Compares <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> objects for inequality.
+            </summary>
+            <param name="x">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/>.</param>
+            <param name="y">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/>.</param>
+            <returns><c>true</c> if the objects are not equal, otherwise <c>false</c>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata">
+            <summary>
+            A metadata representation of a model type, property or parameter.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DefaultOrder">
+            <summary>
+            The default value of <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Order"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+            <param name="identity">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ContainerType">
+            <summary>
+            Gets the type containing the property if this metadata is for a property; <see langword="null"/> otherwise.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ContainerMetadata">
+            <summary>
+            Gets the metadata for <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ContainerType"/> if this metadata is for a property;
+            <see langword="null"/> otherwise.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.MetadataKind">
+            <summary>
+            Gets a value indicating the kind of metadata element represented by the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType">
+            <summary>
+            Gets the model type represented by the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Name">
+            <summary>
+            Gets the name of the parameter or property if this metadata is for a parameter or property;
+            <see langword="null"/> otherwise i.e. if this is the metadata for a type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ParameterName">
+            <summary>
+            Gets the name of the parameter if this metadata is for a parameter; <see langword="null"/> otherwise.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertyName">
+            <summary>
+            Gets the name of the property if this metadata is for a property; <see langword="null"/> otherwise.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Identity">
+            <summary>
+            Gets the key for the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.AdditionalValues">
+            <summary>
+            Gets a collection of additional information about the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Properties">
+            <summary>
+            Gets the collection of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instances for the model's properties.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.BinderModelName">
+            <summary>
+            Gets the name of a model if specified explicitly using <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelNameProvider"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.BinderType">
+            <summary>
+            Gets the <see cref="T:System.Type"/> of an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> of a model if specified explicitly using
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IBinderTypeProviderMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.BindingSource">
+            <summary>
+            Gets a binder metadata for this model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ConvertEmptyStringToNull">
+            <summary>
+            Gets a value indicating whether or not to convert an empty string value or one containing only whitespace
+            characters to <c>null</c> when representing a model as text.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DataTypeName">
+            <summary>
+            Gets the name of the model's datatype.  Overrides <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> in some
+            display scenarios.
+            </summary>
+            <value><c>null</c> unless set manually or through additional metadata e.g. attributes.</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Description">
+            <summary>
+            Gets the description of the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DisplayFormatString">
+            <summary>
+            Gets the format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to display the
+            model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DisplayName">
+            <summary>
+            Gets the display name of the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EditFormatString">
+            <summary>
+            Gets the format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to edit the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ElementMetadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for elements of <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> if that <see cref="T:System.Type"/>
+            implements <see cref="T:System.Collections.IEnumerable"/>.
+            </summary>
+            <value>
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for <c>T</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> implements
+            <see cref="T:System.Collections.Generic.IEnumerable`1"/>. <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for <c>object</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/>
+            implements <see cref="T:System.Collections.IEnumerable"/> but not <see cref="T:System.Collections.Generic.IEnumerable`1"/>. <c>null</c> otherwise i.e. when
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnumerableType"/> is <c>false</c>.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EnumGroupedDisplayNamesAndValues">
+            <summary>
+            Gets the ordered and grouped display names and values of all <see cref="T:System.Enum"/> values in
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/>.
+            </summary>
+            <value>
+            An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Collections.Generic.KeyValuePair`2"/> of mappings between
+            <see cref="T:System.Enum"/> field groups, names and values. <c>null</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnum"/> is <c>false</c>.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EnumNamesAndValues">
+            <summary>
+            Gets the names and values of all <see cref="T:System.Enum"/> values in <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/>.
+            </summary>
+            <value>
+            An <see cref="T:System.Collections.Generic.IReadOnlyDictionary`2"/> of mappings between <see cref="T:System.Enum"/> field names
+            and values. <c>null</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnum"/> is <c>false</c>.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.HasNonDefaultEditFormat">
+            <summary>
+            Gets a value indicating whether <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EditFormatString"/> has a non-<c>null</c>, non-empty
+            value different from the default for the datatype.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.HtmlEncode">
+            <summary>
+            Gets a value indicating whether the value should be HTML-encoded.
+            </summary>
+            <value>If <c>true</c>, value should be HTML-encoded. Default is <c>true</c>.</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.HideSurroundingHtml">
+            <summary>
+            Gets a value indicating whether the "HiddenInput" display template should return
+            <c>string.Empty</c> (not the expression value) and whether the "HiddenInput" editor template should not
+            also return the expression value (together with the hidden &lt;input&gt; element).
+            </summary>
+            <remarks>
+            If <c>true</c>, also causes the default <see cref="T:System.Object"/> display and editor templates to return HTML
+            lacking the usual per-property &lt;div&gt; wrapper around the associated property. Thus the default
+            <see cref="T:System.Object"/> display template effectively skips the property and the default <see cref="T:System.Object"/>
+            editor template returns only the hidden &lt;input&gt; element for the property.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsBindingAllowed">
+            <summary>
+            Gets a value indicating whether or not the model value can be bound by model binding. This is only
+            applicable when the current instance represents a property.
+            </summary>
+            <remarks>
+            If <c>true</c> then the model value is considered supported by model binding and can be set
+            based on provided input in the request.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsBindingRequired">
+            <summary>
+            Gets a value indicating whether or not the model value is required by model binding. This is only
+            applicable when the current instance represents a property.
+            </summary>
+            <remarks>
+            If <c>true</c> then the model value is considered required by model binding and must have a value
+            supplied in the request to be considered valid.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnum">
+            <summary>
+            Gets a value indicating whether <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/> is for an <see cref="T:System.Enum"/>.
+            </summary>
+            <value>
+            <c>true</c> if <c>type.IsEnum</c> (<c>type.GetTypeInfo().IsEnum</c> for DNX Core 5.0) is <c>true</c> for
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/>; <c>false</c> otherwise.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsFlagsEnum">
+            <summary>
+            Gets a value indicating whether <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/> is for an <see cref="T:System.Enum"/> with an
+            associated <see cref="T:System.FlagsAttribute"/>.
+            </summary>
+            <value>
+            <c>true</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnum"/> is <c>true</c> and <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/> has an
+            associated <see cref="T:System.FlagsAttribute"/>; <c>false</c> otherwise.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsReadOnly">
+            <summary>
+            Gets a value indicating whether or not the model value is read-only. This is only applicable when
+            the current instance represents a property.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsRequired">
+            <summary>
+            Gets a value indicating whether or not the model value is required. This is only applicable when
+            the current instance represents a property.
+            </summary>
+            <remarks>
+            <para>
+            If <c>true</c> then the model value is considered required by validators.
+            </para>
+            <para>
+            By default an implicit <c>System.ComponentModel.DataAnnotations.RequiredAttribute</c> will be added
+            if not present when <c>true.</c>.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelBindingMessageProvider">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider"/> instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Order">
+            <summary>
+            Gets a value indicating where the current metadata should be ordered relative to other properties
+            in its containing type.
+            </summary>
+            <remarks>
+            <para>For example this property is used to order items in <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Properties"/>.</para>
+            <para>The default order is <c>10000</c>.</para>
+            </remarks>
+            <value>The order value of the current metadata.</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Placeholder">
+            <summary>
+            Gets the text to display as a placeholder value for an editor.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.NullDisplayText">
+            <summary>
+            Gets the text to display when the model is <c>null</c>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertyFilterProvider">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IPropertyFilterProvider"/>, which can determine which properties
+            should be model bound.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ShowForDisplay">
+            <summary>
+            Gets a value that indicates whether the property should be displayed in read-only views.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ShowForEdit">
+            <summary>
+            Gets a value that indicates whether the property should be displayed in editable views.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.SimpleDisplayProperty">
+            <summary>
+            Gets  a value which is the name of the property used to display the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.TemplateHint">
+            <summary>
+            Gets a string used by the templating system to discover display-templates and editor-templates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertyValidationFilter">
+            <summary>
+            Gets an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter"/> implementation that indicates whether this model should be
+            validated. If <c>null</c>, properties with this <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> are validated.
+            </summary>
+            <value>Defaults to <c>null</c>.</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ValidateChildren">
+            <summary>
+            Gets a value that indicates whether properties or elements of the model should be validated.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.HasValidators">
+            <summary>
+            Gets a value that indicates if the model, or one of it's properties, or elements has associatated validators.
+            </summary>
+            <remarks>
+            When <see langword="false"/>, validation can be assume that the model is valid (<see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid"/>) without
+            inspecting the object graph.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ValidatorMetadata">
+            <summary>
+            Gets a collection of metadata items for validators.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ElementType">
+            <summary>
+            Gets the <see cref="T:System.Type"/> for elements of <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> if that <see cref="T:System.Type"/>
+            implements <see cref="T:System.Collections.IEnumerable"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsComplexType">
+            <summary>
+            Gets a value indicating whether <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> is a complex type.
+            </summary>
+            <remarks>
+            A complex type is defined as a <see cref="T:System.Type"/> without a <see cref="T:System.ComponentModel.TypeConverter"/> that can convert
+            from <see cref="T:System.String"/>. Most POCO and <see cref="T:System.Collections.IEnumerable"/> types are therefore complex. Most, if
+            not all, BCL value types are simple types.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsNullableValueType">
+            <summary>
+            Gets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> is a <see cref="T:System.Nullable`1"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsCollectionType">
+            <summary>
+            Gets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> is a collection type.
+            </summary>
+            <remarks>
+            A collection type is defined as a <see cref="T:System.Type"/> which is assignable to <see cref="T:System.Collections.Generic.ICollection`1"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnumerableType">
+            <summary>
+            Gets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> is an enumerable type.
+            </summary>
+            <remarks>
+            An enumerable type is defined as a <see cref="T:System.Type"/> which is assignable to
+            <see cref="T:System.Collections.IEnumerable"/>, and is not a <see cref="T:System.String"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsReferenceOrNullableType">
+            <summary>
+            Gets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> allows <c>null</c> values.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType">
+            <summary>
+            Gets the underlying type argument if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> inherits from <see cref="T:System.Nullable`1"/>.
+            Otherwise gets <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/>.
+            </summary>
+            <remarks>
+            Identical to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> unless <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsNullableValueType"/> is <c>true</c>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertyGetter">
+            <summary>
+            Gets a property getter delegate to get the property value from a model object.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertySetter">
+            <summary>
+            Gets a property setter delegate to set the property value on a model object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetDisplayName">
+            <summary>
+            Gets a display name for the model.
+            </summary>
+            <remarks>
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetDisplayName"/> will return the first of the following expressions which has a
+            non-<see langword="null"/> value: <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DisplayName"/>, <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Name"/>, or <c>ModelType.Name</c>.
+            </remarks>
+            <returns>The display name.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetMetadataForType(System.Type)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetMetadataForProperties(System.Type)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider">
+            <summary>
+            A provider that can supply instances of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForProperties(System.Type)">
+            <summary>
+            Supplies metadata describing the properties of a <see cref="T:System.Type"/>.
+            </summary>
+            <param name="modelType">The <see cref="T:System.Type"/>.</param>
+            <returns>A set of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instances describing properties of the <see cref="T:System.Type"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForType(System.Type)">
+            <summary>
+            Supplies metadata describing a <see cref="T:System.Type"/>.
+            </summary>
+            <param name="modelType">The <see cref="T:System.Type"/>.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance describing the <see cref="T:System.Type"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForParameter(System.Reflection.ParameterInfo)">
+            <summary>
+            Supplies metadata describing a parameter.
+            </summary>
+            <param name="parameter">The <see cref="T:System.Reflection.ParameterInfo"/>.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance describing the <paramref name="parameter"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForParameter(System.Reflection.ParameterInfo,System.Type)">
+            <summary>
+            Supplies metadata describing a parameter.
+            </summary>
+            <param name="parameter">The <see cref="T:System.Reflection.ParameterInfo"/></param>
+            <param name="modelType">The actual model type.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance describing the <paramref name="parameter"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForProperty(System.Reflection.PropertyInfo,System.Type)">
+            <summary>
+            Supplies metadata describing a property.
+            </summary>
+            <param name="propertyInfo">The <see cref="T:System.Reflection.PropertyInfo"/>.</param>
+            <param name="modelType">The actual model type.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance describing the <paramref name="propertyInfo"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelPropertyCollection">
+            <summary>
+            A read-only collection of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> objects which represent model properties.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelPropertyCollection.#ctor(System.Collections.Generic.IEnumerable{Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelPropertyCollection"/>.
+            </summary>
+            <param name="properties">The properties.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelPropertyCollection.Item(System.String)">
+            <summary>
+            Gets a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance for the property corresponding to <paramref name="propertyName"/>.
+            </summary>
+            <param name="propertyName">
+            The property name. Property names are compared using <see cref="F:System.StringComparison.Ordinal"/>.
+            </param>
+            <returns>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance for the property specified by <paramref name="propertyName"/>, or
+            <c>null</c> if no match can be found.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary">
+            <summary>
+            Represents the state of an attempt to bind values from an HTTP Request to an action method, which includes
+            validation information.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.DefaultMaxAllowedErrors">
+            <summary>
+            The default value for <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors"/> of <c>200</c>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> class.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.#ctor(System.Int32)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> class.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> class by using values that are copied
+            from the specified <paramref name="dictionary"/>.
+            </summary>
+            <param name="dictionary">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> to copy values from.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Root">
+            <summary>
+            Root entry for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors">
+            <summary>
+            Gets or sets the maximum allowed model state errors in this instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            Defaults to <c>200</c>.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> tracks the number of model errors added by calls to
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.AddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/> or
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryAddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/>.
+            Once the value of <code>MaxAllowedErrors - 1</code> is reached, if another attempt is made to add an error,
+            the error message will be ignored and a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> will be added.
+            </para>
+            <para>
+            Errors added via modifying <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> directly do not count towards this limit.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.HasReachedMaxErrors">
+            <summary>
+            Gets a value indicating whether or not the maximum number of errors have been
+            recorded.
+            </summary>
+            <remarks>
+            Returns <c>true</c> if a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> has been recorded;
+            otherwise <c>false</c>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.ErrorCount">
+            <summary>
+            Gets the number of errors added to this instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> via
+            <see cref="M:AddModelError"/> or <see cref="M:TryAddModelError"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Count">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Keys">
+            <summary>
+            Gets the key sequence.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.System#Collections#Generic#IReadOnlyDictionary{System#String,Microsoft#AspNetCore#Mvc#ModelBinding#ModelStateEntry}#Keys">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Values">
+            <summary>
+            Gets the value sequence.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.System#Collections#Generic#IReadOnlyDictionary{System#String,Microsoft#AspNetCore#Mvc#ModelBinding#ModelStateEntry}#Values">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.IsValid">
+            <summary>
+            Gets a value that indicates whether any model state values in this model state dictionary is invalid or not validated.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.ValidationState">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Item(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryAddModelException(System.String,System.Exception)">
+            <summary>
+            Adds the specified <paramref name="exception"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/> instance
+            that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <remarks>
+            This method allows adding the <paramref name="exception"/> to the current <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>
+            when <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> is not available or the exact <paramref name="exception"/>
+            must be maintained for later use (even if it is for example a <see cref="T:System.FormatException"/>).
+            Where <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> is available, use <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.AddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/> instead.
+            </remarks>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="exception">The <see cref="T:System.Exception"/> to add.</param>
+            <returns>
+            <c>True</c> if the given error was added, <c>false</c> if the error was ignored.
+            See <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors"/>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.AddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Adds the specified <paramref name="exception"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/> instance
+            that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="exception">The <see cref="T:System.Exception"/> to add. Some exception types will be replaced with
+            a descriptive error message.</param>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with the model.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryAddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Attempts to add the specified <paramref name="exception"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/>
+            instance that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="exception">The <see cref="T:System.Exception"/> to add. Some exception types will be replaced with
+            a descriptive error message.</param>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with the model.</param>
+            <returns>
+            <c>True</c> if the given error was added, <c>false</c> if the error was ignored.
+            See <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors"/>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.AddModelError(System.String,System.String)">
+            <summary>
+            Adds the specified <paramref name="errorMessage"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/> instance
+            that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="errorMessage">The error message to add.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryAddModelError(System.String,System.String)">
+            <summary>
+            Attempts to add the specified <paramref name="errorMessage"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/>
+            instance that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="errorMessage">The error message to add.</param>
+            <returns>
+            <c>True</c> if the given error was added, <c>false</c> if the error was ignored.
+            See <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors"/>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.GetFieldValidationState(System.String)">
+            <summary>
+            Returns the aggregate <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState"/> for items starting with the
+            specified <paramref name="key"/>.
+            </summary>
+            <param name="key">The key to look up model state errors for.</param>
+            <returns>Returns <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Unvalidated"/> if no entries are found for the specified
+            key, <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Invalid"/> if at least one instance is found with one or more model
+            state errors; <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid"/> otherwise.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.GetValidationState(System.String)">
+            <summary>
+            Returns <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState"/> for the <paramref name="key"/>.
+            </summary>
+            <param name="key">The key to look up model state errors for.</param>
+            <returns>Returns <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Unvalidated"/> if no entry is found for the specified
+            key, <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Invalid"/> if an instance is found with one or more model
+            state errors; <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid"/> otherwise.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MarkFieldValid(System.String)">
+            <summary>
+            Marks the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.ValidationState"/> for the entry with the specified
+            <paramref name="key"/> as <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid"/>.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to mark as valid.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MarkFieldSkipped(System.String)">
+            <summary>
+            Marks the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.ValidationState"/> for the entry with the specified <paramref name="key"/>
+            as <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Skipped"/>.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to mark as skipped.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Merge(Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary)">
+            <summary>
+            Copies the values from the specified <paramref name="dictionary"/> into this instance, overwriting
+            existing values if keys are the same.
+            </summary>
+            <param name="dictionary">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> to copy values from.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.SetModelValue(System.String,System.Object,System.String)">
+            <summary>
+            Sets the of <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.RawValue"/> and <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.AttemptedValue"/> for
+            the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> with the specified <paramref name="key"/>.
+            </summary>
+            <param name="key">The key for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> entry.</param>
+            <param name="rawValue">The raw value for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> entry.</param>
+            <param name="attemptedValue">
+            The values of <paramref name="rawValue"/> in a comma-separated <see cref="T:System.String"/>.
+            </param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.SetModelValue(System.String,Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)">
+            <summary>
+            Sets the value for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> with the specified <paramref name="key"/>.
+            </summary>
+            <param name="key">The key for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> entry</param>
+            <param name="valueProviderResult">
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> with data for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> entry.
+            </param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.ClearValidationState(System.String)">
+            <summary>
+            Clears <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> entries that match the key that is passed as parameter.
+            </summary>
+            <param name="key">The key of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> to clear.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Clear">
+            <summary>
+            Removes all keys and values from this instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.ContainsKey(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Remove(System.String)">
+            <summary>
+            Removes the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> with the specified <paramref name="key"/>.
+            </summary>
+            <param name="key">The key.</param>
+            <returns><c>true</c> if the element is successfully removed; otherwise <c>false</c>. This method also
+            returns <c>false</c> if key was not found.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryGetValue(System.String,Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry@)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.GetEnumerator">
+            <summary>
+            Returns an enumerator that iterates through this instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Enumerator"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{System#String,Microsoft#AspNetCore#Mvc#ModelBinding#ModelStateEntry}}#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.System#Collections#IEnumerable#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry">
+            <summary>
+            An entry in a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.RawValue">
+            <summary>
+            Gets the raw value from the request associated with this entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.AttemptedValue">
+            <summary>
+            Gets the set of values contained in <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.RawValue"/>, joined into a comma-separated string.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelErrorCollection"/> for this entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.ValidationState">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState"/> for this entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.IsContainerNode">
+            <summary>
+            Gets a value that determines if the current instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> is a container node.
+            Container nodes represent prefix nodes that aren't explicitly added to the
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.GetModelStateForProperty(System.String)">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> for a sub-property with the specified
+            <paramref name="propertyName"/>.
+            </summary>
+            <param name="propertyName">The property name to lookup.</param>
+            <returns>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> if a sub-property was found; otherwise <see langword="null"/>.
+            </returns>
+            <remarks>
+            This method returns any existing entry, even those with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.IsContainerNode"/> with value
+            <see langword="true"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Children">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> values for sub-properties.
+            </summary>
+            <remarks>
+            This property returns all existing entries, even those with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.IsContainerNode"/> with value
+            <see langword="true"/>.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException">
+            <summary>
+            The <see cref="T:System.Exception"/> that is thrown when too many model errors are encountered.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException.#ctor(System.String)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> with the specified
+            exception <paramref name="message"/>.
+            </summary>
+            <param name="message">The message that describes the error.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext">
+            <summary>
+            The context for client-side model validation.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider,System.Collections.Generic.IDictionary{System.String,System.String})">
+            <summary>
+            Create a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/> for validation.</param>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for validation.</param>
+            <param name="metadataProvider">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/> to be used in validation.</param>
+            <param name="attributes">The attributes dictionary for the HTML tag being rendered.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext.Attributes">
+            <summary>
+            Gets the attributes dictionary for the HTML tag being rendered.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem">
+            <summary>
+            Used to associate validators with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.ValidatorMetadata"/> instances
+            as part of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext"/>. An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidator"/> should
+            inspect <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.Results"/> and set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/> and
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.IsReusable"/> as appropriate.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.#ctor">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.#ctor(System.Object)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem"/>.
+            </summary>
+            <param name="validatorMetadata">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.ValidatorMetadata"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.ValidatorMetadata">
+            <summary>
+            Gets the metadata associated with the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidator"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.IsReusable">
+            <summary>
+            Gets or sets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/> can be reused across requests.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext">
+            <summary>
+            A context for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext"/>.
+            </summary>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for the model being validated.
+            </param>
+            <param name="items">The list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem"/>s.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.ModelMetadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.ValidatorMetadata">
+            <summary>
+            Gets the validator metadata.
+            </summary>
+            <remarks>
+            This property provides convenience access to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ValidatorMetadata"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.Results">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem"/> instances. <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider"/>
+            instances should add the appropriate <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/> properties when
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider.CreateValidators(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext)"/>
+            is called.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider">
+            <summary>
+            Provides a collection of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidator"/>s.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider.CreateValidators(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext)">
+            <summary>
+            Creates set of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidator"/>s by updating
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/> in <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.Results"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext"/> associated with this call.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator">
+            <summary>
+            Validates a model value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator.Validate(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext)">
+            <summary>
+            Validates the model value.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext"/>.</param>
+            <returns>
+            A list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationResult"/> indicating the results of validating the model value.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider">
+            <summary>
+            Provides validators for a model value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider.CreateValidators(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext)">
+            <summary>
+            Creates the validators for <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.ModelMetadata"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext"/>.</param>
+            <remarks>
+            Implementations should add the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator"/> instances to the appropriate
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/> instance which should be added to
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.Results"/>.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter">
+            <summary>
+            Contract for attributes that determine whether associated properties should be validated. When the attribute is
+            applied to a property, the validation system calls <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter.ShouldValidateEntry(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry)"/> to determine whether to
+            validate that property. When applied to a type, the validation system calls <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter.ShouldValidateEntry(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry)"/>
+            for each property that type defines to determine whether to validate it.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter.ShouldValidateEntry(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry)">
+            <summary>
+            Gets an indication whether the <paramref name="entry"/> should be validated.
+            </summary>
+            <param name="entry"><see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/> to check.</param>
+            <param name="parentEntry"><see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/> containing <paramref name="entry"/>.</param>
+            <returns><c>true</c> if <paramref name="entry"/> should be validated; <c>false</c> otherwise.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IValidationStrategy">
+            <summary>
+            Defines a strategy for enumerating the child entries of a model object which should be validated.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IValidationStrategy.GetChildren(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.Object)">
+            <summary>
+            Gets an <see cref="T:System.Collections.Generic.IEnumerator`1"/> containing a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/> for
+            each child entry of the model object to be validated.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with <paramref name="model"/>.</param>
+            <param name="key">The model prefix associated with <paramref name="model"/>.</param>
+            <param name="model">The model object.</param>
+            <returns>An <see cref="T:System.Collections.Generic.IEnumerator`1"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext">
+            <summary>
+            A context object for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider,System.Object,System.Object)">
+            <summary>
+            Create a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/> for validation.</param>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for validation.</param>
+            <param name="metadataProvider">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/> to be used in validation.</param>
+            <param name="container">The model container.</param>
+            <param name="model">The model to be validated.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext.Model">
+            <summary>
+            Gets the model object.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext.Container">
+            <summary>
+            Gets the model container object.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase">
+            <summary>
+            A common base class for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext"/> and <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase"/>.
+            </summary>
+            <param name="actionContext">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.ActionContext"/> for this context.</param>
+            <param name="modelMetadata">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.ModelMetadata"/> for this model.</param>
+            <param name="metadataProvider">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/> to be used by this context.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.ActionContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.ModelMetadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.MetadataProvider">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext">
+            <summary>
+            A context for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext"/>.
+            </summary>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.</param>
+            <param name="items">The list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/>s.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.ModelMetadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.ValidatorMetadata">
+            <summary>
+            Gets the validator metadata.
+            </summary>
+            <remarks>
+            This property provides convenience access to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ValidatorMetadata"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.Results">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/> instances. <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider"/> instances
+            should add the appropriate <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator"/> properties when
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider.CreateValidators(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext)"/>
+            is called.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry">
+            <summary>
+            Contains data needed for validating a child entry of a model object. See <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IValidationStrategy"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.Object)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with <paramref name="model"/>.</param>
+            <param name="key">The model prefix associated with <paramref name="model"/>.</param>
+            <param name="model">The model object.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.Func{System.Object})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.</param>
+            <param name="key">The model prefix associated with the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.</param>
+            <param name="modelAccessor">A delegate that will return the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Key">
+            <summary>
+            The model prefix associated with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Metadata">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model">
+            <summary>
+            The model object.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary">
+            <summary>
+            Used for tracking validation state to customize validation behavior for a model object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.#ctor">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Item(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Count">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.IsReadOnly">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Keys">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Values">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.System#Collections#Generic#IReadOnlyDictionary{System#Object,Microsoft#AspNetCore#Mvc#ModelBinding#Validation#ValidationStateEntry}#Keys">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.System#Collections#Generic#IReadOnlyDictionary{System#Object,Microsoft#AspNetCore#Mvc#ModelBinding#Validation#ValidationStateEntry}#Values">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Add(System.Collections.Generic.KeyValuePair{System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Add(System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Clear">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Contains(System.Collections.Generic.KeyValuePair{System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.ContainsKey(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.CopyTo(System.Collections.Generic.KeyValuePair{System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry}[],System.Int32)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Remove(System.Collections.Generic.KeyValuePair{System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Remove(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.TryGetValue(System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry@)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.System#Collections#IEnumerable#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry">
+            <summary>
+            An entry in a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary"/>. Records state information to override the default
+            behavior of validation for an object.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry.Key">
+            <summary>
+            Gets or sets the model prefix associated with the entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry.Metadata">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with the entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry.SuppressValidation">
+            <summary>
+            Gets or sets a value indicating whether the associated model object should be validated.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry.Strategy">
+            <summary>
+            Gets or sets an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IValidationStrategy"/> for enumerating child entries of the associated
+            model object.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem">
+            <summary>
+            Used to associate validators with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.ValidatorMetadata"/> instances
+            as part of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext"/>. An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator"/> should
+            inspect <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.Results"/> and set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator"/> and
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.IsReusable"/> as appropriate.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.#ctor">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.#ctor(System.Object)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/>.
+            </summary>
+            <param name="validatorMetadata">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.ValidatorMetadata"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.ValidatorMetadata">
+            <summary>
+            Gets the metadata associated with the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.IsReusable">
+            <summary>
+            Gets or sets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator"/> can be reused across requests.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext">
+            <summary>
+            A context for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext"/>.
+            </summary>
+            <param name="context">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ActionContext"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ActionContext">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ActionContext"/> associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ValueProviders">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> instances.
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory"/> instances should add the appropriate
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> instances to this list.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult">
+            <summary>
+            Result of an <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider.GetValue(System.String)"/> operation.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> can represent a single submitted value or multiple submitted values.
+            </para>
+            <para>
+            Use <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.FirstValue"/> to consume only a single value, regardless of whether a single value or
+            multiple values were submitted.
+            </para>
+            <para>
+            Treat <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> as an <see cref="T:System.Collections.Generic.IEnumerable`1"/> to consume all values,
+            regardless of whether a single value or multiple values were submitted.
+            </para>
+            </remarks>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.None">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> that represents a lack of data.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.#ctor(Microsoft.Extensions.Primitives.StringValues)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> using <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>.
+            </summary>
+            <param name="values">The submitted values.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.#ctor(Microsoft.Extensions.Primitives.StringValues,System.Globalization.CultureInfo)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.
+            </summary>
+            <param name="values">The submitted values.</param>
+            <param name="culture">The <see cref="T:System.Globalization.CultureInfo"/> associated with this value.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Culture">
+            <summary>
+            Gets or sets the <see cref="T:System.Globalization.CultureInfo"/> associated with the values.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Values">
+            <summary>
+            Gets or sets the values.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.FirstValue">
+            <summary>
+            Gets the first value based on the order values were provided in the request. Use <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.FirstValue"/>
+            to get a single value for processing regardless of whether a single or multiple values were provided
+            in the request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Length">
+            <summary>
+            Gets the number of submitted values.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.ToString">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.GetEnumerator">
+            <summary>
+            Gets an <see cref="T:System.Collections.Generic.IEnumerator`1"/> for this <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.
+            </summary>
+            <returns>An <see cref="T:System.Collections.Generic.IEnumerator`1"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.System#Collections#IEnumerable#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.op_Explicit(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)~System.String">
+            <summary>
+            Converts the provided <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> into a comma-separated string containing all
+            submitted values.
+            </summary>
+            <param name="result">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.op_Explicit(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)~System.String[]">
+            <summary>
+            Converts the provided <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> into a an array of <see cref="T:System.String"/> containing
+            all submitted values.
+            </summary>
+            <param name="result">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.op_Equality(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult,Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)">
+            <summary>
+            Compares two <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> objects for equality.
+            </summary>
+            <param name="x">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+            <param name="y">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+            <returns><c>true</c> if the values are equal, otherwise <c>false</c>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.op_Inequality(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult,Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)">
+            <summary>
+            Compares two <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> objects for inequality.
+            </summary>
+            <param name="x">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+            <param name="y">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+            <returns><c>false</c> if the values are equal, otherwise <c>true</c>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo">
+            <summary>
+            Represents the routing information for an action that is attribute routed.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.Template">
+            <summary>
+            The route template. May be null if the action has no attribute routes.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.Order">
+            <summary>
+            Gets the order of the route associated with a given action. This property determines
+            the order in which routes get executed. Routes with a lower order value are tried first. In case a route
+            doesn't specify a value, it gets a default order of 0.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.Name">
+            <summary>
+            Gets the name of the route associated with a given action. This property can be used
+            to generate a link by referring to the route by name instead of attempting to match a
+            route by provided route data.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.SuppressLinkGeneration">
+            <summary>
+            Gets or sets a value that determines if the route entry associated with this model participates in link generation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.SuppressPathMatching">
+            <summary>
+            Gets or sets a value that determines if the route entry associated with this model participates in path matching (inbound routing).
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext">
+            <summary>
+            Context object to be used for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> generates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Action">
+            <summary>
+            The name of the action method that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Controller">
+            <summary>
+            The name of the controller that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Values">
+            <summary>
+            The object that contains the route values that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/>
+            uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Protocol">
+            <summary>
+            The protocol for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> generates,
+            such as "http" or "https"
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Host">
+            <summary>
+            The host name for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> generates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Fragment">
+            <summary>
+            The fragment for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> generates.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext">
+            <summary>
+            Context object to be used for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> generates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.RouteName">
+            <summary>
+            The name of the route that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Values">
+            <summary>
+            The object that contains the route values that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/>
+            uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Protocol">
+            <summary>
+            The protocol for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> generates,
+            such as "http" or "https"
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Host">
+            <summary>
+            The host name for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> generates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Fragment">
+            <summary>
+            The fragment for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> generates.
+            </summary>
+        </member>
+    </members>
+</doc>
diff --git a/VueWebApi/bin/Microsoft.AspNetCore.Routing.Abstractions.xml b/VueWebApi/bin/Microsoft.AspNetCore.Routing.Abstractions.xml
new file mode 100644
index 0000000..7a1211a
--- /dev/null
+++ b/VueWebApi/bin/Microsoft.AspNetCore.Routing.Abstractions.xml
@@ -0,0 +1,847 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.AspNetCore.Routing.Abstractions</name>
+    </assembly>
+    <members>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.#ctor(System.Reflection.PropertyInfo)">
+            <summary>
+            Initializes a fast <see cref="T:Microsoft.Extensions.Internal.PropertyHelper"/>.
+            This constructor does not cache the helper. For caching, use <see cref="M:Microsoft.Extensions.Internal.PropertyHelper.GetProperties(System.Type)"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Internal.PropertyHelper.Property">
+            <summary>
+            Gets the backing <see cref="T:System.Reflection.PropertyInfo"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Internal.PropertyHelper.Name">
+            <summary>
+            Gets (or sets in derived types) the property name.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Internal.PropertyHelper.ValueGetter">
+            <summary>
+            Gets the property value getter.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Internal.PropertyHelper.ValueSetter">
+            <summary>
+            Gets the property value setter.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetValue(System.Object)">
+            <summary>
+            Returns the property value for the specified <paramref name="instance"/>.
+            </summary>
+            <param name="instance">The object whose property value will be returned.</param>
+            <returns>The property value.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.SetValue(System.Object,System.Object)">
+            <summary>
+            Sets the property value for the specified <paramref name="instance" />.
+            </summary>
+            <param name="instance">The object whose property value will be set.</param>
+            <param name="value">The property value.</param>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetProperties(System.Reflection.TypeInfo)">
+            <summary>
+            Creates and caches fast property helpers that expose getters for every public get property on the
+            underlying type.
+            </summary>
+            <param name="typeInfo">The type info to extract property accessors for.</param>
+            <returns>A cached array of all public properties of the specified type.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetProperties(System.Type)">
+            <summary>
+            Creates and caches fast property helpers that expose getters for every public get property on the
+            specified type.
+            </summary>
+            <param name="type">The type to extract property accessors for.</param>
+            <returns>A cached array of all public properties of the specified type.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetVisibleProperties(System.Reflection.TypeInfo)">
+            <summary>
+            <para>
+            Creates and caches fast property helpers that expose getters for every non-hidden get property
+            on the specified type.
+            </para>
+            <para>
+            <see cref="M:GetVisibleProperties"/> excludes properties defined on base types that have been
+            hidden by definitions using the <c>new</c> keyword.
+            </para>
+            </summary>
+            <param name="typeInfo">The type info to extract property accessors for.</param>
+            <returns>
+            A cached array of all public properties of the specified type.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetVisibleProperties(System.Type)">
+            <summary>
+            <para>
+            Creates and caches fast property helpers that expose getters for every non-hidden get property
+            on the specified type.
+            </para>
+            <para>
+            <see cref="M:GetVisibleProperties"/> excludes properties defined on base types that have been
+            hidden by definitions using the <c>new</c> keyword.
+            </para>
+            </summary>
+            <param name="type">The type to extract property accessors for.</param>
+            <returns>
+            A cached array of all public properties of the specified type.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.MakeFastPropertyGetter(System.Reflection.PropertyInfo)">
+            <summary>
+            Creates a single fast property getter. The result is not cached.
+            </summary>
+            <param name="propertyInfo">propertyInfo to extract the getter for.</param>
+            <returns>a fast getter.</returns>
+            <remarks>
+            This method is more memory efficient than a dynamically compiled lambda, and about the
+            same speed.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.MakeNullSafeFastPropertyGetter(System.Reflection.PropertyInfo)">
+            <summary>
+            Creates a single fast property getter which is safe for a null input object. The result is not cached.
+            </summary>
+            <param name="propertyInfo">propertyInfo to extract the getter for.</param>
+            <returns>a fast getter.</returns>
+            <remarks>
+            This method is more memory efficient than a dynamically compiled lambda, and about the
+            same speed.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.MakeFastPropertySetter(System.Reflection.PropertyInfo)">
+            <summary>
+            Creates a single fast property setter for reference types. The result is not cached.
+            </summary>
+            <param name="propertyInfo">propertyInfo to extract the setter for.</param>
+            <returns>a fast getter.</returns>
+            <remarks>
+            This method is more memory efficient than a dynamically compiled lambda, and about the
+            same speed. This only works for reference types.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.ObjectToDictionary(System.Object)">
+             <summary>
+             Given an object, adds each instance property with a public get method as a key and its
+             associated value to a dictionary.
+            
+             If the object is already an <see cref="T:System.Collections.Generic.IDictionary`2"/> instance, then a copy
+             is returned.
+             </summary>
+             <remarks>
+             The implementation of PropertyHelper will cache the property accessors per-type. This is
+             faster when the same type is used multiple times with ObjectToDictionary.
+             </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Endpoint">
+            <summary>
+            Respresents a logical endpoint in an application.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Endpoint.#ctor(Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Http.EndpointMetadataCollection,System.String)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Http.Endpoint"/>.
+            </summary>
+            <param name="requestDelegate">The delegate used to process requests for the endpoint.</param>
+            <param name="metadata">
+            The endpoint <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>. May be null.
+            </param>
+            <param name="displayName">
+            The informational display name of the endpoint. May be null.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Endpoint.DisplayName">
+            <summary>
+            Gets the informational display name of this endpoint.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Endpoint.Metadata">
+            <summary>
+            Gets the collection of metadata associated with this endpoint.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Endpoint.RequestDelegate">
+            <summary>
+            Gets the delegate used to process requests for the endpoint.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection">
+            <summary>
+            A collection of arbitrary metadata associated with an endpoint.
+            </summary>
+            <remarks>
+            <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/> instances contain a list of metadata items
+            of arbitrary types. The metadata items are stored as an ordered collection with
+            items arranged in ascending order of precedence.
+            </remarks>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Empty">
+            <summary>
+            An empty <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.#ctor(System.Collections.Generic.IEnumerable{System.Object})">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>.
+            </summary>
+            <param name="items">The metadata items.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.#ctor(System.Object[])">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>.
+            </summary>
+            <param name="items">The metadata items.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Item(System.Int32)">
+            <summary>
+            Gets the item at <paramref name="index"/>.
+            </summary>
+            <param name="index">The index of the item to retrieve.</param>
+            <returns>The item at <paramref name="index"/>.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Count">
+            <summary>
+            Gets the count of metadata items.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.GetMetadata``1">
+            <summary>
+            Gets the most significant metadata item of type <typeparamref name="T"/>.
+            </summary>
+            <typeparam name="T">The type of metadata to retrieve.</typeparam>
+            <returns>
+            The most significant metadata of type <typeparamref name="T"/> or <c>null</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.GetOrderedMetadata``1">
+            <summary>
+            Gets the metadata items of type <typeparamref name="T"/> in ascending
+            order of precedence.
+            </summary>
+            <typeparam name="T">The type of metadata.</typeparam>
+            <returns>A sequence of metadata items of <typeparamref name="T"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.GetEnumerator">
+            <summary>
+            Gets an <see cref="T:System.Collections.IEnumerator"/> of all metadata items.
+            </summary>
+            <returns>An <see cref="T:System.Collections.IEnumerator"/> of all metadata items.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.System#Collections#Generic#IEnumerable{System#Object}#GetEnumerator">
+            <summary>
+            Gets an <see cref="T:System.Collections.Generic.IEnumerator`1"/> of all metadata items.
+            </summary>
+            <returns>An <see cref="T:System.Collections.Generic.IEnumerator`1"/> of all metadata items.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.System#Collections#IEnumerable#GetEnumerator">
+            <summary>
+            Gets an <see cref="T:System.Collections.IEnumerator"/> of all metadata items.
+            </summary>
+            <returns>An <see cref="T:System.Collections.IEnumerator"/> of all metadata items.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator">
+            <summary>
+            Enumerates the elements of an <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator.Current">
+            <summary>
+            Gets the element at the current position of the enumerator
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator.Dispose">
+            <summary>
+            Releases all resources used by the <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator.MoveNext">
+            <summary>
+            Advances the enumerator to the next element of the <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator"/>.
+            </summary>
+            <returns>
+            <c>true</c> if the enumerator was successfully advanced to the next element;
+            <c>false</c> if the enumerator has passed the end of the collection.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator.Reset">
+            <summary>
+            Sets the enumerator to its initial position, which is before the first element in the collection.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IEndpointFeature">
+            <summary>
+            A feature interface for endpoint routing. Use <see cref="P:Microsoft.AspNetCore.Http.HttpContext.Features"/>
+            to access an instance associated with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IEndpointFeature.Endpoint">
+            <summary>
+            Gets or sets the selected <see cref="T:Microsoft.AspNetCore.Http.Endpoint"/> for the current
+            request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IRouteValuesFeature.RouteValues">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> associated with the currrent
+            request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IOutboundParameterTransformer">
+            <summary>
+            Defines the contract that a class must implement to transform route values while building
+            a URI.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.IOutboundParameterTransformer.TransformOutbound(System.Object)">
+            <summary>
+            Transforms the specified route value to a string for inclusion in a URI.
+            </summary>
+            <param name="value">The route value to transform.</param>
+            <returns>The transformed value.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IParameterPolicy">
+            <summary>
+            A marker interface for types that are associated with route parameters.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IRouteConstraint">
+            <summary>
+            Defines the contract that a class must implement in order to check whether a URL parameter
+            value is valid for a constraint.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.IRouteConstraint.Match(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.IRouter,System.String,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteDirection)">
+            <summary>
+            Determines whether the URL parameter contains a valid value for this constraint.
+            </summary>
+            <param name="httpContext">An object that encapsulates information about the HTTP request.</param>
+            <param name="route">The router that this constraint belongs to.</param>
+            <param name="routeKey">The name of the parameter that is being checked.</param>
+            <param name="values">A dictionary that contains the parameters for the URL.</param>
+            <param name="routeDirection">
+            An object that indicates whether the constraint check is being performed
+            when an incoming request is being handled or when a URL is being generated.
+            </param>
+            <returns><c>true</c> if the URL parameter contains a valid value; otherwise, <c>false</c>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IRouteHandler">
+            <summary>
+            Defines a contract for a handler of a route. 
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.IRouteHandler.GetRequestHandler(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteData)">
+            <summary>
+            Gets a <see cref="T:Microsoft.AspNetCore.Http.RequestDelegate"/> to handle the request, based on the provided
+            <paramref name="routeData"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="routeData">The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> associated with the current routing match.</param>
+            <returns>
+            A <see cref="T:Microsoft.AspNetCore.Http.RequestDelegate"/>, or <c>null</c> if the handler cannot handle this request.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IRoutingFeature">
+            <summary>
+            A feature interface for routing functionality.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.IRoutingFeature.RouteData">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> associated with the current request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.LinkGenerator">
+            <summary>
+            Defines a contract to generate absolute and related URIs based on endpoint routing.
+            </summary>
+            <remarks>
+            <para>
+            Generating URIs in endpoint routing occurs in two phases. First, an address is bound to a list of
+            endpoints that match the address. Secondly, each endpoint's <c>RoutePattern</c> is evaluated, until 
+            a route pattern that matches the supplied values is found. The resulting output is combined with
+            the other URI parts supplied to the link generator and returned.
+            </para>
+            <para>
+            The methods provided by the <see cref="T:Microsoft.AspNetCore.Routing.LinkGenerator"/> type are general infrastructure, and support
+            the standard link generator functionality for any type of address. The most convenient way to use 
+            <see cref="T:Microsoft.AspNetCore.Routing.LinkGenerator"/> is through extension methods that perform operations for a specific
+            address type.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.LinkGenerator.GetPathByAddress``1(Microsoft.AspNetCore.Http.HttpContext,``0,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.Nullable{Microsoft.AspNetCore.Http.PathString},Microsoft.AspNetCore.Http.FragmentString,Microsoft.AspNetCore.Routing.LinkOptions)">
+            <summary>
+            Generates a URI with an absolute path based on the provided values and <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.
+            </summary>
+            <typeparam name="TAddress">The address type.</typeparam>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="address">The address value. Used to resolve endpoints.</param>
+            <param name="values">The route values. Used to expand parameters in the route template. Optional.</param>
+            <param name="ambientValues">The values associated with the current request. Optional.</param>
+            <param name="pathBase">
+            An optional URI path base. Prepended to the path in the resulting URI. If not provided, the value of <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.PathBase"/> will be used.
+            </param>
+            <param name="fragment">An optional URI fragment. Appended to the resulting URI.</param>
+            <param name="options">
+            An optional <see cref="T:Microsoft.AspNetCore.Routing.LinkOptions"/>. Settings on provided object override the settings with matching
+            names from <c>RouteOptions</c>.
+            </param>
+            <returns>A URI with an absolute path, or <c>null</c>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.LinkGenerator.GetPathByAddress``1(``0,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.FragmentString,Microsoft.AspNetCore.Routing.LinkOptions)">
+            <summary>
+            Generates a URI with an absolute path based on the provided values.
+            </summary>
+            <typeparam name="TAddress">The address type.</typeparam>
+            <param name="address">The address value. Used to resolve endpoints.</param>
+            <param name="values">The route values. Used to expand parameters in the route template. Optional.</param>
+            <param name="pathBase">An optional URI path base. Prepended to the path in the resulting URI.</param>
+            <param name="fragment">An optional URI fragment. Appended to the resulting URI.</param>
+            <param name="options">
+            An optional <see cref="T:Microsoft.AspNetCore.Routing.LinkOptions"/>. Settings on provided object override the settings with matching
+            names from <c>RouteOptions</c>.
+            </param>
+            <returns>A URI with an absolute path, or <c>null</c>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.LinkGenerator.GetUriByAddress``1(Microsoft.AspNetCore.Http.HttpContext,``0,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.String,System.Nullable{Microsoft.AspNetCore.Http.HostString},System.Nullable{Microsoft.AspNetCore.Http.PathString},Microsoft.AspNetCore.Http.FragmentString,Microsoft.AspNetCore.Routing.LinkOptions)">
+            <summary>
+            Generates an absolute URI based on the provided values and <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.
+            </summary>
+            <typeparam name="TAddress">The address type.</typeparam>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="address">The address value. Used to resolve endpoints.</param>
+            <param name="values">The route values. Used to expand parameters in the route template. Optional.</param>
+            <param name="ambientValues">The values associated with the current request. Optional.</param>
+            <param name="scheme">
+            The URI scheme, applied to the resulting URI. Optional. If not provided, the value of <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.Scheme"/> will be used.
+            </param>
+            <param name="host">
+            The URI host/authority, applied to the resulting URI. Optional. If not provided, the value <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.Host"/> will be used.
+            See the remarks section for details about the security implications of the <paramref name="host"/>.
+            </param>
+            <param name="pathBase">
+            An optional URI path base. Prepended to the path in the resulting URI. If not provided, the value of <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.PathBase"/> will be used.
+            </param>
+            <param name="fragment">An optional URI fragment. Appended to the resulting URI.</param>
+            <param name="options">
+            An optional <see cref="T:Microsoft.AspNetCore.Routing.LinkOptions"/>. Settings on provided object override the settings with matching
+            names from <c>RouteOptions</c>.
+            </param>
+            <returns>A URI with an absolute path, or <c>null</c>.</returns>
+            <remarks>
+            <para>
+            The value of <paramref name="host" /> should be a trusted value. Relying on the value of the current request
+            can allow untrusted input to influence the resulting URI unless the <c>Host</c> header has been validated.
+            See the deployment documentation for instructions on how to properly validate the <c>Host</c> header in
+            your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.LinkGenerator.GetUriByAddress``1(``0,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.String,Microsoft.AspNetCore.Http.HostString,Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.FragmentString,Microsoft.AspNetCore.Routing.LinkOptions)">
+            <summary>
+            Generates an absolute URI based on the provided values.
+            </summary>
+            <typeparam name="TAddress">The address type.</typeparam>
+            <param name="address">The address value. Used to resolve endpoints.</param>
+            <param name="values">The route values. Used to expand parameters in the route template. Optional.</param>
+            <param name="scheme">The URI scheme, applied to the resulting URI.</param>
+            <param name="host">
+            The URI host/authority, applied to the resulting URI.
+            See the remarks section for details about the security implications of the <paramref name="host"/>.
+            </param>
+            <param name="pathBase">An optional URI path base. Prepended to the path in the resulting URI.</param>
+            <param name="fragment">An optional URI fragment. Appended to the resulting URI.</param>
+            <param name="options">
+            An optional <see cref="T:Microsoft.AspNetCore.Routing.LinkOptions"/>. Settings on provided object override the settings with matching
+            names from <c>RouteOptions</c>.
+            </param>
+            <returns>An absolute URI, or <c>null</c>.</returns>
+            <remarks>
+            <para>
+            The value of <paramref name="host" /> should be a trusted value. Relying on the value of the current request
+            can allow untrusted input to influence the resulting URI unless the <c>Host</c> header has been validated.
+            See the deployment documentation for instructions on how to properly validate the <c>Host</c> header in
+            your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.LinkOptions.LowercaseUrls">
+            <summary>
+            Gets or sets a value indicating whether all generated paths URLs are lower-case.
+            Use <see cref="P:Microsoft.AspNetCore.Routing.LinkOptions.LowercaseQueryStrings" /> to configure the behavior for query strings.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.LinkOptions.LowercaseQueryStrings">
+            <summary>
+            Gets or sets a value indicating whether a generated query strings are lower-case.
+            This property will be unless <see cref="P:Microsoft.AspNetCore.Routing.LinkOptions.LowercaseUrls" /> is also <c>true</c>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.LinkOptions.AppendTrailingSlash">
+            <summary>
+            Gets or sets a value indicating whether a trailing slash should be appended to the generated URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.Abstractions.Resources.RouteValueDictionary_DuplicateKey">
+            <summary>
+            An element with the key '{0}' already exists in the {1}.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.Abstractions.Resources.FormatRouteValueDictionary_DuplicateKey(System.Object,System.Object)">
+            <summary>
+            An element with the key '{0}' already exists in the {1}.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.Abstractions.Resources.RouteValueDictionary_DuplicatePropertyName">
+            <summary>
+            The type '{0}' defines properties '{1}' and '{2}' which differ only by casing. This is not supported by {3} which uses case-insensitive comparisons.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.Abstractions.Resources.FormatRouteValueDictionary_DuplicatePropertyName(System.Object,System.Object,System.Object,System.Object)">
+            <summary>
+            The type '{0}' defines properties '{1}' and '{2}' which differ only by casing. This is not supported by {3} which uses case-insensitive comparisons.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteContext">
+            <summary>
+            A context object for <see cref="M:Microsoft.AspNetCore.Routing.IRouter.RouteAsync(Microsoft.AspNetCore.Routing.RouteContext)"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteContext.#ctor(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteContext"/> for the provided <paramref name="httpContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteContext.Handler">
+            <summary>
+            Gets or sets the handler for the request. An <see cref="T:Microsoft.AspNetCore.Routing.IRouter"/> should set <see cref="P:Microsoft.AspNetCore.Routing.RouteContext.Handler"/>
+            when it matches.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteContext.HttpContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteContext.RouteData">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> associated with the current context.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteData">
+            <summary>
+            Information about the current routing path.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.#ctor">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.#ctor(Microsoft.AspNetCore.Routing.RouteData)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance with values copied from <paramref name="other"/>.
+            </summary>
+            <param name="other">The other <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance to copy.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.#ctor(Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance with the specified values.
+            </summary>
+            <param name="values">The <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> values.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteData.DataTokens">
+            <summary>
+            Gets the data tokens produced by routes on the current routing path.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteData.Routers">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Routing.IRouter"/> instances on the current routing path.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteData.Values">
+            <summary>
+            Gets the values produced by routes on the current routing path.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.PushState(Microsoft.AspNetCore.Routing.IRouter,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+            <para>
+            Creates a snapshot of the current state of the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> before appending
+            <paramref name="router"/> to <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Routers"/>, merging <paramref name="values"/> into
+            <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Values"/>, and merging <paramref name="dataTokens"/> into <see cref="P:Microsoft.AspNetCore.Routing.RouteData.DataTokens"/>.
+            </para>
+            <para>
+            Call <see cref="M:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot.Restore"/> to restore the state of this <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/>
+            to the state at the time of calling
+            <see cref="M:Microsoft.AspNetCore.Routing.RouteData.PushState(Microsoft.AspNetCore.Routing.IRouter,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary)"/>.
+            </para>
+            </summary>
+            <param name="router">
+            An <see cref="T:Microsoft.AspNetCore.Routing.IRouter"/> to append to <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Routers"/>. If <c>null</c>, then <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Routers"/>
+            will not be changed.
+            </param>
+            <param name="values">
+            A <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> to merge into <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Values"/>. If <c>null</c>, then
+            <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Values"/> will not be changed.
+            </param>
+            <param name="dataTokens">
+            A <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> to merge into <see cref="P:Microsoft.AspNetCore.Routing.RouteData.DataTokens"/>. If <c>null</c>, then
+            <see cref="P:Microsoft.AspNetCore.Routing.RouteData.DataTokens"/> will not be changed.
+            </param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot"/> that captures the current state.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot">
+            <summary>
+            A snapshot of the state of a <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot.#ctor(Microsoft.AspNetCore.Routing.RouteData,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.Collections.Generic.IList{Microsoft.AspNetCore.Routing.IRouter},Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot"/> for <paramref name="routeData"/>.
+            </summary>
+            <param name="routeData">The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/>.</param>
+            <param name="dataTokens">The data tokens.</param>
+            <param name="routers">The routers.</param>
+            <param name="values">The route values.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot.Restore">
+            <summary>
+            Restores the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> to the captured state.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteDirection">
+            <summary>
+            Indicates whether ASP.NET routing is processing a URL from an HTTP request or generating a URL.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Routing.RouteDirection.IncomingRequest">
+            <summary>
+            A URL from a client is being processed.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Routing.RouteDirection.UrlGeneration">
+            <summary>
+            A URL is being created based on the route definition.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteValueDictionary">
+            <summary>
+            An <see cref="T:System.Collections.Generic.IDictionary`2"/> type for route values.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.FromArray(System.Collections.Generic.KeyValuePair{System.String,System.Object}[])">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> from the provided array.
+            The new instance will take ownership of the array, and may mutate it.
+            </summary>
+            <param name="items">The items array.</param>
+            <returns>A new <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.#ctor">
+            <summary>
+            Creates an empty <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.#ctor(System.Object)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> initialized with the specified <paramref name="values"/>.
+            </summary>
+            <param name="values">An object to initialize the dictionary. The value can be of type
+            <see cref="T:System.Collections.Generic.IDictionary`2"/> or <see cref="T:System.Collections.Generic.IReadOnlyDictionary`2"/>
+            or an object with public properties as key-value pairs.
+            </param>
+            <remarks>
+            If the value is a dictionary or other <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Collections.Generic.KeyValuePair`2"/>,
+            then its entries are copied. Otherwise the object is interpreted as a set of key-value pairs where the
+            property names are keys, and property values are the values, and copied into the dictionary.
+            Only public instance non-index properties are considered.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Item(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Comparer">
+            <summary>
+            Gets the comparer for this dictionary.
+            </summary>
+            <remarks>
+            This will always be a reference to <see cref="P:System.StringComparer.OrdinalIgnoreCase"/>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Count">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#IsReadOnly">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Keys">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Values">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#Add(System.Collections.Generic.KeyValuePair{System.String,System.Object})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.Add(System.String,System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.Clear">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#Contains(System.Collections.Generic.KeyValuePair{System.String,System.Object})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.ContainsKey(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#CopyTo(System.Collections.Generic.KeyValuePair{System.String,System.Object}[],System.Int32)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#IEnumerable#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#Remove(System.Collections.Generic.KeyValuePair{System.String,System.Object})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.Remove(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.Remove(System.String,System.Object@)">
+            <summary>
+            Attempts to remove and return the value that has the specified key from the <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/>.
+            </summary>
+            <param name="key">The key of the element to remove and return.</param>
+            <param name="value">When this method returns, contains the object removed from the <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/>, or <c>null</c> if key does not exist.</param>
+            <returns>
+            <c>true</c> if the object was removed successfully; otherwise, <c>false</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.TryAdd(System.String,System.Object)">
+            <summary>
+            Attempts to the add the provided <paramref name="key"/> and <paramref name="value"/> to the dictionary.
+            </summary>
+            <param name="key">The key.</param>
+            <param name="value">The value.</param>
+            <returns>Returns <c>true</c> if the value was added. Returns <c>false</c> if the key was already present.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.TryGetValue(System.String,System.Object@)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RoutingHttpContextExtensions">
+            <summary>
+            Extension methods for <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> related to routing.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RoutingHttpContextExtensions.GetRouteData(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> associated with the provided <paramref name="httpContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/>, or null.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RoutingHttpContextExtensions.GetRouteValue(Microsoft.AspNetCore.Http.HttpContext,System.String)">
+            <summary>
+            Gets a route value from <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Values"/> associated with the provided
+            <paramref name="httpContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="key">The key of the route value.</param>
+            <returns>The corresponding route value, or null.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.VirtualPathContext">
+            <summary>
+            A context for virtual path generation operations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.VirtualPathContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.VirtualPathContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="ambientValues">The set of route values associated with the current request.</param>
+            <param name="values">The set of new values provided for virtual path generation.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.VirtualPathContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.String)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.VirtualPathContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="ambientValues">The set of route values associated with the current request.</param>
+            <param name="values">The set of new values provided for virtual path generation.</param>
+            <param name="routeName">The name of the route to use for virtual path generation.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathContext.AmbientValues">
+            <summary>
+            Gets the set of route values associated with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathContext.HttpContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathContext.RouteName">
+            <summary>
+            Gets the name of the route to use for virtual path generation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathContext.Values">
+            <summary>
+            Gets or sets the set of new values provided for virtual path generation.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.VirtualPathData">
+            <summary>
+            Represents information about the route and virtual path that are the result of
+            generating a URL with the ASP.NET routing middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.VirtualPathData.#ctor(Microsoft.AspNetCore.Routing.IRouter,System.String)">
+            <summary>
+             Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Routing.VirtualPathData"/> class.
+            </summary>
+            <param name="router">The object that is used to generate the URL.</param>
+            <param name="virtualPath">The generated URL.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.VirtualPathData.#ctor(Microsoft.AspNetCore.Routing.IRouter,System.String,Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+             Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Routing.VirtualPathData"/> class.
+            </summary>
+            <param name="router">The object that is used to generate the URL.</param>
+            <param name="virtualPath">The generated URL.</param>
+            <param name="dataTokens">The collection of custom values.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathData.DataTokens">
+            <summary>
+            Gets the collection of custom values for the <see cref="P:Microsoft.AspNetCore.Routing.VirtualPathData.Router"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathData.Router">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.IRouter"/> that was used to generate the URL.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathData.VirtualPath">
+            <summary>
+            Gets or sets the URL that was generated from the <see cref="P:Microsoft.AspNetCore.Routing.VirtualPathData.Router"/>.
+            </summary>
+        </member>
+    </members>
+</doc>
diff --git a/VueWebApi/bin/Microsoft.Extensions.Primitives.xml b/VueWebApi/bin/Microsoft.Extensions.Primitives.xml
new file mode 100644
index 0000000..c65cc31
--- /dev/null
+++ b/VueWebApi/bin/Microsoft.Extensions.Primitives.xml
@@ -0,0 +1,484 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.Extensions.Primitives</name>
+    </assembly>
+    <members>
+        <member name="T:Microsoft.Extensions.Primitives.CancellationChangeToken">
+            <summary>
+            A <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> implementation using <see cref="T:System.Threading.CancellationToken"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.CancellationChangeToken.#ctor(System.Threading.CancellationToken)">
+            <summary>
+            Initializes a new instance of <see cref="T:Microsoft.Extensions.Primitives.CancellationChangeToken"/>.
+            </summary>
+            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/>.</param>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CancellationChangeToken.ActiveChangeCallbacks">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CancellationChangeToken.HasChanged">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.CancellationChangeToken.RegisterChangeCallback(System.Action{System.Object},System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.ChangeToken">
+            <summary>
+            Propagates notifications that a change has occurred.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.ChangeToken.OnChange(System.Func{Microsoft.Extensions.Primitives.IChangeToken},System.Action)">
+            <summary>
+            Registers the <paramref name="changeTokenConsumer"/> action to be called whenever the token produced changes.
+            </summary>
+            <param name="changeTokenProducer">Produces the change token.</param>
+            <param name="changeTokenConsumer">Action called when the token changes.</param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.ChangeToken.OnChange``1(System.Func{Microsoft.Extensions.Primitives.IChangeToken},System.Action{``0},``0)">
+            <summary>
+            Registers the <paramref name="changeTokenConsumer"/> action to be called whenever the token produced changes.
+            </summary>
+            <param name="changeTokenProducer">Produces the change token.</param>
+            <param name="changeTokenConsumer">Action called when the token changes.</param>
+            <param name="state">state for the consumer.</param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.CompositeChangeToken">
+            <summary>
+            An <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> which represents one or more <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> instances.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.CompositeChangeToken.#ctor(System.Collections.Generic.IReadOnlyList{Microsoft.Extensions.Primitives.IChangeToken})">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.Extensions.Primitives.CompositeChangeToken"/>.
+            </summary>
+            <param name="changeTokens">The list of <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> to compose.</param>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CompositeChangeToken.ChangeTokens">
+            <summary>
+            Returns the list of <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> which compose the current <see cref="T:Microsoft.Extensions.Primitives.CompositeChangeToken"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.CompositeChangeToken.RegisterChangeCallback(System.Action{System.Object},System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CompositeChangeToken.HasChanged">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CompositeChangeToken.ActiveChangeCallbacks">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.Extensions.Append(System.Text.StringBuilder,Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Add the given <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to the <see cref="T:System.Text.StringBuilder"/>.
+            </summary>
+            <param name="builder">The <see cref="T:System.Text.StringBuilder"/> to add to.</param>
+            <param name="segment">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to add.</param>
+            <returns>The original <see cref="T:System.Text.StringBuilder"/>.</returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.IChangeToken">
+            <summary>
+            Propagates notifications that a change has occurred.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.IChangeToken.HasChanged">
+            <summary>
+            Gets a value that indicates if a change has occurred.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.IChangeToken.ActiveChangeCallbacks">
+            <summary>
+            Indicates if this token will pro-actively raise callbacks. If <c>false</c>, the token consumer must
+            poll <see cref="P:Microsoft.Extensions.Primitives.IChangeToken.HasChanged" /> to detect changes.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.IChangeToken.RegisterChangeCallback(System.Action{System.Object},System.Object)">
+            <summary>
+            Registers for a callback that will be invoked when the entry has changed.
+            <see cref="P:Microsoft.Extensions.Primitives.IChangeToken.HasChanged"/> MUST be set before the callback is invoked.
+            </summary>
+            <param name="callback">The <see cref="T:System.Action`1"/> to invoke.</param>
+            <param name="state">State to be passed into the callback.</param>
+            <returns>An <see cref="T:System.IDisposable"/> that is used to unregister the callback.</returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.Resources">
+            <summary>
+               A strongly-typed resource class, for looking up localized strings, etc.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.Resources.ResourceManager">
+            <summary>
+               Returns the cached ResourceManager instance used by this class.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.Resources.Culture">
+            <summary>
+               Overrides the current thread's CurrentUICulture property for all
+               resource lookups using this strongly typed resource class.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.Resources.Argument_InvalidOffsetLength">
+            <summary>
+               Looks up a localized string similar to Offset and length are out of bounds for the string or length is greater than the number of characters from index to the end of the string..
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.Resources.Capacity_CannotChangeAfterWriteStarted">
+            <summary>
+               Looks up a localized string similar to Cannot change capacity after write started..
+            </summary>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.StringSegment">
+            <summary>
+            An optimized representation of a substring.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Extensions.Primitives.StringSegment.Empty">
+            <summary>
+            A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> for <see cref="F:System.String.Empty"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.#ctor(System.String)">
+            <summary>
+            Initializes an instance of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> struct.
+            </summary>
+            <param name="buffer">
+            The original <see cref="T:System.String"/>. The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> includes the whole <see cref="T:System.String"/>.
+            </param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.#ctor(System.String,System.Int32,System.Int32)">
+            <summary>
+            Initializes an instance of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> struct.
+            </summary>
+            <param name="buffer">The original <see cref="T:System.String"/> used as buffer.</param>
+            <param name="offset">The offset of the segment within the <paramref name="buffer"/>.</param>
+            <param name="length">The length of the segment.</param>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Buffer">
+            <summary>
+            Gets the <see cref="T:System.String"/> buffer for this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Offset">
+            <summary>
+            Gets the offset within the buffer for this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Length">
+            <summary>
+            Gets the length of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Value">
+            <summary>
+            Gets the value of this segment as a <see cref="T:System.String"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.HasValue">
+            <summary>
+            Gets whether or not this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> contains a valid value.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Item(System.Int32)">
+            <summary>
+            Gets the <see cref="T:System.Char"/> at a specified position in the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="index">The offset into the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></param>
+            <returns>The <see cref="T:System.Char"/> at a specified position.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.AsSpan">
+            <summary>
+            Gets a <see cref="T:System.ReadOnlySpan`1"/> from the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <returns>The <see cref="T:System.ReadOnlySpan`1"/> from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.AsMemory">
+            <summary>
+            Gets a <see cref="T:System.ReadOnlyMemory`1"/> from the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <returns>The <see cref="T:System.ReadOnlyMemory`1"/> from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Compare(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment,System.StringComparison)">
+            <summary>
+            Compares substrings of two specified <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> objects using the specified rules,
+            and returns an integer that indicates their relative position in the sort order.
+            </summary>
+            <param name="a">The first StringSegment to compare.</param>
+            <param name="b">The second StringSegment to compare.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules for the comparison.</param>
+            <returns>
+            A 32-bit signed integer indicating the lexical relationship between the two comparands.
+            The value is negative if <paramref name="a"/> is less than <paramref name="b"/>, 0 if the two comparands are equal,
+            and positive if <paramref name="a"/> is greater than <paramref name="b"/>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Indicates whether the current object is equal to another object of the same type.
+            </summary>
+            <param name="other">An object to compare with this object.</param>
+            <returns><code>true</code> if the current object is equal to the other parameter; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(Microsoft.Extensions.Primitives.StringSegment,System.StringComparison)">
+            <summary>
+            Indicates whether the current object is equal to another object of the same type.
+            </summary>
+            <param name="other">An object to compare with this object.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules to use in the comparison.</param>
+            <returns><code>true</code> if the current object is equal to the other parameter; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment,System.StringComparison)">
+            <summary>
+            Determines whether two specified StringSegment objects have the same value. A parameter specifies the culture, case, and
+            sort rules used in the comparison.
+            </summary>
+            <param name="a">The first StringSegment to compare.</param>
+            <param name="b">The second StringSegment to compare.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules for the comparison.</param>
+            <returns><code>true</code> if the objects are equal; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(System.String)">
+            <summary>
+            Checks if the specified <see cref="T:System.String"/> is equal to the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="text">The <see cref="T:System.String"/> to compare with the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <returns><code>true</code> if the specified <see cref="T:System.String"/> is equal to the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(System.String,System.StringComparison)">
+            <summary>
+            Checks if the specified <see cref="T:System.String"/> is equal to the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="text">The <see cref="T:System.String"/> to compare with the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules to use in the comparison.</param>
+            <returns><code>true</code> if the specified <see cref="T:System.String"/> is equal to the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.GetHashCode">
+            <inheritdoc />
+            <remarks>
+            This GetHashCode is expensive since it allocates on every call.
+            However this is required to ensure we retain any behavior (such as hash code randomization) that
+            string.GetHashCode has.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Equality(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Checks if two specified <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> have the same value.
+            </summary>
+            <param name="left">The first <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to compare, or <code>null</code>.</param>
+            <param name="right">The second <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to compare, or <code>null</code>.</param>
+            <returns><code>true</code> if the value of <paramref name="left"/> is the same as the value of <paramref name="right"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Inequality(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Checks if two specified <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> have different values.
+            </summary>
+            <param name="left">The first <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to compare, or <code>null</code>.</param>
+            <param name="right">The second <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to compare, or <code>null</code>.</param>
+            <returns><code>true</code> if the value of <paramref name="left"/> is different from the value of <paramref name="right"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Implicit(System.String)~Microsoft.Extensions.Primitives.StringSegment">
+            <summary>
+            Creates a new <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> from the given <see cref="T:System.String"/>.
+            </summary>
+            <param name="value">The <see cref="T:System.String"/> to convert to a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Implicit(Microsoft.Extensions.Primitives.StringSegment)~System.ReadOnlySpan{System.Char}">
+            <summary>
+            Creates a see <see cref="T:System.ReadOnlySpan`1"/> from the given <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="segment">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to convert to a <see cref="T:System.ReadOnlySpan`1"/>.</param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Implicit(Microsoft.Extensions.Primitives.StringSegment)~System.ReadOnlyMemory{System.Char}">
+            <summary>
+            Creates a see <see cref="T:System.ReadOnlyMemory`1"/> from the given <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="segment">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to convert to a <see cref="T:System.ReadOnlyMemory`1"/>.</param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.StartsWith(System.String,System.StringComparison)">
+            <summary>
+            Checks if the beginning of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> matches the specified <see cref="T:System.String"/> when compared using the specified <paramref name="comparisonType"/>.
+            </summary>
+            <param name="text">The <see cref="T:System.String"/>to compare.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules to use in the comparison.</param>
+            <returns><code>true</code> if <paramref name="text"/> matches the beginning of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.EndsWith(System.String,System.StringComparison)">
+            <summary>
+            Checks if the end of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> matches the specified <see cref="T:System.String"/> when compared using the specified <paramref name="comparisonType"/>.
+            </summary>
+            <param name="text">The <see cref="T:System.String"/>to compare.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules to use in the comparison.</param>
+            <returns><code>true</code> if <paramref name="text"/> matches the end of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Substring(System.Int32)">
+            <summary>
+            Retrieves a substring from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The substring starts at the position specified by <paramref name="offset"/> and has the remaining length.
+            </summary>
+            <param name="offset">The zero-based starting character position of a substring in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <returns>A <see cref="T:System.String"/> that is equivalent to the substring of remaining length that begins at
+            <paramref name="offset"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Substring(System.Int32,System.Int32)">
+            <summary>
+            Retrieves a substring from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The substring starts at the position specified by <paramref name="offset"/> and has the specified <paramref name="length"/>.
+            </summary>
+            <param name="offset">The zero-based starting character position of a substring in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <param name="length">The number of characters in the substring.</param>
+            <returns>A <see cref="T:System.String"/> that is equivalent to the substring of length <paramref name="length"/> that begins at
+            <paramref name="offset"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Subsegment(System.Int32)">
+            <summary>
+            Retrieves a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> that represents a substring from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> starts at the position specified by <paramref name="offset"/>.
+            </summary>
+            <param name="offset">The zero-based starting character position of a substring in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <returns>A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> that begins at <paramref name="offset"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>
+            whose length is the remainder.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Subsegment(System.Int32,System.Int32)">
+            <summary>
+            Retrieves a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> that represents a substring from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> starts at the position specified by <paramref name="offset"/> and has the specified <paramref name="length"/>.
+            </summary>
+            <param name="offset">The zero-based starting character position of a substring in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <param name="length">The number of characters in the substring.</param>
+            <returns>A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> that is equivalent to the substring of length <paramref name="length"/> that begins at <paramref name="offset"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOf(System.Char,System.Int32,System.Int32)">
+            <summary>
+            Gets the zero-based index of the first occurrence of the character <paramref name="c"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The search starts at <paramref name="start"/> and examines a specified number of <paramref name="count"/> character positions.
+            </summary>
+            <param name="c">The Unicode character to seek.</param>
+            <param name="start">The zero-based index position at which the search starts. </param>
+            <param name="count">The number of characters to examine.</param>
+            <returns>The zero-based index position of <paramref name="c"/> from the beginning of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> if that character is found, or -1 if it is not.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOf(System.Char,System.Int32)">
+            <summary>
+            Gets the zero-based index of the first occurrence of the character <paramref name="c"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The search starts at <paramref name="start"/>.
+            </summary>
+            <param name="c">The Unicode character to seek.</param>
+            <param name="start">The zero-based index position at which the search starts. </param>
+            <returns>The zero-based index position of <paramref name="c"/> from the beginning of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> if that character is found, or -1 if it is not.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOf(System.Char)">
+            <summary>
+            Gets the zero-based index of the first occurrence of the character <paramref name="c"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="c">The Unicode character to seek.</param>
+            <returns>The zero-based index position of <paramref name="c"/> from the beginning of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> if that character is found, or -1 if it is not.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOfAny(System.Char[],System.Int32,System.Int32)">
+            <summary>
+            Reports the zero-based index of the first occurrence in this instance of any character in a specified array
+            of Unicode characters. The search starts at a specified character position and examines a specified number
+            of character positions.
+            </summary>
+            <param name="anyOf">A Unicode character array containing one or more characters to seek.</param>
+            <param name="startIndex">The search starting position.</param>
+            <param name="count">The number of character positions to examine.</param>
+            <returns>The zero-based index position of the first occurrence in this instance where any character in anyOf
+            was found; -1 if no character in anyOf was found.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOfAny(System.Char[],System.Int32)">
+            <summary>
+            Reports the zero-based index of the first occurrence in this instance of any character in a specified array
+            of Unicode characters. The search starts at a specified character position.
+            </summary>
+            <param name="anyOf">A Unicode character array containing one or more characters to seek.</param>
+            <param name="startIndex">The search starting position.</param>
+            <returns>The zero-based index position of the first occurrence in this instance where any character in anyOf
+            was found; -1 if no character in anyOf was found.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOfAny(System.Char[])">
+            <summary>
+            Reports the zero-based index of the first occurrence in this instance of any character in a specified array
+            of Unicode characters.
+            </summary>
+            <param name="anyOf">A Unicode character array containing one or more characters to seek.</param>
+            <returns>The zero-based index position of the first occurrence in this instance where any character in anyOf
+            was found; -1 if no character in anyOf was found.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.LastIndexOf(System.Char)">
+            <summary>
+            Reports the zero-based index position of the last occurrence of a specified Unicode character within this instance.
+            </summary>
+            <param name="value">The Unicode character to seek.</param>
+            <returns>The zero-based index position of value if that character is found, or -1 if it is not.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Trim">
+            <summary>
+            Removes all leading and trailing whitespaces.
+            </summary>
+            <returns>The trimmed <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.TrimStart">
+            <summary>
+            Removes all leading whitespaces.
+            </summary>
+            <returns>The trimmed <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.TrimEnd">
+            <summary>
+            Removes all trailing whitespaces.
+            </summary>
+            <returns>The trimmed <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Split(System.Char[])">
+            <summary>
+            Splits a string into StringSegments that are based on the characters in an array.
+            </summary>
+            <param name="chars">A character array that delimits the substrings in this string, an empty array that
+            contains no delimiters, or null.</param>
+            <returns>An <see cref="T:Microsoft.Extensions.Primitives.StringTokenizer"/> whose elements contain the StringSegmeents from this instance
+            that are delimited by one or more characters in separator.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IsNullOrEmpty(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Indicates whether the specified StringSegment is null or an Empty string.
+            </summary>
+            <param name="value">The StringSegment to test.</param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.ToString">
+            <summary>
+            Returns the <see cref="T:System.String"/> represented by this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> or <code>String.Empty</code> if the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> does not contain a value.
+            </summary>
+            <returns>The <see cref="T:System.String"/> represented by this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> or <code>String.Empty</code> if the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> does not contain a value.</returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.StringTokenizer">
+            <summary>
+            Tokenizes a <c>string</c> into <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>s.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringTokenizer.#ctor(System.String,System.Char[])">
+            <summary>
+            Initializes a new instance of <see cref="T:Microsoft.Extensions.Primitives.StringTokenizer"/>.
+            </summary>
+            <param name="value">The <c>string</c> to tokenize.</param>
+            <param name="separators">The characters to tokenize by.</param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringTokenizer.#ctor(Microsoft.Extensions.Primitives.StringSegment,System.Char[])">
+            <summary>
+            Initializes a new instance of <see cref="T:Microsoft.Extensions.Primitives.StringTokenizer"/>.
+            </summary>
+            <param name="value">The <c>StringSegment</c> to tokenize.</param>
+            <param name="separators">The characters to tokenize by.</param>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.StringValues">
+            <summary>
+            Represents zero/null, one, or many strings in an efficient way.
+            </summary>
+        </member>
+    </members>
+</doc>
diff --git a/VueWebApi/bin/Microsoft.Net.Http.Headers.xml b/VueWebApi/bin/Microsoft.Net.Http.Headers.xml
new file mode 100644
index 0000000..1ecc2b8
--- /dev/null
+++ b/VueWebApi/bin/Microsoft.Net.Http.Headers.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.Net.Http.Headers</name>
+    </assembly>
+    <members>
+        <member name="M:Microsoft.Net.Http.Headers.ContentDispositionHeaderValue.SetHttpFileName(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Sets both FileName and FileNameStar using encodings appropriate for HTTP headers.
+            </summary>
+            <param name="fileName"></param>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.ContentDispositionHeaderValue.SetMimeFileName(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Sets the FileName parameter using encodings appropriate for MIME headers.
+            The FileNameStar parameter is removed.
+            </summary>
+            <param name="fileName"></param>
+        </member>
+        <member name="T:Microsoft.Net.Http.Headers.ContentDispositionHeaderValueIdentityExtensions">
+            <summary>
+            Various extension methods for <see cref="T:Microsoft.Net.Http.Headers.ContentDispositionHeaderValue"/> for identifying the type of the disposition header
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.ContentDispositionHeaderValueIdentityExtensions.IsFileDisposition(Microsoft.Net.Http.Headers.ContentDispositionHeaderValue)">
+            <summary>
+            Checks if the content disposition header is a file disposition
+            </summary>
+            <param name="header">The header to check</param>
+            <returns>True if the header is file disposition, false otherwise</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.ContentDispositionHeaderValueIdentityExtensions.IsFormDisposition(Microsoft.Net.Http.Headers.ContentDispositionHeaderValue)">
+            <summary>
+            Checks if the content disposition header is a form disposition
+            </summary>
+            <param name="header">The header to check</param>
+            <returns>True if the header is form disposition, false otherwise</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.EntityTagHeaderValue.Equals(System.Object)">
+            <summary>
+            Check against another <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/> for equality.
+            This equality check should not be used to determine if two values match under the RFC specifications (https://tools.ietf.org/html/rfc7232#section-2.3.2).
+            </summary>
+            <param name="obj">The other value to check against for equality.</param>
+            <returns>
+            <c>true</c> if the strength and tag of the two values match,
+            <c>false</c> if the other value is null, is not an <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/>, or if there is a mismatch of strength or tag between the two values.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.EntityTagHeaderValue.Compare(Microsoft.Net.Http.Headers.EntityTagHeaderValue,System.Boolean)">
+            <summary>
+            Compares against another <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/> to see if they match under the RFC specifications (https://tools.ietf.org/html/rfc7232#section-2.3.2).
+            </summary>
+            <param name="other">The other <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/> to compare against.</param>
+            <param name="useStrongComparison"><c>true</c> to use a strong comparison, <c>false</c> to use a weak comparison</param>
+            <returns>
+            <c>true</c> if the <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/> match for the given comparison type,
+            <c>false</c> if the other value is null or the comparison failed.
+            </returns>
+        </member>
+        <member name="F:Microsoft.Net.Http.Headers.HeaderQuality.Match">
+            <summary>
+            Quality factor to indicate a perfect match.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Net.Http.Headers.HeaderQuality.NoMatch">
+            <summary>
+            Quality factor to indicate no match.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.TryParseSeconds(Microsoft.Extensions.Primitives.StringValues,System.String,System.Nullable{System.TimeSpan}@)">
+            <summary>
+            Try to find a target header value among the set of given header values and parse it as a
+            <see cref="T:System.TimeSpan"/>.
+            </summary>
+            <param name="headerValues">
+            The <see cref="T:Microsoft.Extensions.Primitives.StringValues"/> containing the set of header values to search.
+            </param>
+            <param name="targetValue">
+            The target header value to look for.
+            </param>
+            <param name="value">
+            When this method returns, contains the parsed <see cref="T:System.TimeSpan"/>, if the parsing succeeded, or
+            null if the parsing failed. The conversion fails if the <paramref name="targetValue"/> was not
+            found or could not be parsed as a <see cref="T:System.TimeSpan"/>. This parameter is passed uninitialized;
+            any value originally supplied in result will be overwritten.
+            </param>
+            <returns>
+            <code>true</code> if <paramref name="targetValue"/> is found and successfully parsed; otherwise,
+            <code>false</code>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.ContainsCacheDirective(Microsoft.Extensions.Primitives.StringValues,System.String)">
+            <summary>
+            Check if a target directive exists among the set of given cache control directives.
+            </summary>
+            <param name="cacheControlDirectives">
+            The <see cref="T:Microsoft.Extensions.Primitives.StringValues"/> containing the set of cache control directives.
+            </param>
+            <param name="targetDirectives">
+            The target cache control directives to look for.
+            </param>
+            <returns>
+            <code>true</code> if <paramref name="targetDirectives"/> is contained in <paramref name="cacheControlDirectives"/>;
+            otherwise, <code>false</code>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.TryParseNonNegativeInt32(Microsoft.Extensions.Primitives.StringSegment,System.Int32@)">
+            <summary>
+            Try to convert a string representation of a positive number to its 64-bit signed integer equivalent.
+            A return value indicates whether the conversion succeeded or failed.
+            </summary>
+            <param name="value">
+            A string containing a number to convert.
+            </param>
+            <param name="result">
+            When this method returns, contains the 64-bit signed integer value equivalent of the number contained
+            in the string, if the conversion succeeded, or zero if the conversion failed. The conversion fails if
+            the string is null or String.Empty, is not of the correct format, is negative, or represents a number
+            greater than Int64.MaxValue. This parameter is passed uninitialized; any value originally supplied in
+            result will be overwritten.
+            </param>
+            <returns><code>true</code> if parsing succeeded; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.TryParseNonNegativeInt64(Microsoft.Extensions.Primitives.StringSegment,System.Int64@)">
+            <summary>
+            Try to convert a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> representation of a positive number to its 64-bit signed
+            integer equivalent. A return value indicates whether the conversion succeeded or failed.
+            </summary>
+            <param name="value">
+            A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> containing a number to convert.
+            </param>
+            <param name="result">
+            When this method returns, contains the 64-bit signed integer value equivalent of the number contained
+            in the string, if the conversion succeeded, or zero if the conversion failed. The conversion fails if
+            the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> is null or String.Empty, is not of the correct format, is negative, or
+            represents a number greater than Int64.MaxValue. This parameter is passed uninitialized; any value
+            originally supplied in result will be overwritten.
+            </param>
+            <returns><code>true</code> if parsing succeeded; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.FormatNonNegativeInt64(System.Int64)">
+            <summary>
+            Converts the non-negative 64-bit numeric value to its equivalent string representation.
+            </summary>
+            <param name="value">
+            The number to convert.
+            </param>
+            <returns>
+            The string representation of the value of this instance, consisting of a sequence of digits ranging from 0 to 9 with no leading zeroes.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.UnescapeAsQuotedString(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Given a quoted-string as defined by <see href="https://tools.ietf.org/html/rfc7230#section-3.2.6">the RFC specification</see>,
+            removes quotes and unescapes backslashes and quotes. This assumes that the input is a valid quoted-string.
+            </summary>
+            <param name="input">The quoted-string to be unescaped.</param>
+            <returns>An unescaped version of the quoted-string.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.EscapeAsQuotedString(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Escapes a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> as a quoted-string, which is defined by
+            <see href="https://tools.ietf.org/html/rfc7230#section-3.2.6">the RFC specification</see>.
+            </summary>
+            <remarks>
+            This will add a backslash before each backslash and quote and add quotes
+            around the input. Assumes that the input does not have quotes around it,
+            as this method will add them. Throws if the input contains any invalid escape characters,
+            as defined by rfc7230.
+            </remarks>
+            <param name="input">The input to be escaped.</param>
+            <returns>An escaped version of the quoted-string.</returns>
+        </member>
+        <member name="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue">
+            <summary>
+            Representation of the media type header. See <see href="https://tools.ietf.org/html/rfc6838"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.#ctor(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Initializes a <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> instance.
+            </summary>
+            <param name="mediaType">A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> representation of a media type.
+            The text provided must be a single media type without parameters. </param>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.#ctor(Microsoft.Extensions.Primitives.StringSegment,System.Double)">
+            <summary>
+            Initializes a <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> instance.
+            </summary>
+            <param name="mediaType">A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> representation of a media type.
+            The text provided must be a single media type without parameters. </param>
+            <param name="quality">The <see cref="T:System.Double"/> with the quality of the media type.</param>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Charset">
+            <summary>
+            Gets or sets the value of the charset parameter. Returns <see cref="F:Microsoft.Extensions.Primitives.StringSegment.Empty"/>
+            if there is no charset.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Encoding">
+            <summary>
+            Gets or sets the value of the Encoding parameter. Setting the Encoding will set
+            the <see cref="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Charset"/> to <see cref="P:System.Text.Encoding.WebName"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Boundary">
+            <summary>
+            Gets or sets the value of the boundary parameter. Returns <see cref="F:Microsoft.Extensions.Primitives.StringSegment.Empty"/>
+            if there is no boundary.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Parameters">
+            <summary>
+            Gets or sets the media type's parameters. Returns an empty <see cref="T:System.Collections.Generic.IList`1"/>
+            if there are no parameters.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Quality">
+            <summary>
+            Gets or sets the value of the quality parameter. Returns null
+            if there is no quality.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.MediaType">
+            <summary>
+            Gets or sets the value of the media type. Returns <see cref="F:Microsoft.Extensions.Primitives.StringSegment.Empty"/>
+            if there is no media type.
+            </summary>
+            <example>
+            For the media type <c>"application/json"</c>, the property gives the value
+            <c>"application/json"</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Type">
+            <summary>
+            Gets the type of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.
+            </summary>
+            <example>
+            For the media type <c>"application/json"</c>, the property gives the value <c>"application"</c>.
+            </example>
+            <remarks>See <see href="https://tools.ietf.org/html/rfc6838#section-4.2"/> for more details on the type.</remarks>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.SubType">
+            <summary>
+            Gets the subtype of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.
+            </summary>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, the property gives the value
+            <c>"vnd.example+json"</c>.
+            </example>
+            <remarks>See <see href="https://tools.ietf.org/html/rfc6838#section-4.2"/> for more details on the subtype.</remarks>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.SubTypeWithoutSuffix">
+            <summary>
+            Gets subtype of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>, excluding any structured syntax suffix. Returns <see cref="F:Microsoft.Extensions.Primitives.StringSegment.Empty"/>
+            if there is no subtype without suffix.
+            </summary>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, the property gives the value
+            <c>"vnd.example"</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Suffix">
+            <summary>
+            Gets the structured syntax suffix of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> if it has one.
+            See <see href="https://tools.ietf.org/html/rfc6838#section-4.8">The RFC documentation on structured syntaxes.</see>
+            </summary>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, the property gives the value
+            <c>"json"</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Facets">
+            <summary>
+            Get a <see cref="T:System.Collections.Generic.IList`1"/> of facets of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>. Facets are a
+            period separated list of StringSegments in the <see cref="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.SubTypeWithoutSuffix"/>.
+            See <see href="https://tools.ietf.org/html/rfc6838#section-3">The RFC documentation on facets.</see>
+            </summary>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, the property gives the value:
+            <c>{"vnd", "example"}</c>
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.MatchesAllTypes">
+            <summary>
+            Gets whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> matches all types.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.MatchesAllSubTypes">
+            <summary>
+            Gets whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> matches all subtypes.
+            </summary>
+            <example>
+            For the media type <c>"application/*"</c>, this property is <c>true</c>.
+            </example>
+            <example>
+            For the media type <c>"application/json"</c>, this property is <c>false</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.MatchesAllSubTypesWithoutSuffix">
+            <summary>
+            Gets whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> matches all subtypes, ignoring any structured syntax suffix.
+            </summary>
+            <example>
+            For the media type <c>"application/*+json"</c>, this property is <c>true</c>.
+            </example>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, this property is <c>false</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.IsReadOnly">
+            <summary>
+            Gets whether the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> is readonly.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.IsSubsetOf(Microsoft.Net.Http.Headers.MediaTypeHeaderValue)">
+            <summary>
+            Gets a value indicating whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> is a subset of
+            <paramref name="otherMediaType"/>. A "subset" is defined as the same or a more specific media type
+            according to the precedence described in https://www.ietf.org/rfc/rfc2068.txt section 14.1, Accept.
+            </summary>
+            <param name="otherMediaType">The <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> to compare.</param>
+            <returns>
+            A value indicating whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> is a subset of
+            <paramref name="otherMediaType"/>.
+            </returns>
+            <remarks>
+            For example "multipart/mixed; boundary=1234" is a subset of "multipart/mixed; boundary=1234",
+            "multipart/mixed", "multipart/*", and "*/*" but not "multipart/mixed; boundary=2345" or
+            "multipart/message; boundary=1234".
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Copy">
+            <summary>
+            Performs a deep copy of this object and all of it's NameValueHeaderValue sub components,
+            while avoiding the cost of re-validating the components.
+            </summary>
+            <returns>A deep copy.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.CopyAsReadOnly">
+            <summary>
+            Performs a deep copy of this object and all of it's NameValueHeaderValue sub components,
+            while avoiding the cost of re-validating the components. This copy is read-only.
+            </summary>
+            <returns>A deep, read-only, copy.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Parse(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Takes a media type and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue" /> and its associated parameters.
+            </summary>
+            <param name="input">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> with the media type.</param>
+            <returns>The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.TryParse(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Net.Http.Headers.MediaTypeHeaderValue@)">
+            <summary>
+            Takes a media type, which can include parameters, and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue" /> and its associated parameters.
+            </summary>
+            <param name="input">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> with the media type. The media type constructed here must not have an y</param>
+            <param name="parsedValue">The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/></param>
+            <returns>True if the value was successfully parsed.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.ParseList(System.Collections.Generic.IList{System.String})">
+            <summary>
+            Takes an <see cref="T:System.Collections.Generic.IList`1"/> of <see cref="T:System.String"/> and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"></see> and its associated parameters.
+            </summary>
+            <param name="inputs">A list of media types</param>
+            <returns>The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.ParseStrictList(System.Collections.Generic.IList{System.String})">
+            <summary>
+            Takes an <see cref="T:System.Collections.Generic.IList`1"/> of <see cref="T:System.String"/> and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"></see> and its associated parameters.
+            Throws if there is invalid data in a string.
+            </summary>
+            <param name="inputs">A list of media types</param>
+            <returns>The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.TryParseList(System.Collections.Generic.IList{System.String},System.Collections.Generic.IList{Microsoft.Net.Http.Headers.MediaTypeHeaderValue}@)">
+            <summary>
+            Takes an <see cref="T:System.Collections.Generic.IList`1"/> of <see cref="T:System.String"/> and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"></see> and its associated parameters.
+            </summary>
+            <param name="inputs">A list of media types</param>
+            <param name="parsedValues">The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</param>
+            <returns>True if the value was successfully parsed.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.TryParseStrictList(System.Collections.Generic.IList{System.String},System.Collections.Generic.IList{Microsoft.Net.Http.Headers.MediaTypeHeaderValue}@)">
+            <summary>
+            Takes an <see cref="T:System.Collections.Generic.IList`1"/> of <see cref="T:System.String"/> and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"></see> and its associated parameters.
+            </summary>
+            <param name="inputs">A list of media types</param>
+            <param name="parsedValues">The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</param>
+            <returns>True if the value was successfully parsed.</returns>
+        </member>
+        <member name="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValueComparer">
+            <summary>
+            Implementation of <see cref="T:System.Collections.Generic.IComparer`1"/> that can compare accept media type header fields
+            based on their quality values (a.k.a q-values).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValueComparer.Compare(Microsoft.Net.Http.Headers.MediaTypeHeaderValue,Microsoft.Net.Http.Headers.MediaTypeHeaderValue)">
+            <inheritdoc />
+            <remarks>
+            Performs comparisons based on the arguments' quality values
+            (aka their "q-value"). Values with identical q-values are considered equal (i.e. the result is 0)
+            with the exception that suffixed subtype wildcards are considered less than subtype wildcards, subtype wildcards
+            are considered less than specific media types and full wildcards are considered less than
+            subtype wildcards. This allows callers to sort a sequence of <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> following
+            their q-values in the order of specific media types, subtype wildcards, and last any full wildcards.
+            </remarks>
+            <example>
+            If we had a list of media types (comma separated): { text/*;q=0.8, text/*+json;q=0.8, */*;q=1, */*;q=0.8, text/plain;q=0.8 }
+            Sorting them using Compare would return: { */*;q=0.8, text/*;q=0.8, text/*+json;q=0.8, text/plain;q=0.8, */*;q=1 }
+            </example>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.NameValueHeaderValue.Copy">
+            <summary>
+            Provides a copy of this object without the cost of re-validating the values.
+            </summary>
+            <returns>A copy.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.SetCookieHeaderValue.AppendToStringBuilder(System.Text.StringBuilder)">
+            <summary>
+            Append string representation of this <see cref="T:Microsoft.Net.Http.Headers.SetCookieHeaderValue"/> to given
+            <paramref name="builder"/>.
+            </summary>
+            <param name="builder">
+            The <see cref="T:System.Text.StringBuilder"/> to receive the string representation of this
+            <see cref="T:Microsoft.Net.Http.Headers.SetCookieHeaderValue"/>.
+            </param>
+        </member>
+        <member name="T:Microsoft.Net.Http.Headers.StringWithQualityHeaderValueComparer">
+            <summary>
+            Implementation of <see cref="T:System.Collections.Generic.IComparer`1"/> that can compare content negotiation header fields
+            based on their quality values (a.k.a q-values). This applies to values used in accept-charset,
+            accept-encoding, accept-language and related header fields with similar syntax rules. See
+            <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValueComparer"/> for a comparer for media type
+            q-values.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.StringWithQualityHeaderValueComparer.Compare(Microsoft.Net.Http.Headers.StringWithQualityHeaderValue,Microsoft.Net.Http.Headers.StringWithQualityHeaderValue)">
+            <summary>
+            Compares two <see cref="T:Microsoft.Net.Http.Headers.StringWithQualityHeaderValue"/> based on their quality value
+            (a.k.a their "q-value").
+            Values with identical q-values are considered equal (i.e the result is 0) with the exception of wild-card
+            values (i.e. a value of "*") which are considered less than non-wild-card values. This allows to sort
+            a sequence of <see cref="T:Microsoft.Net.Http.Headers.StringWithQualityHeaderValue"/> following their q-values ending up with any
+            wild-cards at the end.
+            </summary>
+            <param name="stringWithQuality1">The first value to compare.</param>
+            <param name="stringWithQuality2">The second value to compare</param>
+            <returns>The result of the comparison.</returns>
+        </member>
+    </members>
+</doc>
diff --git a/VueWebApi/bin/System.CodeDom.xml b/VueWebApi/bin/System.CodeDom.xml
new file mode 100644
index 0000000..d8924bc
--- /dev/null
+++ b/VueWebApi/bin/System.CodeDom.xml
@@ -0,0 +1,129 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>System.CodeDom</name>
+    </assembly>
+    <members>
+        <member name="P:System.SR.CodeDomProvider_NotDefined">
+            <summary>There is no CodeDom provider defined for the language.</summary>
+        </member>
+        <member name="P:System.SR.NotSupported_CodeDomAPI">
+            <summary>This CodeDomProvider does not support this method.</summary>
+        </member>
+        <member name="P:System.SR.CodeGenOutputWriter">
+            <summary>The output writer for code generation and the writer supplied don't match and cannot be used. This is generally caused by a bad implementation of a CodeGenerator derived class.</summary>
+        </member>
+        <member name="P:System.SR.CodeGenReentrance">
+            <summary>This code generation API cannot be called while the generator is being used to generate something else.</summary>
+        </member>
+        <member name="P:System.SR.InvalidElementType">
+            <summary>Element type {0} is not supported.</summary>
+        </member>
+        <member name="P:System.SR.Argument_NullComment">
+            <summary>The 'Comment' property of the CodeCommentStatement '{0}' cannot be null.</summary>
+        </member>
+        <member name="P:System.SR.InvalidPrimitiveType">
+            <summary>Invalid Primitive Type: {0}. Consider using CodeObjectCreateExpression.</summary>
+        </member>
+        <member name="P:System.SR.InvalidIdentifier">
+            <summary>Identifier '{0}' is not valid.</summary>
+        </member>
+        <member name="P:System.SR.ArityDoesntMatch">
+            <summary>The total arity specified in '{0}' does not match the number of TypeArguments supplied.  There were '{1}' TypeArguments supplied.</summary>
+        </member>
+        <member name="P:System.SR.InvalidNullEmptyArgument">
+            <summary>Argument {0} cannot be null or zero-length.</summary>
+        </member>
+        <member name="P:System.SR.DuplicateFileName">
+            <summary>The file name '{0}' was already in the collection.</summary>
+        </member>
+        <member name="P:System.SR.InvalidTypeName">
+            <summary>The type name:"{0}" on the property:"{1}" of type:"{2}" is not a valid language-independent type name.</summary>
+        </member>
+        <member name="P:System.SR.InvalidRegion">
+            <summary>The region directive '{0}' contains invalid characters.  RegionText cannot contain any new line characters.</summary>
+        </member>
+        <member name="P:System.SR.InvalidPathCharsInChecksum">
+            <summary>The CodeChecksumPragma file name '{0}' contains invalid path characters.</summary>
+        </member>
+        <member name="P:System.SR.ExecTimeout">
+            <summary>Timed out waiting for a program to execute. The command being executed was {0}.</summary>
+        </member>
+        <member name="P:System.SR.Provider_does_not_support_options">
+            <summary>This CodeDomProvider type does not have a constructor that takes providerOptions - "{0}".</summary>
+        </member>
+        <member name="P:System.SR.InvalidLanguageIdentifier">
+            <summary>The identifier:"{0}" on the property:"{1}" of type:"{2}" is not a valid language-independent identifier name. Check to see if CodeGenerator.IsValidLanguageIndependentIdentifier allows the identifier name.</summary>
+        </member>
+        <member name="P:System.SR.toStringUnknown">
+            <summary>{unknown}</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line1">
+            <summary>auto-generated&gt;</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line2">
+            <summary>This code was generated by a tool.</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line4">
+            <summary>Changes to this file may cause incorrect behavior and will be lost if</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line5">
+            <summary>the code is regenerated.</summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.OSPlatformAttribute">
+            <summary>
+            Base type for all platform-specific API attributes.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.TargetPlatformAttribute">
+            <summary>
+            Records the platform that the project targeted.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformAttribute">
+             <summary>
+             Records the operating system (and minimum version) that supports an API. Multiple attributes can be
+             applied to indicate support on multiple operating systems.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformAttribute" />
+             or use guards to prevent calls to APIs on unsupported operating systems.
+            
+             A given platform should only be specified once.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformAttribute">
+            <summary>
+            Marks APIs that were removed in a given operating system version.
+            </summary>
+            <remarks>
+            Primarily used by OS bindings to indicate APIs that are only available in
+            earlier versions.
+            </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates a custom guard field, property or method with a supported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple supported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that field, property or method in a conditional or assert statements in order to safely call platform specific APIs.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates the custom guard field, property or method with an unsupported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple unsupported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that  field, property or method in a conditional or assert statements as a guard to safely call APIs unsupported on those platforms.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+    </members>
+</doc>
diff --git a/VueWebApi/bin/System.Text.Encodings.Web.xml b/VueWebApi/bin/System.Text.Encodings.Web.xml
new file mode 100644
index 0000000..4d2efe2
--- /dev/null
+++ b/VueWebApi/bin/System.Text.Encodings.Web.xml
@@ -0,0 +1,866 @@
+锘�<?xml version="1.0" encoding="utf-8"?><doc>
+  <assembly>
+    <name>System.Text.Encodings.Web</name>
+  </assembly>
+  <members>
+    <member name="T:System.Text.Encodings.Web.HtmlEncoder">
+      <summary>Represents an HTML character encoding.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.HtmlEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.HtmlEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Creates a new instance of the HtmlEncoder class with the specified settings.</summary>
+      <param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.HtmlEncoder"></see> instance encodes, primarily which characters to encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.HtmlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="settings">settings</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.HtmlEncoder.Create(System.Text.Unicode.UnicodeRange[])">
+      <summary>Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode.</summary>
+      <param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.HtmlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="P:System.Text.Encodings.Web.HtmlEncoder.Default">
+      <summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder"></see> class.</summary>
+      <returns>A built-in instance of the <see cref="System.Text.Encodings.Web.HtmlEncoder"></see> class.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.JavaScriptEncoder">
+      <summary>Represents a JavaScript character encoding.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.JavaScriptEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.JavaScriptEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Creates a new instance of JavaScriptEncoder class with the specified settings.</summary>
+      <param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder"></see> instance encodes, primarily which characters to encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="settings">settings</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.JavaScriptEncoder.Create(System.Text.Unicode.UnicodeRange[])">
+      <summary>Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode.</summary>
+      <param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="P:System.Text.Encodings.Web.JavaScriptEncoder.Default">
+      <summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</summary>
+      <returns>A built-in instance of the <see cref="System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.TextEncoder">
+      <summary>The base class of web encoders.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.TextEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.String)">
+      <summary>Encodes the supplied string and returns the encoded text as a new string.</summary>
+      <param name="value">The string to encode.</param>
+      <returns>The encoded string.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="value">value</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentException">The <see cref="System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)"></see> method failed. The encoder does not implement <see cref="System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter"></see> correctly.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.String)">
+      <summary>Encodes the specified string to a <see cref="T:System.IO.TextWriter"></see> object.</summary>
+      <param name="output">The stream to which to write the encoded text.</param>
+      <param name="value">The string to encode.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.Char[],System.Int32,System.Int32)">
+      <summary>Encodes characters from an array and writes them to a <see cref="T:System.IO.TextWriter"></see> object.</summary>
+      <param name="output">The stream to which to write the encoded text.</param>
+      <param name="value">The array of characters to encode.</param>
+      <param name="startIndex">The array index of the first character to encode.</param>
+      <param name="characterCount">The number of characters in the array to encode.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="output">output</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentException">The <see cref="System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)"></see> method failed. The encoder does not implement <see cref="System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter"></see> correctly.</exception>
+      <exception cref="T:System.ArgumentNullException"><paramref name="value">value</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex">startIndex</paramref> is out of range.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="characterCount">characterCount</paramref> is out of range.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.String,System.Int32,System.Int32)">
+      <summary>Encodes a substring and writes it to a <see cref="T:System.IO.TextWriter"></see> object.</summary>
+      <param name="output">The stream to which to write the encoded text.</param>
+      <param name="value">The string whose substring is to be encoded.</param>
+      <param name="startIndex">The index where the substring starts.</param>
+      <param name="characterCount">The number of characters in the substring.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="output">output</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentException">The <see cref="System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)"></see> method failed. The encoder does not implement <see cref="System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter"></see> correctly.</exception>
+      <exception cref="T:System.ArgumentNullException"><paramref name="value">value</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex">startIndex</paramref> is out of range.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="characterCount">characterCount</paramref> is out of range.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.FindFirstCharacterToEncode(System.Char*,System.Int32)">
+      <summary>Finds the index of the first character to encode.</summary>
+      <param name="text">The text buffer to search.</param>
+      <param name="textLength">The number of characters in <paramref name="text">text</paramref>.</param>
+      <returns>The index of the first character to encode.</returns>
+    </member>
+    <member name="P:System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter">
+      <summary>Gets the maximum number of characters that this encoder can generate for each input code point.</summary>
+      <returns>The maximum number of characters.</returns>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)">
+      <summary>Encodes a Unicode scalar value and writes it to a buffer.</summary>
+      <param name="unicodeScalar">A Unicode scalar value.</param>
+      <param name="buffer">A pointer to the buffer to which to write the encoded text.</param>
+      <param name="bufferLength">The length of the destination <paramref name="buffer">buffer</paramref> in characters.</param>
+      <param name="numberOfCharactersWritten">When the method returns, indicates the number of characters written to the <paramref name="buffer">buffer</paramref>.</param>
+      <returns>false if <paramref name="bufferLength">bufferLength</paramref> is too small to fit the encoded text; otherwise, returns true.</returns>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.WillEncode(System.Int32)">
+      <summary>Determines if a given Unicode scalar value will be encoded.</summary>
+      <param name="unicodeScalar">A Unicode scalar value.</param>
+      <returns>true if the <paramref name="unicodeScalar">unicodeScalar</paramref> value will be encoded by this encoder; otherwise, returns false.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.TextEncoderSettings">
+      <summary>Represents a filter that allows only certain Unicode code points.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor">
+      <summary>Instantiates an empty filter (allows no code points through by default).</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Instantiates a filter by cloning the allowed list of another <see cref="T:System.Text.Encodings.Web.TextEncoderSettings"></see> object.</summary>
+      <param name="other">The other <see cref="T:System.Text.Encodings.Web.TextEncoderSettings"></see> object to be cloned.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor(System.Text.Unicode.UnicodeRange[])">
+      <summary>Instantiates a filter where only the character ranges specified by <paramref name="allowedRanges">allowedRanges</paramref> are allowed by the filter.</summary>
+      <param name="allowedRanges">The allowed character ranges.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCharacter(System.Char)">
+      <summary>Allows the character specified by <paramref name="character">character</paramref> through the filter.</summary>
+      <param name="character">The allowed character.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCharacters(System.Char[])">
+      <summary>Allows all characters specified by <paramref name="characters">characters</paramref> through the filter.</summary>
+      <param name="characters">The allowed characters.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="characters">characters</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCodePoints(System.Collections.Generic.IEnumerable{System.Int32})">
+      <summary>Allows all code points specified by <paramref name="codePoints">codePoints</paramref>.</summary>
+      <param name="codePoints">The allowed code points.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="codePoints">codePoints</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowRange(System.Text.Unicode.UnicodeRange)">
+      <summary>Allows all characters specified by <paramref name="range">range</paramref> through the filter.</summary>
+      <param name="range">The range of characters to be allowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="range">range</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowRanges(System.Text.Unicode.UnicodeRange[])">
+      <summary>Allows all characters specified by <paramref name="ranges">ranges</paramref> through the filter.</summary>
+      <param name="ranges">The ranges of characters to be allowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="ranges">ranges</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.Clear">
+      <summary>Resets this object by disallowing all characters.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidCharacter(System.Char)">
+      <summary>Disallows the character <paramref name="character">character</paramref> through the filter.</summary>
+      <param name="character">The disallowed character.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidCharacters(System.Char[])">
+      <summary>Disallows all characters specified by <paramref name="characters">characters</paramref> through the filter.</summary>
+      <param name="characters">The disallowed characters.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="characters">characters</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidRange(System.Text.Unicode.UnicodeRange)">
+      <summary>Disallows all characters specified by <paramref name="range">range</paramref> through the filter.</summary>
+      <param name="range">The range of characters to be disallowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="range">range</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidRanges(System.Text.Unicode.UnicodeRange[])">
+      <summary>Disallows all characters specified by <paramref name="ranges">ranges</paramref> through the filter.</summary>
+      <param name="ranges">The ranges of characters to be disallowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="ranges">ranges</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.GetAllowedCodePoints">
+      <summary>Gets an enumerator of all allowed code points.</summary>
+      <returns>The enumerator of allowed code points.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.UrlEncoder">
+      <summary>Represents a URL character encoding.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.UrlEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.UrlEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Creates a new instance of UrlEncoder class with the specified settings.</summary>
+      <param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.UrlEncoder"></see> instance encodes, primarily which characters to encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.UrlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="settings">settings</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.UrlEncoder.Create(System.Text.Unicode.UnicodeRange[])">
+      <summary>Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode.</summary>
+      <param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.UrlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="P:System.Text.Encodings.Web.UrlEncoder.Default">
+      <summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder"></see> class.</summary>
+      <returns>A built-in instance of the <see cref="System.Text.Encodings.Web.UrlEncoder"></see> class.</returns>
+    </member>
+    <member name="T:System.Text.Unicode.UnicodeRange">
+      <summary>Represents a contiguous range of Unicode code points.</summary>
+    </member>
+    <member name="M:System.Text.Unicode.UnicodeRange.#ctor(System.Int32,System.Int32)">
+      <summary>Creates a new <see cref="T:System.Text.Unicode.UnicodeRange"></see> that includes a specified number of characters starting at a specified Unicode code point.</summary>
+      <param name="firstCodePoint">The first code point in the range.</param>
+      <param name="length">The number of code points in the range.</param>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="firstCodePoint">firstCodePoint</paramref> is less than zero or greater than 0xFFFF. 
+-or-           
+<paramref name="length">length</paramref> is less than zero.
+-or-
+<paramref name="firstCodePoint">firstCodePoint</paramref> plus <paramref name="length">length</paramref> is greater than 0xFFFF.</exception>
+    </member>
+    <member name="M:System.Text.Unicode.UnicodeRange.Create(System.Char,System.Char)">
+      <summary>Creates a new <see cref="T:System.Text.Unicode.UnicodeRange"></see> instance from a span of characters.</summary>
+      <param name="firstCharacter">The first character in the range.</param>
+      <param name="lastCharacter">The last character in the range.</param>
+      <returns>A range that includes all characters between <paramref name="firstCharacter">firstCharacter</paramref> and <paramref name="lastCharacter">lastCharacter</paramref>.</returns>
+      <exception cref="System.ArgumentOutOfRangeException"><paramref name="lastCharacter">lastCharacter</paramref> precedes <paramref name="firstCharacter">firstCharacter</paramref>.</exception>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRange.FirstCodePoint">
+      <summary>Gets the first code point in the range represented by this <see cref="T:System.Text.Unicode.UnicodeRange"></see> instance.</summary>
+      <returns>The first code point in the range.</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRange.Length">
+      <summary>Gets the number of code points in the range represented by this <see cref="T:System.Text.Unicode.UnicodeRange"></see> instance.</summary>
+      <returns>The number of code points in the range.</returns>
+    </member>
+    <member name="T:System.Text.Unicode.UnicodeRanges">
+      <summary>Provides static properties that return predefined <see cref="T:System.Text.Unicode.UnicodeRange"></see> instances that correspond to blocks from the Unicode specification.</summary>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.All">
+      <summary>Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF).</summary>
+      <returns>A range that consists of the entire BMP.</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.AlphabeticPresentationForms">
+      <summary>Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F).</summary>
+      <returns>The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Arabic">
+      <summary>Gets the Arabic Unicode block (U+0600-U+06FF).</summary>
+      <returns>The Arabic Unicode block (U+0600-U+06FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicExtendedA">
+      <summary>Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF).</summary>
+      <returns>The Arabic Extended-A Unicode block (U+08A0-U+08FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicPresentationFormsA">
+      <summary>Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF).</summary>
+      <returns>The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicPresentationFormsB">
+      <summary>Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF).</summary>
+      <returns>The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicSupplement">
+      <summary>Gets the Arabic Supplement Unicode block (U+0750-U+077F).</summary>
+      <returns>The Arabic Supplement Unicode block (U+0750-U+077F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Armenian">
+      <summary>Gets the Armenian Unicode block (U+0530-U+058F).</summary>
+      <returns>The Armenian Unicode block (U+0530-U+058F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Arrows">
+      <summary>Gets the Arrows Unicode block (U+2190-U+21FF).</summary>
+      <returns>The Arrows Unicode block (U+2190-U+21FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Balinese">
+      <summary>Gets the Balinese Unicode block (U+1B00-U+1B7F).</summary>
+      <returns>The Balinese Unicode block (U+1B00-U+1B7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Bamum">
+      <summary>Gets the Bamum Unicode block (U+A6A0-U+A6FF).</summary>
+      <returns>The Bamum Unicode block (U+A6A0-U+A6FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BasicLatin">
+      <summary>Gets the Basic Latin Unicode block (U+0021-U+007F).</summary>
+      <returns>The Basic Latin Unicode block (U+0021-U+007F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Batak">
+      <summary>Gets the Batak Unicode block (U+1BC0-U+1BFF).</summary>
+      <returns>The Batak Unicode block (U+1BC0-U+1BFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Bengali">
+      <summary>Gets the Bengali Unicode block (U+0980-U+09FF).</summary>
+      <returns>The Bengali Unicode block (U+0980-U+09FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BlockElements">
+      <summary>Gets the Block Elements Unicode block (U+2580-U+259F).</summary>
+      <returns>The Block Elements Unicode block (U+2580-U+259F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Bopomofo">
+      <summary>Gets the Bopomofo Unicode block (U+3100-U+312F).</summary>
+      <returns>The Bopomofo Unicode block (U+3105-U+312F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BopomofoExtended">
+      <summary>Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF).</summary>
+      <returns>The Bopomofo Extended Unicode block (U+31A0-U+31BF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BoxDrawing">
+      <summary>Gets the Box Drawing Unicode block (U+2500-U+257F).</summary>
+      <returns>The Box Drawing Unicode block (U+2500-U+257F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BraillePatterns">
+      <summary>Gets the Braille Patterns Unicode block (U+2800-U+28FF).</summary>
+      <returns>The Braille Patterns Unicode block (U+2800-U+28FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Buginese">
+      <summary>Gets the Buginese Unicode block (U+1A00-U+1A1F).</summary>
+      <returns>The Buginese Unicode block (U+1A00-U+1A1F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Buhid">
+      <summary>Gets the Buhid Unicode block (U+1740-U+175F).</summary>
+      <returns>The Buhid Unicode block (U+1740-U+175F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Cham">
+      <summary>Gets the Cham Unicode block (U+AA00-U+AA5F).</summary>
+      <returns>The Cham Unicode block (U+AA00-U+AA5F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Cherokee">
+      <summary>Gets the Cherokee Unicode block (U+13A0-U+13FF).</summary>
+      <returns>The Cherokee Unicode block (U+13A0-U+13FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CherokeeSupplement">
+      <summary>Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF).</summary>
+      <returns>The Cherokee Supplement Unicode block (U+AB70-U+ABBF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibility">
+      <summary>Gets the CJK Compatibility Unicode block (U+3300-U+33FF).</summary>
+      <returns>The CJK Compatibility Unicode block (U+3300-U+33FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibilityForms">
+      <summary>Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F).</summary>
+      <returns>The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibilityIdeographs">
+      <summary>Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9).</summary>
+      <returns>The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkRadicalsSupplement">
+      <summary>Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF).</summary>
+      <returns>The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkStrokes">
+      <summary>Gets the CJK Strokes Unicode block (U+31C0-U+31EF).</summary>
+      <returns>The CJK Strokes Unicode block (U+31C0-U+31EF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkSymbolsandPunctuation">
+      <summary>Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F).</summary>
+      <returns>The CJK Symbols and Punctuation Unicode block (U+3000-U+303F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkUnifiedIdeographs">
+      <summary>Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC).</summary>
+      <returns>The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkUnifiedIdeographsExtensionA">
+      <summary>Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5).</summary>
+      <returns>The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarks">
+      <summary>Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F).</summary>
+      <returns>The Combining Diacritical Marks Unicode block (U+0300-U+036F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksExtended">
+      <summary>Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF).</summary>
+      <returns>The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksforSymbols">
+      <summary>Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF).</summary>
+      <returns>The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksSupplement">
+      <summary>Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF).</summary>
+      <returns>The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningHalfMarks">
+      <summary>Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F).</summary>
+      <returns>The Combining Half Marks Unicode block (U+FE20-U+FE2F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CommonIndicNumberForms">
+      <summary>Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F).</summary>
+      <returns>The Common Indic Number Forms Unicode block (U+A830-U+A83F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ControlPictures">
+      <summary>Gets the Control Pictures Unicode block (U+2400-U+243F).</summary>
+      <returns>The Control Pictures Unicode block (U+2400-U+243F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Coptic">
+      <summary>Gets the Coptic Unicode block (U+2C80-U+2CFF).</summary>
+      <returns>The Coptic Unicode block (U+2C80-U+2CFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CurrencySymbols">
+      <summary>Gets the Currency Symbols Unicode block (U+20A0-U+20CF).</summary>
+      <returns>The Currency Symbols Unicode block (U+20A0-U+20CF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Cyrillic">
+      <summary>Gets the Cyrillic Unicode block (U+0400-U+04FF).</summary>
+      <returns>The Cyrillic Unicode block (U+0400-U+04FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CyrillicExtendedA">
+      <summary>Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF).</summary>
+      <returns>The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CyrillicExtendedB">
+      <summary>Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F).</summary>
+      <returns>The Cyrillic Extended-B Unicode block (U+A640-U+A69F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CyrillicSupplement">
+      <summary>Gets the Cyrillic Supplement Unicode block (U+0500-U+052F).</summary>
+      <returns>The Cyrillic Supplement Unicode block (U+0500-U+052F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Devanagari">
+      <summary>Gets the Devangari Unicode block (U+0900-U+097F).</summary>
+      <returns>The Devangari Unicode block (U+0900-U+097F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.DevanagariExtended">
+      <summary>Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF).</summary>
+      <returns>The Devanagari Extended Unicode block (U+A8E0-U+A8FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Dingbats">
+      <summary>Gets the Dingbats Unicode block (U+2700-U+27BF).</summary>
+      <returns>The Dingbats Unicode block (U+2700-U+27BF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EnclosedAlphanumerics">
+      <summary>Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF).</summary>
+      <returns>The Enclosed Alphanumerics Unicode block (U+2460-U+24FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EnclosedCjkLettersandMonths">
+      <summary>Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF).</summary>
+      <returns>The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Ethiopic">
+      <summary>Gets the Ethiopic Unicode block (U+1200-U+137C).</summary>
+      <returns>The Ethiopic Unicode block (U+1200-U+137C).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EthiopicExtended">
+      <summary>Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF).</summary>
+      <returns>The Ethipic Extended Unicode block (U+2D80-U+2DDF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EthiopicExtendedA">
+      <summary>Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F).</summary>
+      <returns>The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EthiopicSupplement">
+      <summary>Gets the Ethiopic Supplement Unicode block (U+1380-U+1399).</summary>
+      <returns>The Ethiopic Supplement Unicode block (U+1380-U+1399).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GeneralPunctuation">
+      <summary>Gets the General Punctuation Unicode block (U+2000-U+206F).</summary>
+      <returns>The General Punctuation Unicode block (U+2000-U+206F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GeometricShapes">
+      <summary>Gets the Geometric Shapes Unicode block (U+25A0-U+25FF).</summary>
+      <returns>The Geometric Shapes Unicode block (U+25A0-U+25FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Georgian">
+      <summary>Gets the Georgian Unicode block (U+10A0-U+10FF).</summary>
+      <returns>The Georgian Unicode block (U+10A0-U+10FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GeorgianSupplement">
+      <summary>Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F).</summary>
+      <returns>The Georgian Supplement Unicode block (U+2D00-U+2D2F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Glagolitic">
+      <summary>Gets the Glagolitic Unicode block (U+2C00-U+2C5F).</summary>
+      <returns>The Glagolitic Unicode block (U+2C00-U+2C5F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GreekandCoptic">
+      <summary>Gets the Greek and Coptic Unicode block (U+0370-U+03FF).</summary>
+      <returns>The Greek and Coptic Unicode block (U+0370-U+03FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GreekExtended">
+      <summary>Gets the Greek Extended Unicode block (U+1F00-U+1FFF).</summary>
+      <returns>The Greek Extended Unicode block (U+1F00-U+1FFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Gujarati">
+      <summary>Gets the Gujarti Unicode block (U+0A81-U+0AFF).</summary>
+      <returns>The Gujarti Unicode block (U+0A81-U+0AFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Gurmukhi">
+      <summary>Gets the Gurmukhi Unicode block (U+0A01-U+0A7F).</summary>
+      <returns>The Gurmukhi Unicode block (U+0A01-U+0A7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HalfwidthandFullwidthForms">
+      <summary>Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE).</summary>
+      <returns>The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulCompatibilityJamo">
+      <summary>Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F).</summary>
+      <returns>The Hangul Compatibility Jamo Unicode block (U+3131-U+318F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulJamo">
+      <summary>Gets the Hangul Jamo Unicode block (U+1100-U+11FF).</summary>
+      <returns>The Hangul Jamo Unicode block (U+1100-U+11FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulJamoExtendedA">
+      <summary>Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F).</summary>
+      <returns>The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulJamoExtendedB">
+      <summary>Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF).</summary>
+      <returns>The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulSyllables">
+      <summary>Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF).</summary>
+      <returns>The Hangul Syllables Unicode block (U+AC00-U+D7AF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Hanunoo">
+      <summary>Gets the Hanunoo Unicode block (U+1720-U+173F).</summary>
+      <returns>The Hanunoo Unicode block (U+1720-U+173F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Hebrew">
+      <summary>Gets the Hebrew Unicode block (U+0590-U+05FF).</summary>
+      <returns>The Hebrew Unicode block (U+0590-U+05FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Hiragana">
+      <summary>Gets the Hiragana Unicode block (U+3040-U+309F).</summary>
+      <returns>The Hiragana Unicode block (U+3040-U+309F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.IdeographicDescriptionCharacters">
+      <summary>Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF).</summary>
+      <returns>The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.IpaExtensions">
+      <summary>Gets the IPA Extensions Unicode block (U+0250-U+02AF).</summary>
+      <returns>The IPA Extensions Unicode block (U+0250-U+02AF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Javanese">
+      <summary>Gets the Javanese Unicode block (U+A980-U+A9DF).</summary>
+      <returns>The Javanese Unicode block (U+A980-U+A9DF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Kanbun">
+      <summary>Gets the Kanbun Unicode block (U+3190-U+319F).</summary>
+      <returns>The Kanbun Unicode block (U+3190-U+319F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KangxiRadicals">
+      <summary>Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF).</summary>
+      <returns>The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Kannada">
+      <summary>Gets the Kannada Unicode block (U+0C81-U+0CFF).</summary>
+      <returns>The Kannada Unicode block (U+0C81-U+0CFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Katakana">
+      <summary>Gets the Katakana Unicode block (U+30A0-U+30FF).</summary>
+      <returns>The Katakana Unicode block (U+30A0-U+30FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KatakanaPhoneticExtensions">
+      <summary>Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF).</summary>
+      <returns>The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KayahLi">
+      <summary>Gets the Kayah Li Unicode block (U+A900-U+A92F).</summary>
+      <returns>The Kayah Li Unicode block (U+A900-U+A92F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Khmer">
+      <summary>Gets the Khmer Unicode block (U+1780-U+17FF).</summary>
+      <returns>The Khmer Unicode block (U+1780-U+17FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KhmerSymbols">
+      <summary>Gets the Khmer Symbols Unicode block (U+19E0-U+19FF).</summary>
+      <returns>The Khmer Symbols Unicode block (U+19E0-U+19FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Lao">
+      <summary>Gets the Lao Unicode block (U+0E80-U+0EDF).</summary>
+      <returns>The Lao Unicode block (U+0E80-U+0EDF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Latin1Supplement">
+      <summary>Gets the Latin-1 Supplement Unicode block (U+00A1-U+00FF).</summary>
+      <returns>The Latin-1 Supplement Unicode block (U+00A1-U+00FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedA">
+      <summary>Gets the Latin Extended-A Unicode block (U+0100-U+017F).</summary>
+      <returns>The Latin Extended-A Unicode block (U+0100-U+017F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedAdditional">
+      <summary>Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF).</summary>
+      <returns>The Latin Extended Additional Unicode block (U+1E00-U+1EFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedB">
+      <summary>Gets the Latin Extended-B Unicode block (U+0180-U+024F).</summary>
+      <returns>The Latin Extended-B Unicode block (U+0180-U+024F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedC">
+      <summary>Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F).</summary>
+      <returns>The Latin Extended-C Unicode block (U+2C60-U+2C7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedD">
+      <summary>Gets the Latin Extended-D Unicode block (U+A720-U+A7FF).</summary>
+      <returns>The Latin Extended-D Unicode block (U+A720-U+A7FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedE">
+      <summary>Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F).</summary>
+      <returns>The Latin Extended-E Unicode block (U+AB30-U+AB6F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Lepcha">
+      <summary>Gets the Lepcha Unicode block (U+1C00-U+1C4F).</summary>
+      <returns>The Lepcha Unicode block (U+1C00-U+1C4F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LetterlikeSymbols">
+      <summary>Gets the Letterlike Symbols Unicode block (U+2100-U+214F).</summary>
+      <returns>The Letterlike Symbols Unicode block (U+2100-U+214F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Limbu">
+      <summary>Gets the Limbu Unicode block (U+1900-U+194F).</summary>
+      <returns>The Limbu Unicode block (U+1900-U+194F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Lisu">
+      <summary>Gets the Lisu Unicode block (U+A4D0-U+A4FF).</summary>
+      <returns>The Lisu Unicode block (U+A4D0-U+A4FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Malayalam">
+      <summary>Gets the Malayalam Unicode block (U+0D00-U+0D7F).</summary>
+      <returns>The Malayalam Unicode block (U+0D00-U+0D7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Mandaic">
+      <summary>Gets the Mandaic Unicode block (U+0840-U+085F).</summary>
+      <returns>The Mandaic Unicode block (U+0840-U+085F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MathematicalOperators">
+      <summary>Gets the Mathematical Operators Unicode block (U+2200-U+22FF).</summary>
+      <returns>The Mathematical Operators Unicode block (U+2200-U+22FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MeeteiMayek">
+      <summary>Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF).</summary>
+      <returns>The Meetei Mayek Unicode block (U+ABC0-U+ABFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MeeteiMayekExtensions">
+      <summary>Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF).</summary>
+      <returns>The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousMathematicalSymbolsA">
+      <summary>Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF).</summary>
+      <returns>The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousMathematicalSymbolsB">
+      <summary>Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF).</summary>
+      <returns>The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousSymbols">
+      <summary>Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF).</summary>
+      <returns>The Miscellaneous Symbols Unicode block (U+2600-U+26FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousSymbolsandArrows">
+      <summary>Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF).</summary>
+      <returns>The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousTechnical">
+      <summary>Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF).</summary>
+      <returns>The Miscellaneous Technical Unicode block (U+2300-U+23FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ModifierToneLetters">
+      <summary>Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F).</summary>
+      <returns>The Modifier Tone Letters Unicode block (U+A700-U+A71F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Mongolian">
+      <summary>Gets the Mongolian Unicode block (U+1800-U+18AF).</summary>
+      <returns>The Mongolian Unicode block (U+1800-U+18AF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Myanmar">
+      <summary>Gets the Myanmar Unicode block (U+1000-U+109F).</summary>
+      <returns>The Myanmar Unicode block (U+1000-U+109F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MyanmarExtendedA">
+      <summary>Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F).</summary>
+      <returns>The Myanmar Extended-A Unicode block (U+AA60-U+AA7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MyanmarExtendedB">
+      <summary>Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF).</summary>
+      <returns>The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.NewTaiLue">
+      <summary>Gets the New Tai Lue Unicode block (U+1980-U+19DF).</summary>
+      <returns>The New Tai Lue Unicode block (U+1980-U+19DF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.NKo">
+      <summary>Gets the NKo Unicode block (U+07C0-U+07FF).</summary>
+      <returns>The NKo Unicode block (U+07C0-U+07FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.None">
+      <summary>Gets an empty Unicode range.</summary>
+      <returns>A Unicode range with no elements.</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.NumberForms">
+      <summary>Gets the Number Forms Unicode block (U+2150-U+218F).</summary>
+      <returns>The Number Forms Unicode block (U+2150-U+218F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Ogham">
+      <summary>Gets the Ogham Unicode block (U+1680-U+169F).</summary>
+      <returns>The Ogham Unicode block (U+1680-U+169F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.OlChiki">
+      <summary>Gets the Ol Chiki Unicode block (U+1C50-U+1C7F).</summary>
+      <returns>The Ol Chiki Unicode block (U+1C50-U+1C7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.OpticalCharacterRecognition">
+      <summary>Gets the Optical Character Recognition Unicode block (U+2440-U+245F).</summary>
+      <returns>The Optical Character Recognition Unicode block (U+2440-U+245F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Oriya">
+      <summary>Gets the Oriya Unicode block (U+0B00-U+0B7F).</summary>
+      <returns>The Oriya Unicode block (U+0B00-U+0B7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Phagspa">
+      <summary>Gets the Phags-pa Unicode block (U+A840-U+A87F).</summary>
+      <returns>The Phags-pa Unicode block (U+A840-U+A87F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.PhoneticExtensions">
+      <summary>Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F).</summary>
+      <returns>The Phonetic Extensions Unicode block (U+1D00-U+1D7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.PhoneticExtensionsSupplement">
+      <summary>Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF).</summary>
+      <returns>The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Rejang">
+      <summary>Gets the Rejang Unicode block (U+A930-U+A95F).</summary>
+      <returns>The Rejang Unicode block (U+A930-U+A95F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Runic">
+      <summary>Gets the Runic Unicode block (U+16A0-U+16FF).</summary>
+      <returns>The Runic Unicode block (U+16A0-U+16FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Samaritan">
+      <summary>Gets the Samaritan Unicode block (U+0800-U+083F).</summary>
+      <returns>The Samaritan Unicode block (U+0800-U+083F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Saurashtra">
+      <summary>Gets the Saurashtra Unicode block (U+A880-U+A8DF).</summary>
+      <returns>The Saurashtra Unicode block (U+A880-U+A8DF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Sinhala">
+      <summary>Gets the Sinhala Unicode block (U+0D80-U+0DFF).</summary>
+      <returns>The Sinhala Unicode block (U+0D80-U+0DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SmallFormVariants">
+      <summary>Gets the Small Form Variants Unicode block (U+FE50-U+FE6F).</summary>
+      <returns>The Small Form Variants Unicode block (U+FE50-U+FE6F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SpacingModifierLetters">
+      <summary>Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF).</summary>
+      <returns>The Spacing Modifier Letters Unicode block (U+02B0-U+02FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Specials">
+      <summary>Gets the Specials Unicode block (U+FFF0-U+FFFF).</summary>
+      <returns>The Specials Unicode block (U+FFF0-U+FFFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Sundanese">
+      <summary>Gets the Sundanese Unicode block (U+1B80-U+1BBF).</summary>
+      <returns>The Sundanese Unicode block (U+1B80-U+1BBF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SundaneseSupplement">
+      <summary>Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF).</summary>
+      <returns>The Sundanese Supplement Unicode block (U+1CC0-U+1CCF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SuperscriptsandSubscripts">
+      <summary>Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F).</summary>
+      <returns>The Superscripts and Subscripts Unicode block (U+2070-U+209F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalArrowsA">
+      <summary>Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF).</summary>
+      <returns>The Supplemental Arrows-A Unicode block (U+27F0-U+27FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalArrowsB">
+      <summary>Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F).</summary>
+      <returns>The Supplemental Arrows-B Unicode block (U+2900-U+297F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalMathematicalOperators">
+      <summary>Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF).</summary>
+      <returns>The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalPunctuation">
+      <summary>Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F).</summary>
+      <returns>The Supplemental Punctuation Unicode block (U+2E00-U+2E7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SylotiNagri">
+      <summary>Gets the Syloti Nagri Unicode block (U+A800-U+A82F).</summary>
+      <returns>The Syloti Nagri Unicode block (U+A800-U+A82F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Syriac">
+      <summary>Gets the Syriac Unicode block (U+0700-U+074F).</summary>
+      <returns>The Syriac Unicode block (U+0700-U+074F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tagalog">
+      <summary>Gets the Tagalog Unicode block (U+1700-U+171F).</summary>
+      <returns>The Tagalog Unicode block (U+1700-U+171F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tagbanwa">
+      <summary>Gets the Tagbanwa Unicode block (U+1760-U+177F).</summary>
+      <returns>The Tagbanwa Unicode block (U+1760-U+177F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.TaiLe">
+      <summary>Gets the Tai Le Unicode block (U+1950-U+197F).</summary>
+      <returns>The Tai Le Unicode block (U+1950-U+197F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.TaiTham">
+      <summary>Gets the Tai Tham Unicode block (U+1A20-U+1AAF).</summary>
+      <returns>The Tai Tham Unicode block (U+1A20-U+1AAF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.TaiViet">
+      <summary>Gets the Tai Viet Unicode block (U+AA80-U+AADF).</summary>
+      <returns>The Tai Viet Unicode block (U+AA80-U+AADF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tamil">
+      <summary>Gets the Tamil Unicode block (U+0B80-U+0BFF).</summary>
+      <returns>The Tamil Unicode block (U+0B82-U+0BFA).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Telugu">
+      <summary>Gets the Telugu Unicode block (U+0C00-U+0C7F).</summary>
+      <returns>The Telugu Unicode block (U+0C00-U+0C7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Thaana">
+      <summary>Gets the Thaana Unicode block (U+0780-U+07BF).</summary>
+      <returns>The Thaana Unicode block (U+0780-U+07BF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Thai">
+      <summary>Gets the Thai Unicode block (U+0E00-U+0E7F).</summary>
+      <returns>The Thai Unicode block (U+0E00-U+0E7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tibetan">
+      <summary>Gets the Tibetan Unicode block (U+0F00-U+0FFF).</summary>
+      <returns>The Tibetan Unicode block (U+0F00-U+0FFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tifinagh">
+      <summary>Gets the Tifinagh Unicode block (U+2D30-U+2D7F).</summary>
+      <returns>The Tifinagh Unicode block (U+2D30-U+2D7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.UnifiedCanadianAboriginalSyllabics">
+      <summary>Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F).</summary>
+      <returns>The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.UnifiedCanadianAboriginalSyllabicsExtended">
+      <summary>Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF).</summary>
+      <returns>The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Vai">
+      <summary>Gets the Vai Unicode block (U+A500-U+A63F).</summary>
+      <returns>The Vai Unicode block (U+A500-U+A63F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.VariationSelectors">
+      <summary>Gets the Variation Selectors Unicode block (U+FE00-U+FE0F).</summary>
+      <returns>The Variation Selectors Unicode block (U+FE00-U+FE0F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.VedicExtensions">
+      <summary>Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF).</summary>
+      <returns>The Vedic Extensions Unicode block (U+1CD0-U+1CFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.VerticalForms">
+      <summary>Gets the Vertical Forms Unicode block (U+FE10-U+FE1F).</summary>
+      <returns>The Vertical Forms Unicode block (U+FE10-U+FE1F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.YijingHexagramSymbols">
+      <summary>Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF).</summary>
+      <returns>The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.YiRadicals">
+      <summary>Gets the Yi Radicals Unicode block (U+A490-U+A4CF).</summary>
+      <returns>The Yi Radicals Unicode block (U+A490-U+A4CF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.YiSyllables">
+      <summary>Gets the Yi Syllables Unicode block (U+A000-U+A48F).</summary>
+      <returns>The Yi Syllables Unicode block (U+A000-U+A48F).</returns>
+    </member>
+  </members>
+</doc>
\ No newline at end of file
diff --git a/VueWebApi/bin/VueWebApi.dll.config b/VueWebApi/bin/VueWebApi.dll.config
index 39cfa39..ff7ce4e 100644
--- a/VueWebApi/bin/VueWebApi.dll.config
+++ b/VueWebApi/bin/VueWebApi.dll.config
@@ -31,7 +31,7 @@
 	</appSettings>
 	<system.web>
 		<compilation debug="true" targetFramework="4.6.1" />
-		<customErrors mode="Off"/>
+		<customErrors mode="Off" />
 		<httpRuntime targetFramework="4.6.1" />
 		<!--session澶辨晥鏃堕棿-->
 		<sessionState mode="InProc" timeout="240">
@@ -114,6 +114,18 @@
 				<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
 				<bindingRedirect oldVersion="0.0.0.0-4.1.1.3" newVersion="4.0.0.0" />
 			</dependentAssembly>
+			<dependentAssembly>
+				<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+				<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
+			</dependentAssembly>
+			<dependentAssembly>
+				<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+				<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
+			</dependentAssembly>
+			<dependentAssembly>
+				<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+				<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
+			</dependentAssembly>
 		</assemblyBinding>
 	</runtime>
 	<system.codedom>
diff --git a/VueWebApi/bin/VueWebApi.pdb b/VueWebApi/bin/VueWebApi.pdb
index 9096656..bc0aa6c 100644
--- a/VueWebApi/bin/VueWebApi.pdb
+++ b/VueWebApi/bin/VueWebApi.pdb
Binary files differ
diff --git a/VueWebApi/bin/VueWebApi.xml b/VueWebApi/bin/VueWebApi.xml
index f1d3940..be885d9 100644
--- a/VueWebApi/bin/VueWebApi.xml
+++ b/VueWebApi/bin/VueWebApi.xml
@@ -922,15 +922,15 @@
             <param name="FileCode">鏂囦欢缂栫爜</param>
             <returns></returns>
         </member>
-        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelModelCheck(System.Web.HttpPostedFileBase,System.String)">
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelModelCheck">
             <summary>
             Excel瀵煎叆鏂囦欢涓婁紶銆佹ā鏉块獙璇併�佹暟鎹噺銆侀獙璇�
             </summary>
-            <param name="files">涓婁紶鏂囦欢</param>
             <param name="FileCode">鏂囦欢缂栫爜</param>
+            <param name="files">涓婁紶鏂囦欢</param>
             <returns></returns>
         </member>
-        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheckUpload(System.Web.HttpPostedFileBase,System.String)">
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheckUpload(System.Web.HttpPostedFile,System.String)">
             <summary>
             Excel瀵煎叆妯℃澘涓婁紶
             </summary>
@@ -938,7 +938,7 @@
             <param name="FileCode">鏂囦欢缂栫爜</param>
             <returns></returns>
         </member>
-        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheck(System.Web.HttpPostedFileBase,System.String)">
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheck(System.Web.HttpPostedFile,System.String)">
             <summary>
             Excel瀵煎叆妯℃澘楠岃瘉
             </summary>
@@ -946,7 +946,7 @@
             <param name="FileCode">鏂囦欢缂栫爜</param>
             <returns></returns>
         </member>
-        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheckCount(System.Web.HttpPostedFileBase,System.String)">
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheckCount(System.Web.HttpPostedFile,System.String)">
             <summary>
             Excel瀵煎叆妯℃澘鏁版嵁閲忛獙璇�
             </summary>
diff --git a/VueWebApi/grf/Rework.frx b/VueWebApi/grf/Rework.frx
new file mode 100644
index 0000000..0af314a
--- /dev/null
+++ b/VueWebApi/grf/Rework.frx
@@ -0,0 +1,89 @@
+锘�<?xml version="1.0" encoding="utf-8"?>
+<Report ScriptLanguage="CSharp" ReportInfo.Created="10/16/2018 18:08:59" ReportInfo.Modified="07/26/2022 14:37:33" ReportInfo.CreatorVersion="2014.2.3.0" PrintSettings.ShowDialog="false">
+  <Dictionary>
+    <XmlDataConnection Name="Connection" ConnectionString="rijcmlqmmfdjkQxfe1iwShBNGpud2ngqn0kQFUwlWvLE3W/iceu9kzGbruXJ5I6r8tOQvypOEky6erzZZQtihg2HYGClg==">
+      <TableDataSource Name="Table11" Alias="Table1" DataType="System.Int32" Enabled="true" TableName="Table1">
+        <Column Name="SEQ" Alias="seq" DataType="System.String" PropName="WO"/>
+        <Column Name="WO_CODE" Alias="wo_code" DataType="System.String" PropName="QTY"/>
+        <Column Name="PARTCODE" Alias="paetcode" DataType="System.String" PropName="PN_NAME"/>
+        <Column Name="PARTNAME" Alias="partname" DataType="System.String" PropName="PN_DESC"/>
+        <Column Name="PN_PARTNUMBER" Enabled="false" DataType="System.String" PropName="PN_PARTNAME"/>
+        <Column Name="PARTSPEC" Alias="partspec" DataType="System.String" PropName="Column"/>
+        <Column Name="ROUTENAME" Alias="routename" DataType="System.String" PropName="Column"/>
+        <Column Name="ORDERQTY" Alias="orderqty" DataType="System.String" PropName="Column"/>
+        <Column Name="LM_USER" Alias="lm_user" DataType="System.String" PropName="Column"/>
+        <Column Name="LM_DATE" Alias="lm_date" DataType="System.String" PropName="Column"/>
+        <Column Name="STEPCODE" Alias="stepcode" DataType="System.String" PropName="Column"/>
+        <Column Name="STEPNAME" Alias="stepname" DataType="System.String" PropName="Column1"/>
+        <Column Name="PLAN_QTY" Alias="plan_qty" DataType="System.String" PropName="Column2"/>
+        <Column Name="GOOD_QTY" Alias="good_qty" DataType="System.String" PropName="Column"/>
+        <Column Name="NG_QTY" Alias="ng_qty" DataType="System.String" PropName="Column1"/>
+        <Column Name="STEPQRCODE" Alias="stepqrcode" DataType="System.String" PropName="Column"/>
+      </TableDataSource>
+    </XmlDataConnection>
+  </Dictionary>
+  <ReportPage Name="Page1" RawPaperSize="9">
+    <ReportTitleBand Name="ReportTitle1" Width="718.2" Height="160.65">
+      <BarcodeObject Name="Barcode1" Left="585.9" Top="18.9" Width="106.55" Height="97.1" AutoSize="false" DataColumn="Table1.wo_code" Text="" ShowText="false" Barcode="QR Code" Barcode.ErrorCorrection="L" Barcode.Encoding="UTF8" Barcode.QuietZone="true"/>
+      <TextObject Name="Text7" Left="253.26" Top="3.78" Width="226.8" Height="28.35" Text="娴佺▼鍗�" HorzAlign="Center" VertAlign="Center" Font="寰蒋闆呴粦, 14.25pt"/>
+      <TextObject Name="Text54" Left="81.95" Top="37.8" Width="141.75" Height="18.9" Text="[Table1.wo_code]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text3" Left="81.95" Top="60.48" Width="141.75" Height="18.9" Text="[Table1.partname]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text39" Left="318.2" Top="37.8" Width="141.75" Height="18.9" Text="[Table1.paetcode]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text48" Left="18.9" Top="37.8" Width="66.15" Height="18.9" Text="宸ュ崟缂栧彿锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text1" Left="18.9" Top="60.48" Width="66.15" Height="18.9" Text="浜у搧鍚嶇О锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text38" Left="255.15" Top="37.8" Width="66.15" Height="18.9" Text="浜у搧缂栫爜锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text55" Left="81.95" Top="85.05" Width="141.75" Height="18.9" Text="[Table1.orderqty]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text56" Left="18.9" Top="85.05" Width="66.15" Height="18.9" Text="宸ュ崟鏁伴噺锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text57" Left="318.2" Top="56.7" Width="141.75" Height="18.9" Text="[Table1.partspec]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text58" Left="255.15" Top="56.7" Width="66.15" Height="18.9" Text="浜у搧瑙勬牸锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text59" Left="318.2" Top="85.05" Width="141.75" Height="18.9" Text="[Table1.routename]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text60" Left="255.15" Top="85.05" Width="66.15" Height="18.9" Text="宸ヨ壓璺嚎锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text61" Left="81.95" Top="113.4" Width="141.75" Height="18.9" Text="[Table1.lm_user]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text62" Left="18.9" Top="113.4" Width="66.15" Height="18.9" Text="鎵撳嵃浜哄憳锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text63" Left="318.2" Top="113.4" Width="141.75" Height="18.9" Text="[Table1.lm_date]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text64" Left="255.15" Top="113.4" Width="66.15" Height="18.9" Text="鎵撳嵃鏃堕棿锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+    </ReportTitleBand>
+    <PageHeaderBand Name="PageHeader1" Top="164.65" Width="718.2" Height="35.91">
+      <TableObject Name="Table1" Width="718.17" Height="35.91" Border.Lines="All">
+        <TableColumn Name="Column1" Width="73.23"/>
+        <TableColumn Name="Column2" Width="92.13"/>
+        <TableColumn Name="Column3" Width="129.93"/>
+        <TableColumn Name="Column4" Width="82.68"/>
+        <TableColumn Name="Column45" Width="94.5"/>
+        <TableColumn Name="Column46" Width="94.5"/>
+        <TableColumn Name="Column47" Width="151.2"/>
+        <TableRow Name="Row1" Height="35.91">
+          <TableCell Name="Cell1" Border.Lines="Right" Fill.Color="Gainsboro" Text="宸ュ簭鍙�" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell2" Border.Lines="Right" Fill.Color="Gainsboro" Text="宸ュ簭浜岀淮鐮�" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell3" Border.Lines="Right" Fill.Color="Gainsboro" Text="宸ュ簭" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell4" Border.Lines="Right" Fill.Color="Gainsboro" Text="鍔犲伐鏁伴噺" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell221" Border.Lines="Right" Fill.Color="Gainsboro" Text="鍚堟牸鏁伴噺" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell222" Border.Lines="Right" Fill.Color="Gainsboro" Text="涓嶈壇鏁伴噺" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell223" Fill.Color="Gainsboro" Text="澶囨敞" HorzAlign="Center" VertAlign="Center"/>
+        </TableRow>
+      </TableObject>
+    </PageHeaderBand>
+    <DataBand Name="Data1" Top="204.56" Width="718.2" Height="45.36" DataSource="Table11">
+      <TableObject Name="Table12" Width="718.17" Height="45.36" Border.Lines="All">
+        <TableColumn Name="Column48" Width="73.23"/>
+        <TableColumn Name="Column49" Width="92.13"/>
+        <TableColumn Name="Column50" Width="129.93"/>
+        <TableColumn Name="Column51" Width="82.68"/>
+        <TableColumn Name="Column52" Width="94.5"/>
+        <TableColumn Name="Column53" Width="94.5"/>
+        <TableColumn Name="Column54" Width="151.2"/>
+        <TableRow Name="Row2" Height="45.36">
+          <TableCell Name="Cell224" Border.Lines="Right" Text="[Table1.seq]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell225" Border.Lines="Right" HorzAlign="Center" VertAlign="Center">
+            <BarcodeObject Name="Barcode2" Left="18.9" Top="3.02" Width="60.48" Height="41.58" AutoSize="false" DataColumn="Table1.stepqrcode" Text="" ShowText="false" Barcode="QR Code" Barcode.ErrorCorrection="L" Barcode.Encoding="UTF8" Barcode.QuietZone="true"/>
+          </TableCell>
+          <TableCell Name="Cell226" Border.Lines="Right" Text="[Table1.stepname]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell227" Border.Lines="Right" Text="[Table1.plan_qty]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell228" Border.Lines="Right" Text="[Table1.good_qty]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell229" Border.Lines="Right" Text="[Table1.ng_qty]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell230" HorzAlign="Center" VertAlign="Center"/>
+        </TableRow>
+      </TableObject>
+    </DataBand>
+  </ReportPage>
+</Report>
diff --git a/VueWebApi/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache b/VueWebApi/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache
index 3ae6545..e679790 100644
--- a/VueWebApi/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache
+++ b/VueWebApi/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache
Binary files differ
diff --git "a/VueWebApi/obj/Release/Package/PackageTmp/Excel/\344\273\223\345\272\223\345\272\223\344\275\215\346\270\205\345\215\225.xls" "b/VueWebApi/obj/Release/Package/PackageTmp/Excel/\344\273\223\345\272\223\345\272\223\344\275\215\346\270\205\345\215\225.xls"
new file mode 100644
index 0000000..4680e92
--- /dev/null
+++ "b/VueWebApi/obj/Release/Package/PackageTmp/Excel/\344\273\223\345\272\223\345\272\223\344\275\215\346\270\205\345\215\225.xls"
Binary files differ
diff --git "a/VueWebApi/obj/Release/Package/PackageTmp/Excel/\345\276\200\346\235\245\345\215\225\344\275\215.xls" "b/VueWebApi/obj/Release/Package/PackageTmp/Excel/\345\276\200\346\235\245\345\215\225\344\275\215.xls"
new file mode 100644
index 0000000..23263b4
--- /dev/null
+++ "b/VueWebApi/obj/Release/Package/PackageTmp/Excel/\345\276\200\346\235\245\345\215\225\344\275\215.xls"
Binary files differ
diff --git "a/VueWebApi/obj/Release/Package/PackageTmp/Excel/\347\224\250\346\210\267\346\270\205\345\215\225.xls" "b/VueWebApi/obj/Release/Package/PackageTmp/Excel/\347\224\250\346\210\267\346\270\205\345\215\225.xls"
index af044dc..214c574 100644
--- "a/VueWebApi/obj/Release/Package/PackageTmp/Excel/\347\224\250\346\210\267\346\270\205\345\215\225.xls"
+++ "b/VueWebApi/obj/Release/Package/PackageTmp/Excel/\347\224\250\346\210\267\346\270\205\345\215\225.xls"
Binary files differ
diff --git "a/VueWebApi/obj/Release/Package/PackageTmp/Excel/\350\247\222\350\211\262\346\270\205\345\215\225.xls" "b/VueWebApi/obj/Release/Package/PackageTmp/Excel/\350\247\222\350\211\262\346\270\205\345\215\225.xls"
index 73e21a0..82db4e3 100644
--- "a/VueWebApi/obj/Release/Package/PackageTmp/Excel/\350\247\222\350\211\262\346\270\205\345\215\225.xls"
+++ "b/VueWebApi/obj/Release/Package/PackageTmp/Excel/\350\247\222\350\211\262\346\270\205\345\215\225.xls"
Binary files differ
diff --git a/VueWebApi/obj/Release/Package/PackageTmp/Web.config b/VueWebApi/obj/Release/Package/PackageTmp/Web.config
index 48bcd0b..15fb914 100644
--- a/VueWebApi/obj/Release/Package/PackageTmp/Web.config
+++ b/VueWebApi/obj/Release/Package/PackageTmp/Web.config
@@ -113,6 +113,18 @@
         <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-4.1.1.3" newVersion="4.0.0.0" />
       </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
+      </dependentAssembly>
     </assemblyBinding>
   </runtime>
   <system.codedom>
diff --git a/VueWebApi/obj/Release/Package/PackageTmp/bin/FastReport.Service.dll.config b/VueWebApi/obj/Release/Package/PackageTmp/bin/FastReport.Service.dll.config
new file mode 100644
index 0000000..518ccae
--- /dev/null
+++ b/VueWebApi/obj/Release/Package/PackageTmp/bin/FastReport.Service.dll.config
@@ -0,0 +1,72 @@
+锘�<?xml version="1.0"?>
+<configuration>
+  <appSettings>
+    <!-- path to folder with reports -->
+    <add key="FastReport.ReportsPath" value="C:\Program files\FastReports\FastReport.Net\Demos\WCF" />
+    <!-- name of connection string for reports -->
+    <add key="FastReport.ConnectionStringName" value="FastReportDemo" />
+    <!-- Comma-separated list of available formats PDF,DOCX,XLSX,PPTX,RTF,ODS,ODT,MHT,CSV,DBF,XML,TXT,FPX. 
+    You can delete any or change order in this list. -->
+    <add key="FastReport.Gear" value="PDF,DOCX,XLSX,PPTX,RTF,ODS,ODT,MHT,CSV,DBF,XML,TXT,FPX" />
+  </appSettings>
+  <connectionStrings>
+     <!-- you need change path to database to your own -->
+     <add name="FastReportDemo" connectionString="XsdFile=;XmlFile=C:\MyProjects\fr.net\Demos\Reports\nwind.xml"/>
+  </connectionStrings>
+  <system.web>
+    <compilation debug="true" />
+    <membership defaultProvider="ClientAuthenticationMembershipProvider">
+      <providers>
+        <add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
+      </providers>
+    </membership>
+    <roleManager defaultProvider="ClientRoleProvider" enabled="true">
+      <providers>
+        <add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
+      </providers>
+    </roleManager>
+  </system.web>
+  <!-- When deploying the service library project, the content of the config file must be added to the host's 
+  app.config file. System.Configuration does not support config files for libraries. -->
+  <system.serviceModel>
+    <services>
+      <service behaviorConfiguration="FastReportServiceBehavior" name="FastReport.Service.ReportService">
+        <endpoint address="" binding="wsHttpBinding" contract="FastReport.Service.IFastReportService">
+          <identity>
+            <dns value="localhost" />
+          </identity>
+        </endpoint>
+        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
+        <host>
+          <baseAddresses>
+            <add baseAddress="http://localhost:8732/FastReportService/" />
+          </baseAddresses>
+        </host>
+      </service>
+    </services>
+    <behaviors>
+      <serviceBehaviors>
+        <behavior name="FastReportServiceBehavior">
+          <serviceMetadata httpGetEnabled="True" />
+          <serviceDebug includeExceptionDetailInFaults="True" />
+        </behavior>
+      </serviceBehaviors>
+    </behaviors>
+    <bindings>
+      <basicHttpBinding>
+        <binding messageEncoding="Mtom"
+          closeTimeout="00:02:00" openTimeout="00:02:00"
+          receiveTimeout="00:10:00" sendTimeout="00:02:00"
+          maxReceivedMessageSize="67108864" maxBufferSize="65536"
+          transferMode="Streamed">
+          <security mode="None">
+            <transport clientCredentialType="None" />
+          </security>
+        </binding>
+      </basicHttpBinding>
+    </bindings>
+  </system.serviceModel>
+  <startup>
+    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
+  </startup>
+</configuration>
\ No newline at end of file
diff --git a/VueWebApi/obj/Release/Package/PackageTmp/bin/VueWebApi.pdb b/VueWebApi/obj/Release/Package/PackageTmp/bin/VueWebApi.pdb
index 9096656..bc0aa6c 100644
--- a/VueWebApi/obj/Release/Package/PackageTmp/bin/VueWebApi.pdb
+++ b/VueWebApi/obj/Release/Package/PackageTmp/bin/VueWebApi.pdb
Binary files differ
diff --git a/VueWebApi/obj/Release/Package/PackageTmp/bin/VueWebApi.xml b/VueWebApi/obj/Release/Package/PackageTmp/bin/VueWebApi.xml
new file mode 100644
index 0000000..be885d9
--- /dev/null
+++ b/VueWebApi/obj/Release/Package/PackageTmp/bin/VueWebApi.xml
@@ -0,0 +1,2469 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>VueWebApi</name>
+    </assembly>
+    <members>
+        <member name="M:VueWebApi.SwaggerConfig.GetXmlCommentsPath(System.String)">
+            <summary>
+            XML璺緞鎷兼帴
+            </summary>
+            <param name="name"></param>
+            <returns></returns>
+        </member>
+        <member name="T:VueWebApi.App_Start.SwaggerControllerDescProvider">
+            <summary>
+            swagger鏄剧ず鎺у埗鍣ㄧ殑鎻忚堪
+            </summary>
+        </member>
+        <member name="M:VueWebApi.App_Start.SwaggerControllerDescProvider.#ctor(Swashbuckle.Swagger.ISwaggerProvider,System.String)">
+            <summary>
+            
+            </summary>
+            <param name="swaggerProvider"></param>
+            <param name="xml">xml鏂囨。璺緞</param>
+        </member>
+        <member name="M:VueWebApi.App_Start.SwaggerControllerDescProvider.GetControllerDesc">
+            <summary>
+            浠嶢PI鏂囨。涓鍙栨帶鍒跺櫒鎻忚堪
+            </summary>
+            <returns>鎵�鏈夋帶鍒跺櫒鎻忚堪</returns>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.ApiDescriptionExtensions.GetFriendlyId(System.Web.Http.Description.ApiDescription)">
+            <summary>
+            Generates an URI-friendly ID for the <see cref="T:System.Web.Http.Description.ApiDescription"/>. E.g. "Get-Values-id_name" instead of "GetValues/{id}?name={name}"
+            </summary>
+            <param name="description">The <see cref="T:System.Web.Http.Description.ApiDescription"/>.</param>
+            <returns>The ID as a string.</returns>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.HelpPageConfig">
+            <summary>
+            Use this class to customize the Help Page.
+            For example you can set a custom <see cref="T:System.Web.Http.Description.IDocumentationProvider"/> to supply the documentation
+            or you can provide the samples for the requests/responses.
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.Controllers.HelpController">
+            <summary>
+            The controller that will handle requests for the help page.
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetDocumentationProvider(System.Web.Http.HttpConfiguration,System.Web.Http.Description.IDocumentationProvider)">
+            <summary>
+            Sets the documentation provider for help page.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="documentationProvider">The documentation provider.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetSampleObjects(System.Web.Http.HttpConfiguration,System.Collections.Generic.IDictionary{System.Type,System.Object})">
+            <summary>
+            Sets the objects that will be used by the formatters to produce sample requests/responses.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="sampleObjects">The sample objects.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetSampleRequest(System.Web.Http.HttpConfiguration,System.Object,System.Net.Http.Headers.MediaTypeHeaderValue,System.String,System.String)">
+            <summary>
+            Sets the sample request directly for the specified media type and action.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="sample">The sample request.</param>
+            <param name="mediaType">The media type.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetSampleRequest(System.Web.Http.HttpConfiguration,System.Object,System.Net.Http.Headers.MediaTypeHeaderValue,System.String,System.String,System.String[])">
+            <summary>
+            Sets the sample request directly for the specified media type and action with parameters.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="sample">The sample request.</param>
+            <param name="mediaType">The media type.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+            <param name="parameterNames">The parameter names.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetSampleResponse(System.Web.Http.HttpConfiguration,System.Object,System.Net.Http.Headers.MediaTypeHeaderValue,System.String,System.String)">
+            <summary>
+            Sets the sample request directly for the specified media type of the action.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="sample">The sample response.</param>
+            <param name="mediaType">The media type.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetSampleResponse(System.Web.Http.HttpConfiguration,System.Object,System.Net.Http.Headers.MediaTypeHeaderValue,System.String,System.String,System.String[])">
+            <summary>
+            Sets the sample response directly for the specified media type of the action with specific parameters.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="sample">The sample response.</param>
+            <param name="mediaType">The media type.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+            <param name="parameterNames">The parameter names.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetSampleForMediaType(System.Web.Http.HttpConfiguration,System.Object,System.Net.Http.Headers.MediaTypeHeaderValue)">
+            <summary>
+            Sets the sample directly for all actions with the specified media type.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="sample">The sample.</param>
+            <param name="mediaType">The media type.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetSampleForType(System.Web.Http.HttpConfiguration,System.Object,System.Net.Http.Headers.MediaTypeHeaderValue,System.Type)">
+            <summary>
+            Sets the sample directly for all actions with the specified type and media type.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="sample">The sample.</param>
+            <param name="mediaType">The media type.</param>
+            <param name="type">The parameter type or return type of an action.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetActualRequestType(System.Web.Http.HttpConfiguration,System.Type,System.String,System.String)">
+            <summary>
+            Specifies the actual type of <see cref="T:System.Net.Http.ObjectContent`1"/> passed to the <see cref="T:System.Net.Http.HttpRequestMessage"/> in an action.
+            The help page will use this information to produce more accurate request samples.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="type">The type.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetActualRequestType(System.Web.Http.HttpConfiguration,System.Type,System.String,System.String,System.String[])">
+            <summary>
+            Specifies the actual type of <see cref="T:System.Net.Http.ObjectContent`1"/> passed to the <see cref="T:System.Net.Http.HttpRequestMessage"/> in an action.
+            The help page will use this information to produce more accurate request samples.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="type">The type.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+            <param name="parameterNames">The parameter names.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetActualResponseType(System.Web.Http.HttpConfiguration,System.Type,System.String,System.String)">
+            <summary>
+            Specifies the actual type of <see cref="T:System.Net.Http.ObjectContent`1"/> returned as part of the <see cref="T:System.Net.Http.HttpRequestMessage"/> in an action.
+            The help page will use this information to produce more accurate response samples.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="type">The type.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetActualResponseType(System.Web.Http.HttpConfiguration,System.Type,System.String,System.String,System.String[])">
+            <summary>
+            Specifies the actual type of <see cref="T:System.Net.Http.ObjectContent`1"/> returned as part of the <see cref="T:System.Net.Http.HttpRequestMessage"/> in an action.
+            The help page will use this information to produce more accurate response samples.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="type">The type.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+            <param name="parameterNames">The parameter names.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.GetHelpPageSampleGenerator(System.Web.Http.HttpConfiguration)">
+            <summary>
+            Gets the help page sample generator.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <returns>The help page sample generator.</returns>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.SetHelpPageSampleGenerator(System.Web.Http.HttpConfiguration,VueWebApi.Areas.HelpPage.HelpPageSampleGenerator)">
+            <summary>
+            Sets the help page sample generator.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="sampleGenerator">The help page sample generator.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.GetModelDescriptionGenerator(System.Web.Http.HttpConfiguration)">
+            <summary>
+            Gets the model description generator.
+            </summary>
+            <param name="config">The configuration.</param>
+            <returns>The <see cref="T:VueWebApi.Areas.HelpPage.ModelDescriptions.ModelDescriptionGenerator"/></returns>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageConfigurationExtensions.GetHelpPageApiModel(System.Web.Http.HttpConfiguration,System.String)">
+            <summary>
+            Gets the model that represents an API displayed on the help page. The model is initialized on the first call and cached for subsequent calls.
+            </summary>
+            <param name="config">The <see cref="T:System.Web.Http.HttpConfiguration"/>.</param>
+            <param name="apiDescriptionId">The <see cref="T:System.Web.Http.Description.ApiDescription"/> ID.</param>
+            <returns>
+            An <see cref="T:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel"/>
+            </returns>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.ModelDescriptions.ModelDescription">
+            <summary>
+            Describes a type model.
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.ModelDescriptions.ModelDescriptionGenerator">
+            <summary>
+            Generates model descriptions for given types.
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.ModelDescriptions.ModelNameAttribute">
+            <summary>
+            Use this attribute to change the name of the <see cref="T:VueWebApi.Areas.HelpPage.ModelDescriptions.ModelDescription"/> generated for a type.
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel">
+            <summary>
+            The model that represents an API displayed on the help page.
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel"/> class.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.ApiDescription">
+            <summary>
+            Gets or sets the <see cref="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.ApiDescription"/> that describes the API.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.UriParameters">
+            <summary>
+            Gets or sets the <see cref="T:VueWebApi.Areas.HelpPage.ModelDescriptions.ParameterDescription"/> collection that describes the URI parameters for the API.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.RequestDocumentation">
+            <summary>
+            Gets or sets the documentation for the request.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.RequestModelDescription">
+            <summary>
+            Gets or sets the <see cref="T:VueWebApi.Areas.HelpPage.ModelDescriptions.ModelDescription"/> that describes the request body.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.RequestBodyParameters">
+            <summary>
+            Gets the request body parameter descriptions.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.ResourceDescription">
+            <summary>
+            Gets or sets the <see cref="T:VueWebApi.Areas.HelpPage.ModelDescriptions.ModelDescription"/> that describes the resource.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.ResourceProperties">
+            <summary>
+            Gets the resource property descriptions.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.SampleRequests">
+            <summary>
+            Gets the sample requests associated with the API.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.SampleResponses">
+            <summary>
+            Gets the sample responses associated with the API.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.Models.HelpPageApiModel.ErrorMessages">
+            <summary>
+            Gets the error messages associated with this model.
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator">
+            <summary>
+            This class will generate the samples for the help page.
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator"/> class.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.ActualHttpMessageTypes">
+            <summary>
+            Gets CLR types that are used as the content of <see cref="T:System.Net.Http.HttpRequestMessage"/> or <see cref="T:System.Net.Http.HttpResponseMessage"/>.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.ActionSamples">
+            <summary>
+            Gets the objects that are used directly as samples for certain actions.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.SampleObjects">
+            <summary>
+            Gets the objects that are serialized as samples by the supported formatters.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.SampleObjectFactories">
+            <summary>
+            Gets factories for the objects that the supported formatters will serialize as samples. Processed in order,
+            stopping when the factory successfully returns a non-<see langref="null"/> object.
+            </summary>
+            <remarks>
+            Collection includes just <see cref="M:VueWebApi.Areas.HelpPage.ObjectGenerator.GenerateObject(System.Type)"/> initially. Use
+            <code>SampleObjectFactories.Insert(0, func)</code> to provide an override and
+            <code>SampleObjectFactories.Add(func)</code> to provide a fallback.</remarks>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.GetSampleRequests(System.Web.Http.Description.ApiDescription)">
+            <summary>
+            Gets the request body samples for a given <see cref="T:System.Web.Http.Description.ApiDescription"/>.
+            </summary>
+            <param name="api">The <see cref="T:System.Web.Http.Description.ApiDescription"/>.</param>
+            <returns>The samples keyed by media type.</returns>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.GetSampleResponses(System.Web.Http.Description.ApiDescription)">
+            <summary>
+            Gets the response body samples for a given <see cref="T:System.Web.Http.Description.ApiDescription"/>.
+            </summary>
+            <param name="api">The <see cref="T:System.Web.Http.Description.ApiDescription"/>.</param>
+            <returns>The samples keyed by media type.</returns>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.GetSample(System.Web.Http.Description.ApiDescription,VueWebApi.Areas.HelpPage.SampleDirection)">
+            <summary>
+            Gets the request or response body samples.
+            </summary>
+            <param name="api">The <see cref="T:System.Web.Http.Description.ApiDescription"/>.</param>
+            <param name="sampleDirection">The value indicating whether the sample is for a request or for a response.</param>
+            <returns>The samples keyed by media type.</returns>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.GetActionSample(System.String,System.String,System.Collections.Generic.IEnumerable{System.String},System.Type,System.Net.Http.Formatting.MediaTypeFormatter,System.Net.Http.Headers.MediaTypeHeaderValue,VueWebApi.Areas.HelpPage.SampleDirection)">
+            <summary>
+            Search for samples that are provided directly through <see cref="P:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.ActionSamples"/>.
+            </summary>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+            <param name="parameterNames">The parameter names.</param>
+            <param name="type">The CLR type.</param>
+            <param name="formatter">The formatter.</param>
+            <param name="mediaType">The media type.</param>
+            <param name="sampleDirection">The value indicating whether the sample is for a request or for a response.</param>
+            <returns>The sample that matches the parameters.</returns>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.GetSampleObject(System.Type)">
+            <summary>
+            Gets the sample object that will be serialized by the formatters. 
+            First, it will look at the <see cref="P:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.SampleObjects"/>. If no sample object is found, it will try to create
+            one using <see cref="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.DefaultSampleObjectFactory(VueWebApi.Areas.HelpPage.HelpPageSampleGenerator,System.Type)"/> (which wraps an <see cref="T:VueWebApi.Areas.HelpPage.ObjectGenerator"/>) and other
+            factories in <see cref="P:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.SampleObjectFactories"/>.
+            </summary>
+            <param name="type">The type.</param>
+            <returns>The sample object.</returns>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.ResolveHttpRequestMessageType(System.Web.Http.Description.ApiDescription)">
+            <summary>
+            Resolves the actual type of <see cref="T:System.Net.Http.ObjectContent`1"/> passed to the <see cref="T:System.Net.Http.HttpRequestMessage"/> in an action.
+            </summary>
+            <param name="api">The <see cref="T:System.Web.Http.Description.ApiDescription"/>.</param>
+            <returns>The type.</returns>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.ResolveType(System.Web.Http.Description.ApiDescription,System.String,System.String,System.Collections.Generic.IEnumerable{System.String},VueWebApi.Areas.HelpPage.SampleDirection,System.Collections.ObjectModel.Collection{System.Net.Http.Formatting.MediaTypeFormatter}@)">
+            <summary>
+            Resolves the type of the action parameter or return value when <see cref="T:System.Net.Http.HttpRequestMessage"/> or <see cref="T:System.Net.Http.HttpResponseMessage"/> is used.
+            </summary>
+            <param name="api">The <see cref="T:System.Web.Http.Description.ApiDescription"/>.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+            <param name="parameterNames">The parameter names.</param>
+            <param name="sampleDirection">The value indicating whether the sample is for a request or a response.</param>
+            <param name="formatters">The formatters.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleGenerator.WriteSampleObjectUsingFormatter(System.Net.Http.Formatting.MediaTypeFormatter,System.Object,System.Type,System.Net.Http.Headers.MediaTypeHeaderValue)">
+            <summary>
+            Writes the sample object using formatter.
+            </summary>
+            <param name="formatter">The formatter.</param>
+            <param name="value">The value.</param>
+            <param name="type">The type.</param>
+            <param name="mediaType">Type of the media.</param>
+            <returns></returns>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.HelpPageSampleKey">
+            <summary>
+            This is used to identify the place where the sample should be applied.
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleKey.#ctor(System.Net.Http.Headers.MediaTypeHeaderValue)">
+            <summary>
+            Creates a new <see cref="T:VueWebApi.Areas.HelpPage.HelpPageSampleKey"/> based on media type.
+            </summary>
+            <param name="mediaType">The media type.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleKey.#ctor(System.Net.Http.Headers.MediaTypeHeaderValue,System.Type)">
+            <summary>
+            Creates a new <see cref="T:VueWebApi.Areas.HelpPage.HelpPageSampleKey"/> based on media type and CLR type.
+            </summary>
+            <param name="mediaType">The media type.</param>
+            <param name="type">The CLR type.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleKey.#ctor(VueWebApi.Areas.HelpPage.SampleDirection,System.String,System.String,System.Collections.Generic.IEnumerable{System.String})">
+            <summary>
+            Creates a new <see cref="T:VueWebApi.Areas.HelpPage.HelpPageSampleKey"/> based on <see cref="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.SampleDirection"/>, controller name, action name and parameter names.
+            </summary>
+            <param name="sampleDirection">The <see cref="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.SampleDirection"/>.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+            <param name="parameterNames">The parameter names.</param>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.HelpPageSampleKey.#ctor(System.Net.Http.Headers.MediaTypeHeaderValue,VueWebApi.Areas.HelpPage.SampleDirection,System.String,System.String,System.Collections.Generic.IEnumerable{System.String})">
+            <summary>
+            Creates a new <see cref="T:VueWebApi.Areas.HelpPage.HelpPageSampleKey"/> based on media type, <see cref="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.SampleDirection"/>, controller name, action name and parameter names.
+            </summary>
+            <param name="mediaType">The media type.</param>
+            <param name="sampleDirection">The <see cref="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.SampleDirection"/>.</param>
+            <param name="controllerName">Name of the controller.</param>
+            <param name="actionName">Name of the action.</param>
+            <param name="parameterNames">The parameter names.</param>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.ControllerName">
+            <summary>
+            Gets the name of the controller.
+            </summary>
+            <value>
+            The name of the controller.
+            </value>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.ActionName">
+            <summary>
+            Gets the name of the action.
+            </summary>
+            <value>
+            The name of the action.
+            </value>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.MediaType">
+            <summary>
+            Gets the media type.
+            </summary>
+            <value>
+            The media type.
+            </value>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.ParameterNames">
+            <summary>
+            Gets the parameter names.
+            </summary>
+        </member>
+        <member name="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.SampleDirection">
+            <summary>
+            Gets the <see cref="P:VueWebApi.Areas.HelpPage.HelpPageSampleKey.SampleDirection"/>.
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.ImageSample">
+            <summary>
+            This represents an image sample on the help page. There's a display template named ImageSample associated with this class.
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.ImageSample.#ctor(System.String)">
+            <summary>
+            Initializes a new instance of the <see cref="T:VueWebApi.Areas.HelpPage.ImageSample"/> class.
+            </summary>
+            <param name="src">The URL of an image.</param>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.InvalidSample">
+            <summary>
+            This represents an invalid sample on the help page. There's a display template named InvalidSample associated with this class.
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.ObjectGenerator">
+            <summary>
+            This class will create an object of a given type and populate it with sample data.
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.ObjectGenerator.GenerateObject(System.Type)">
+            <summary>
+            Generates an object for a given type. The type needs to be public, have a public default constructor and settable public properties/fields. Currently it supports the following types:
+            Simple types: <see cref="T:System.Int32"/>, <see cref="T:System.String"/>, <see cref="T:System.Enum"/>, <see cref="T:System.DateTime"/>, <see cref="T:System.Uri"/>, etc.
+            Complex types: POCO types.
+            Nullables: <see cref="T:System.Nullable`1"/>.
+            Arrays: arrays of simple types or complex types.
+            Key value pairs: <see cref="T:System.Collections.Generic.KeyValuePair`2"/>
+            Tuples: <see cref="T:System.Tuple`1"/>, <see cref="T:System.Tuple`2"/>, etc
+            Dictionaries: <see cref="T:System.Collections.Generic.IDictionary`2"/> or anything deriving from <see cref="T:System.Collections.Generic.IDictionary`2"/>.
+            Collections: <see cref="T:System.Collections.Generic.IList`1"/>, <see cref="T:System.Collections.Generic.IEnumerable`1"/>, <see cref="T:System.Collections.Generic.ICollection`1"/>, <see cref="T:System.Collections.IList"/>, <see cref="T:System.Collections.IEnumerable"/>, <see cref="T:System.Collections.ICollection"/> or anything deriving from <see cref="T:System.Collections.Generic.ICollection`1"/> or <see cref="T:System.Collections.IList"/>.
+            Queryables: <see cref="T:System.Linq.IQueryable"/>, <see cref="T:System.Linq.IQueryable`1"/>.
+            </summary>
+            <param name="type">The type.</param>
+            <returns>An object of the given type.</returns>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.SampleDirection">
+            <summary>
+            Indicates whether the sample is used for request or response
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.TextSample">
+            <summary>
+            This represents a preformatted text sample on the help page. There's a display template named TextSample associated with this class.
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Areas.HelpPage.XmlDocumentationProvider">
+            <summary>
+            A custom <see cref="T:System.Web.Http.Description.IDocumentationProvider"/> that reads the API documentation from an XML documentation file.
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Areas.HelpPage.XmlDocumentationProvider.#ctor(System.String)">
+            <summary>
+            Initializes a new instance of the <see cref="T:VueWebApi.Areas.HelpPage.XmlDocumentationProvider"/> class.
+            </summary>
+            <param name="documentPath">The physical path to XML document.</param>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.OrganizationSearch(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            缁勭粐鏋舵瀯鏌ヨ
+            </summary>
+            <param name="OrgCode">缁勭粐鏋舵瀯浠g爜</param>
+            <param name="OrgName">缁勭粐鏋舵瀯鍚嶇О</param>
+            <param name="OrgType">缁勭粐绫诲瀷</param>
+            <param name="UserName">鍒涘缓浜哄憳</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.PrentOrganization(System.String)">
+            <summary>
+            缁勭粐鏋舵瀯鏌ユ壘涓婄骇鍗曚綅
+            </summary>
+            <param name="orgcode">缁勭粐缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.AddUpdateOrganization(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            缁勭粐鏋舵瀯鏂板缂栬緫
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.DeleteOrganization(System.Int32)">
+            <summary>
+            缁勭粐鏋舵瀯鍒犻櫎
+            </summary>
+            <param name="orgid">缁勭粐id</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.UserSearch(System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            鐢ㄦ埛娓呭崟鏌ヨ
+            </summary>
+            <param name="UserCode">鐢ㄦ埛缂栫爜</param>
+            <param name="UserName">鐢ㄦ埛鍚嶇О</param>
+            <param name="StuOrg">鎵�灞炵粍缁�</param>
+            <param name="wagetype">宸ヨ祫绫诲瀷</param>
+            <param name="Enable">鍦ㄨ亴鐘舵��</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.UserOrganization">
+            <summary>
+            鐢ㄦ埛鎵�灞炵粍缁囨煡璇�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.UserGroup">
+            <summary>
+            鐢ㄦ埛鎵�灞炵彮缁�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.AddUpdateUser(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            鐢ㄦ埛娓呭崟鏂板缂栬緫
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.DeleteUser(System.Int32)">
+            <summary>
+            鐢ㄦ埛鍒犻櫎
+            </summary>
+            <param name="Userid">鐢ㄦ埛id</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.UserAssociationRole(System.String)">
+            <summary>
+            鐢ㄦ埛娓呭崟鍏宠仈瑙掕壊鏌ヨ
+            </summary>
+            <param name="usercode">鐢ㄦ埛缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.SaveUserAssoctRole(System.String,System.Collections.Generic.List{VueWebApi.Models.RoleUserSubmit})">
+            <summary>
+            鐢ㄦ埛娓呭崟鍏宠仈瑙掕壊淇濆瓨
+            </summary>
+            <param name="usercode">鐢ㄦ埛缂栫爜</param>
+            <param name="json">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.ImportUserExcel(System.Web.HttpPostedFileBase,System.String)">
+            <summary>
+            鐢ㄦ埛娓呭崟瀵煎叆
+            </summary>
+            <param name="files">涓婁紶鐢ㄦ埛娓呭崟瀵煎叆鏂囦欢</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.UserGroupSearch(System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            鐢ㄦ埛缁勫垪琛ㄦ煡璇�
+            </summary>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.UserGroupAdd(System.Collections.Generic.List{VueWebApi.Models.StepDefect})">
+            <summary>
+            鐢ㄦ埛缁勬柊澧�
+            </summary>
+            <param name="json">鐢ㄦ埛缁勬柊澧炴彁浜ゆ暟鎹�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.UserGroupDelete(System.String)">
+            <summary>
+            鐢ㄦ埛缁勫垹闄�
+            </summary>
+            <param name="UserGrupCode">鐢ㄦ埛缁勭紪鐮�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.RoleTypeSearch(System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            瑙掕壊绫诲瀷鍒楄〃鏌ヨ
+            </summary>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.RoleTypeAdd(System.Collections.Generic.List{VueWebApi.Models.ObjectData})">
+            <summary>
+            瑙掕壊绫诲瀷鏂板
+            </summary>
+            <param name="json">瑙掕壊绫诲瀷鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.RoleTypeDelete(System.String)">
+            <summary>
+            瑙掕壊绫诲瀷鍒犻櫎
+            </summary>
+            <param name="RoleTypeCode">瑙掕壊绫诲瀷缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.RoleTypeSelect">
+            <summary>
+            瑙掕壊绫诲瀷涓嬫媺鎺ュ彛
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.RoleSearch(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            瑙掕壊娓呭崟鏌ヨ
+            </summary>
+            <param name="RoleCode">瑙掕壊缂栫爜</param>
+            <param name="RoleName">瑙掕壊鍚嶇О</param>
+            <param name="RoleTypeCode">瑙掕壊绫诲瀷缂栫爜</param>
+            <param name="CreateUser">鍒涘缓浜哄憳</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.AddUpdateRole(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            瑙掕壊娓呭崟鏂板缂栬緫
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.DeleteRole(System.String)">
+            <summary>
+            瑙掕壊娓呭崟鍒犻櫎
+            </summary>
+            <param name="RoleCode">瑙掕壊缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.RoleAssociationUser(System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            瑙掕壊娓呭崟鍏宠仈鐢ㄦ埛鏌ヨ
+            </summary>
+            <param name="rolecode">瑙掕壊缂栫爜</param>
+            <param name="usercode">鐢ㄦ埛缂栫爜</param>
+            <param name="username">鐢ㄦ埛鍚嶇О</param>
+            <param name="orgcode">鎵�灞炵粍缁囩紪鐮�</param>
+            <param name="isrole">鍏宠仈瑙掕壊</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.RoleAssociationUserTwo(System.String)">
+            <summary>
+            瑙掕壊娓呭崟鍏宠仈鐢ㄦ埛鏌ヨ1
+            </summary>
+            <param name="rolecode">瑙掕壊缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.SaveRoleAssoctUser(System.String,System.Collections.Generic.List{VueWebApi.Models.ObjectData})">
+            <summary>
+            瑙掕壊娓呭崟鍏宠仈鐢ㄦ埛淇濆瓨
+            </summary>
+            <param name="rolecode">瑙掕壊缂栫爜</param>
+            <param name="json">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.RoleAssociationRight(System.String,System.String)">
+            <summary>
+            瑙掕壊娓呭崟鍏宠仈鍔熻兘鏌ヨ
+            </summary>
+            <param name="rolecode">瑙掕壊缂栫爜</param>
+            <param name="type">鎿嶄綔绔垎绫荤紪鐮�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.SaveUserAssoctRight(System.String,System.String,System.Collections.Generic.List{VueWebApi.Models.TreeDM})">
+            <summary>
+            瑙掕壊娓呭崟鍏宠仈鍔熻兘淇濆瓨
+            </summary>
+            <param name="rolecode">瑙掕壊缂栫爜</param>
+            <param name="usercode">鐧诲綍鐢ㄦ埛缂栫爜</param>
+            <param name="json">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.CurrentUnitSearch(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            寰�鏉ュ崟浣嶆煡璇�
+            </summary>
+            <param name="CuntUnitCode">寰�鏉ュ崟浣嶇紪鐮�</param>
+            <param name="CuntUnitName">寰�鏉ュ崟浣嶅悕绉�</param>
+            <param name="UnitAttr">鍗曚綅灞炴��</param>
+            <param name="CreateUser">鍒涘缓浜哄憳</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.AddUpdateCurrentUnit(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            寰�鏉ュ崟浣嶆柊澧炵紪杈�
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.BasicSettingController.DeleteCurrentUnit(System.String)">
+            <summary>
+            寰�鏉ュ崟浣嶅垹闄�
+            </summary>
+            <param name="unitcode">寰�鏉ュ崟浣嶇紪鐮�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.DeviceTypeSearch(System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            璁惧绫诲瀷鏌ヨ
+            </summary>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.AddUpdateDeviceType(System.Collections.Generic.List{VueWebApi.Models.ObjectDataCont})">
+            <summary>
+            璁惧绫诲瀷鏂板
+            </summary>
+            <param name="json">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.DeleteDeviceType(System.String)">
+            <summary>
+            璁惧绫诲瀷鍒犻櫎
+            </summary>
+            <param name="devicetypecode">璁惧绫诲瀷缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.DeviceTypeSelect">
+            <summary>
+            璁惧绫诲瀷涓嬫媺妗嗘帴鍙�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.DeviceGroupSearch(System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            璁惧缁勬煡璇�
+            </summary>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.AddUpdateDeviceGroup(System.Collections.Generic.List{VueWebApi.Models.ObjectDataCont})">
+            <summary>
+            璁惧缁勬柊澧�
+            </summary>
+            <param name="json">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.DeleteDeviceGroup(System.String)">
+            <summary>
+            璁惧缁勫垹闄�
+            </summary>
+            <param name="devicegroupcode">璁惧缁勭紪鐮�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.DeviceTypeSelectGroup(System.String)">
+            <summary>
+            璁惧绫诲瀷鏌ユ壘璁惧缁�
+            </summary>
+            <param name="eqptypecode">璁惧绫诲瀷缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.WorkShopSelect">
+            <summary>
+            鎵�灞炶溅闂翠笅鎷夋帴鍙�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.WorkShopSelectLine(System.String)">
+            <summary>
+            鎵�灞炶溅闂存煡鎵炬墍灞炰骇绾挎帴鍙�
+            </summary>
+            <param name="workshopcode">杞﹂棿缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.DeviceMangerSearch(System.String,System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            璁惧娓呭崟鏌ヨ
+            </summary>
+            <param name="DeviceCode">璁惧缂栫爜</param>
+            <param name="DeviceName">璁惧鍚嶇О</param>
+            <param name="Status">浣跨敤鐘舵��</param>
+            <param name="WorkShop">鎵�灞炶溅闂�</param>
+            <param name="DeviceType">璁惧绫诲瀷</param>
+            <param name="DeviceGroup">璁惧缁�</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.AddUpdateDeviceManger(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            璁惧娓呭崟鏂板缂栬緫
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.DeviceManagerController.DeleteDeviceManger(System.String)">
+            <summary>
+            璁惧娓呭崟鍒犻櫎
+            </summary>
+            <param name="devicecode">璁惧缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ErpSyncMesController.SeaveSearchUnit">
+            <summary>
+            鍒堕�犳ā鍨嬶細鍗曚綅鍚屾
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ErpSyncMesController.SeaveSearchInventoryClass">
+            <summary>
+            鍒堕�犳ā鍨嬶細瀛樿揣鍒嗙被鍚屾
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ErpSyncMesController.SeaveSearchInventory">
+            <summary>
+            鍒堕�犳ā鍨嬶細瀛樿揣妗f鍚屾
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ErpSyncMesController.SeaveSearchWhareHouseLocation">
+            <summary>
+            鐗╂枡绠$悊锛氫粨搴撳簱浣嶅悓姝�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ErpSyncMesController.SeaveSearchPartner">
+            <summary>
+            鍩虹璁剧疆:寰�鏉ュ崟浣嶅悓姝�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ErpSyncMesController.SeaveSearchErpOrder">
+            <summary>
+            鐢熶骇绠$悊锛氱敓浜ц鍗曞悓姝�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.GridReportController.MesOrderPrintSearch(System.String,System.String)">
+            <summary>
+            MES宸ュ崟鎵撳嵃
+            </summary>
+            <param name="username">鐧诲綍鐢ㄦ埛</param>
+            <param name="mesordercode">宸ュ崟缂栧彿</param>
+        </member>
+        <member name="M:VueWebApi.Controllers.GridReportController.MesOrderPrintSearch1(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            MES宸ュ崟鎵撳嵃1
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ImportExcelController.DownLoadExcel(System.String)">
+            <summary>
+            Excel瀵煎叆妯℃澘涓嬭浇
+            </summary>
+            <param name="FileCode">鏂囦欢缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelModelCheck">
+            <summary>
+            Excel瀵煎叆鏂囦欢涓婁紶銆佹ā鏉块獙璇併�佹暟鎹噺銆侀獙璇�
+            </summary>
+            <param name="FileCode">鏂囦欢缂栫爜</param>
+            <param name="files">涓婁紶鏂囦欢</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheckUpload(System.Web.HttpPostedFile,System.String)">
+            <summary>
+            Excel瀵煎叆妯℃澘涓婁紶
+            </summary>
+            <param name="files">涓婁紶鏂囦欢</param>
+            <param name="FileCode">鏂囦欢缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheck(System.Web.HttpPostedFile,System.String)">
+            <summary>
+            Excel瀵煎叆妯℃澘楠岃瘉
+            </summary>
+            <param name="files">涓婁紶鏂囦欢</param>
+            <param name="FileCode">鏂囦欢缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheckCount(System.Web.HttpPostedFile,System.String)">
+            <summary>
+            Excel瀵煎叆妯℃澘鏁版嵁閲忛獙璇�
+            </summary>
+            <param name="files">涓婁紶鏂囦欢</param>
+            <param name="FileCode">鏂囦欢缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelCheckData(System.String,System.String)">
+            <summary>
+            Excel瀵煎叆鏁版嵁楠岃瘉
+            </summary>
+            <param name="FileCode">鏂囦欢缂栫爜</param>
+            <param name="FileName">鏂囦欢鍚嶇О</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ImportExcelController.ExcelImportSubmit(System.String,System.String)">
+            <summary>
+            Excel瀵煎叆鏁版嵁
+            </summary>
+            <param name="FileCode">鏂囦欢缂栫爜</param>
+            <param name="FileName">鏂囦欢鍚嶇О</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.LoginController.LoginSave(System.String,System.String)">
+            <summary>
+            鐢ㄦ埛鐧诲綍
+            </summary>
+            <param name="username">鐢ㄦ埛缂栫爜</param>
+            <param name="password">瀵嗙爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.LoginController.LoginMenu">
+            <summary>
+            鏌ヨ鍔熻兘鑿滃崟
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.LoginController.UpdateUserPassword(System.String,System.String,System.String,System.String)">
+            <summary>
+            淇敼瀵嗙爜
+            </summary>
+            <param name="usercode">鐢ㄦ埛缂栫爜</param>
+            <param name="username">鐢ㄦ埛鍚嶇О</param>
+            <param name="password">瀵嗙爜</param>
+            <param name="newpassword">鏂板瘑鐮�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.LoginController.LoginOut(System.Int32,System.String,System.String,System.String)">
+            <summary>
+            鐧诲嚭
+            </summary>
+            <param name="userid">鐢ㄦ埛id</param>
+            <param name="usercode">鐢ㄦ埛缂栫爜</param>
+            <param name="username">鐢ㄦ埛鍚�</param>
+            <param name="usertype">鎿嶄綔绔疨C/APP</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.MaterialManagerController.WareHouseDefSearch(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            浠撳簱瀹氫箟鏌ヨ
+            </summary>
+            <param name="warehousecode">浠撳簱缂栫爜</param>
+            <param name="warehousename">浠撳簱鍚嶇О</param>
+            <param name="description">浠撳簱鎻忚堪</param>
+            <param name="createuser">鍒涘缓浜哄憳</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.MaterialManagerController.AddUpdateWareHouseDef(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            浠撳簱瀹氫箟鏂板缂栬緫
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.MaterialManagerController.DeleteWareHouseDef(System.String)">
+            <summary>
+            浠撳簱鍒犻櫎
+            </summary>
+            <param name="warehousecode">浠撳簱缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.MaterialManagerController.WareHouseSelect">
+            <summary>
+            鎵�灞炰粨搴撴帴鍙�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.MaterialManagerController.StorageDefSearch(System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            搴撲綅瀹氫箟鏌ヨ
+            </summary>
+            <param name="storagecode">搴撲綅缂栫爜</param>
+            <param name="storagename">搴撲綅鍚嶇О</param>
+            <param name="description">浠撳簱鎻忚堪</param>
+            <param name="createuser">鍒涘缓浜哄憳</param>
+            <param name="stockcode">鎵�灞炰粨搴撶紪鐮�</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.MaterialManagerController.AddUpdateStorageDef(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            搴撲綅瀹氫箟鏂板缂栬緫
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.MaterialManagerController.DeleteStorageDef(System.String)">
+            <summary>
+            搴撲綅鍒犻櫎
+            </summary>
+            <param name="storagecode">搴撲綅缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.ErpOrderSearch(System.String,System.String,System.String,System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            ERP璁㈠崟鏌ヨ
+            </summary>
+            <param name="erporderstus">璁㈠崟鐘舵�佺爜</param>
+            <param name="erpordercode">璁㈠崟缂栧彿</param>
+            <param name="partcode">浜у搧缂栫爜</param>
+            <param name="partname">浜у搧鍚嶇О</param>
+            <param name="partspec">浜у搧瑙勬牸</param>
+            <param name="paystartdate">棰勮寮�宸ユ椂闂�</param>
+            <param name="payenddate">棰勮瀹屽伐鏃堕棿</param>
+            <param name="creatuser">鍒涘缓浜哄憳</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MarkSaveErpOrder(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            ERP璁㈠崟涓嬭揪
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.ClosedErpOrder(System.String)">
+            <summary>
+            ERP璁㈠崟鍏抽棴
+            </summary>
+            <param name="erpordercode">璁㈠崟鍙�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderSearch(System.String,System.String,System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            MES宸ュ崟鏌ヨ
+            </summary>
+            <param name="mesorderstus">宸ュ崟鐘舵�佺爜</param>
+            <param name="mesordercode">宸ュ崟缂栧彿</param>
+            <param name="partcode">浜у搧缂栫爜</param>
+            <param name="partname">浜у搧鍚嶇О</param>
+            <param name="partspec">浜у搧瑙勬牸</param>
+            <param name="creatuser">鍒涘缓浜哄憳</param>
+            <param name="createdate">鍒涘缓鏃堕棿</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.PartSelectRoute(System.String)">
+            <summary>
+            浜у搧缂栫爜鏌ユ壘宸ヨ壓璺嚎涓嬫媺鎺ュ彛
+            </summary>
+            <param name="partcode">浜у搧缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.RouteSelectWkshop(System.String,System.String)">
+            <summary>
+            浜у搧+宸ヨ壓璺嚎鏌ユ壘杞﹂棿涓嬫媺鎺ュ彛
+            </summary>
+            <param name="partcode">浜у搧缂栫爜</param>
+            <param name="routecode">宸ヨ壓璺嚎缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.SelectRouteStep(System.String)">
+            <summary>
+            鏍规嵁閫夋嫨宸ヨ壓璺嚎鏌ョ湅宸ュ簭鎺ュ彛
+            </summary>
+            <param name="routecode">宸ヨ壓璺嚎缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.AddUpdateMesOrder(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            MES宸ュ崟鏂板銆佺紪杈戞彁浜�
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.DeleteMesOrder(System.String,System.String,System.String)">
+            <summary>
+            MES宸ュ崟鍒犻櫎
+            </summary>
+            <param name="wocode">宸ュ崟缂栧彿</param>
+            <param name="m_po">璁㈠崟缂栧彿</param>
+            <param name="orderqty">宸ュ崟鏁伴噺</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.ClosedMesOrder(System.String,System.String)">
+            <summary>
+            MES宸ュ崟鍏抽棴
+            </summary>
+            <param name="wocode">宸ュ崟缂栧彿</param>
+            <param name="m_po">璁㈠崟缂栧彿</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.SearchWorkStep(System.String)">
+            <summary>
+            MES宸ュ崟鏌ョ湅宸ュ簭浠诲姟
+            </summary>
+            <param name="wo_code">宸ュ崟缂栧彿</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderStepSearch(System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐鎵爜鑾峰彇宸ュ崟瀵瑰簲宸ュ簭浠诲姟(鑷埗)
+            </summary>
+            <param name="orderstepqrcode">鎵弿鐨勪簩缁寸爜淇℃伅</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯(榛樿鎸夌収璁″垝寮�宸ユ椂闂存搴�)</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderWxStepSearch(System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐鎵爜鑾峰彇宸ュ崟瀵瑰簲宸ュ簭浠诲姟(澶栧崗)
+            </summary>
+            <param name="orderstepqrcode">鎵弿鐨勪簩缁寸爜淇℃伅</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯(榛樿鎸夌収璁″垝寮�宸ユ椂闂存搴�)</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderStepStart(System.String,System.String,System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐锛氬紑宸�(寮�濮�/鎶ュ伐)/澶栧崗(鍙戞枡/鏀舵枡)鏃舵潯浠跺垽鏂強鏁版嵁杩斿洖鎺ュ彛
+            </summary>
+            <param name="OperType">鎿嶄綔绫诲瀷锛氳嚜鍒�(ZZ)/澶栧崗(WX)</param>
+            <param name="SelectType">鎿嶄綔绫诲瀷锛氬鍗忓彂鏂欐爣璇�(OUT)/澶栧崗鏀舵枡鏍囪瘑(IN)</param>
+            <param name="orderstepqrcode">鎵弿浜岀淮鐮佷俊鎭�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderStepStartSelectEqp(System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐锛氬紑宸ユ椂鑾峰彇璁惧涓嬫媺鍒楄〃
+            </summary>
+            <param name="orderstepqrcode">鎵弿浜岀淮鐮佷俊鎭�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderStepReportSelectUserGroup">
+            <summary>
+            鐢熶骇寮�鎶ュ伐锛氭姤宸ユ椂鑾峰彇鐢熶骇鐝粍涓嬫媺妗�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderGroupSelectUser(System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐锛氭牴鎹敓浜х彮缁勬煡鎵句汉鍛樺垪琛�
+            </summary>
+            <param name="usergroupcode">鐝粍缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderSelectUser(System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐锛氫汉鍛樹笅鎷夊垪琛�
+            </summary>
+            <param name="usercode">浜哄憳缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderStepSelectWX(System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐锛氬彂鏂�/鏀舵枡鏃惰幏鍙栧鍗忎笅鎷夊垪琛�
+            </summary>
+            <param name="orderstepqrcode">鎵弿浜岀淮鐮佷俊鎭�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderStepSelectCause(System.String)">
+            <summary>
+            鐢熶骇鎶ュ伐锛氭姤宸�/澶栧崗鏀舵枡 鑾峰彇涓嶈壇鍘熷洜涓嬫媺鍒楄〃
+            </summary>
+            <param name="orderstepqrcode">鎵弿浜岀淮鐮佷俊鎭�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.SavaMesOrderStepStart(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐,寮�宸ユ彁浜�
+            </summary>
+            <param name="obj">寮�宸ユ彁浜ゆ暟鎹�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.SavaMesOrderStepReport(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐,鎶ュ伐鎻愪氦
+            </summary>
+            <param name="obj">鎶ュ伐鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.SavaMesOrderStepOut(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐,鍙戞枡鎻愪氦
+            </summary>
+            <param name="obj">鍙戞枡鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.SavaMesOrderStepIn(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐,鏀舵枡鎻愪氦
+            </summary>
+            <param name="obj">鏀舵枡鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderStepCheckSearch(System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐,宸ュ簭妫�楠屾壂鐮佽幏鍙栦换鍔′俊鎭�
+            </summary>
+            <param name="orderstepqrcode">鎵弿浜岀淮鐮佷俊鎭�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderStepCheckSelect">
+            <summary>
+            鐢熶骇寮�鎶ュ伐,宸ュ簭妫�楠岃幏鍙栨楠屾爣鍑嗕笅鎷夋鏁版嵁
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.MesOrderStepCheckItemList(System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐,宸ュ簭妫�楠屾牴鎹楠屾爣鍑嗚幏鍙栨楠岄」鐩垪琛�
+            </summary>
+            <param name="checkstandcode">妫�楠屾爣鍑嗙紪鐮�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductionManagementController.SaveMesOrderStepCheckItem(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐,宸ュ簭妫�楠屾彁浜や繚瀛�
+            </summary>
+            <param name="obj">鎻愪氦淇℃伅</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.StockTypeSelect">
+            <summary>
+            瀛樿揣绫诲瀷鎺ュ彛
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.MaterialTypeSearch(System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            鐗╂枡绫诲瀷鏌ヨ
+            </summary>
+            <param name="materialtypecode">鐗╂枡绫诲瀷缂栫爜</param>
+            <param name="materialtypename">鐗╂枡绫诲瀷鍚嶇О</param>
+            <param name="stocktypecode">瀛樿揣绫诲瀷缂栫爜</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.AddUpdateMaterialType(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            鐗╂枡绫诲瀷鏂板缂栬緫
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.DeleteMaterialType(System.String)">
+            <summary>
+            鐗╂枡绫诲瀷鍒犻櫎
+            </summary>
+            <param name="materialtypecode">鐗╂枡绫诲瀷缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.UomSearch(System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            鍗曚綅鍒楄〃鏌ヨ
+            </summary>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.UomAdd(System.Collections.Generic.List{VueWebApi.Models.Uom})">
+            <summary>
+            鍗曚綅鏂板
+            </summary>
+            <param name="json">鍗曚綅鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.UomDelete(System.String)">
+            <summary>
+            鍗曚綅鍒犻櫎
+            </summary>
+            <param name="uomcode">鍗曚綅缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.StockTypeSelectMaterialType(System.String)">
+            <summary>
+            瀛樿揣绫诲瀷鏌ユ壘鐗╂枡绫诲瀷
+            </summary>
+            <param name="stocktypecode">瀛樿揣绫诲瀷缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.UomSelect">
+            <summary>
+            鍗曚綅涓嬫媺鍒楄〃鏌ヨ
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.InventoryFileSelect(System.String,System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            瀛樿揣妗f鏌ヨ
+            </summary>
+            <param name="partcode">鐗╂枡缂栫爜</param>
+            <param name="partname">鐗╂枡鍚嶇О</param>
+            <param name="partspec">鐗╂枡瑙勬牸</param>
+            <param name="stocktypecode">瀛樿揣绫诲瀷缂栫爜</param>
+            <param name="materialtypecode">鐗╂枡绫诲瀷缂栫爜</param>
+            <param name="storehousecode">鎵�灞炰粨搴撶紪鐮�</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.AddUpdateInventoryFile(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            瀛樿揣妗f鏂板缂栬緫
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.DeleteInventoryFile(System.String)">
+            <summary>
+            瀛樿揣妗f鍒犻櫎
+            </summary>
+            <param name="materialcode">鐗╂枡缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.InventoryFileAssociationRoute(System.String)">
+            <summary>
+            瀛樿揣妗f鍏宠仈宸ヨ壓璺嚎鏌ヨ
+            </summary>
+            <param name="partcode">鐗╂枡缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.SaveInventoryFile(System.String,System.Collections.Generic.List{VueWebApi.Models.ObjectData},System.String)">
+            <summary>
+            瀛樿揣妗f鍏宠仈宸ヨ壓璺嚎鎻愪氦
+            </summary>
+            <param name="partcode">鐗╂枡缂栫爜</param>
+            <param name="defaultroute_code">榛樿宸ヨ壓璺嚎缂栫爜</param>
+            <param name="json">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.StepSelect">
+            <summary>
+            宸ュ簭涓嬫媺鏌ヨ鎺ュ彛
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.RouteSearch(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            宸ヨ壓璺嚎鏌ヨ
+            </summary>
+            <param name="routecode">宸ヨ壓璺嚎缂栫爜</param>
+            <param name="routename">宸ヨ壓璺嚎鍚嶇О</param>
+            <param name="description">宸ヨ壓璺嚎鎻忚堪</param>
+            <param name="createuser">鍒涘缓浜哄憳</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.ViewRoute(System.String)">
+            <summary>
+            宸ヨ壓璺嚎棰勮
+            </summary>
+            <param name="routecode">宸ヨ壓璺嚎缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.AddUpdateRoute(System.String,VueWebApi.Models.RoutEdit,System.String)">
+            <summary>
+            宸ヨ壓璺嚎鏂板
+            </summary>
+            <param name="id">宸ヨ壓璺嚎id</param>
+            <param name="opertype">鎿嶄綔绫诲瀷(鏂板)</param>
+            <param name="json">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.DeleteRoute(System.String)">
+            <summary>
+            宸ヨ壓璺嚎鍒犻櫎
+            </summary>
+            <param name="routecode">宸ヨ壓璺嚎缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.StepSearch(System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            宸ュ簭鏌ヨ
+            </summary>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <param name="stepname">宸ュ簭鍚嶇О</param>
+            <param name="enable">鍚敤鐘舵��</param>
+            <param name="steptypecode">宸ュ簭绫诲瀷缂栫爜</param>
+            <param name="createuser">鍒涘缓浜哄憳</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.AddUpdateStep(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            宸ュ簭鏂板缂栬緫
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.DeleteStep(System.String)">
+            <summary>
+            宸ュ簭鍒犻櫎
+            </summary>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.StepAssociationEqp(System.String)">
+            <summary>
+            宸ュ簭瀹氫箟鍏宠仈宸ヤ綔绔欐煡璇�
+            </summary>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.SaveStepAssociationEqp(System.String,System.Collections.Generic.List{VueWebApi.Models.ObjectData})">
+            <summary>
+            宸ュ簭瀹氫箟鍏宠仈宸ヤ綔绔欐彁浜�
+            </summary>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <param name="json">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.StepAssociationDefect(System.String)">
+            <summary>
+            宸ュ簭鍏宠仈缂洪櫡鏌ヨ
+            </summary>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.SaveStepAssociationDefect(System.String,System.Collections.Generic.List{VueWebApi.Models.ObjectData})">
+            <summary>
+            宸ュ簭鍏宠仈缂洪櫡鎻愪氦
+            </summary>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <param name="json">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.PartSelect">
+            <summary>
+            浜у搧淇℃伅涓嬫媺妗嗘煡璇�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.PartSelectRpute(System.String)">
+            <summary>
+            浜у搧缂栫爜鏌ユ壘宸ヨ壓璺嚎涓嬫媺妗�
+            </summary>
+            <param name="partcode">浜у搧缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.RouteSelectStep(System.String)">
+            <summary>
+            鏍规嵁宸ヨ壓璺嚎缂栫爜鏌ユ壘鍏宠仈宸ュ簭闆嗗悎
+            </summary>
+            <param name="routecode">宸ヨ壓璺嚎缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.StepSelectEqp(System.String)">
+            <summary>
+            鏍规嵁宸ュ簭绾跨紪鐮佹煡鎵惧叧鑱旇澶囦笅鎷夋闆嗗悎
+            </summary>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.StepSelectEqpList(System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            鏍规嵁宸ュ簭绾跨紪鐮佹煡鎵惧叧鑱旇澶囧垪琛ㄩ泦鍚�
+            </summary>
+            <param name="partcode">浜у搧缂栫爜</param>
+             <param name="routecode">宸ヨ壓璺嚎缂栫爜</param>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.BeatRateSearch(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            鑺傛媿宸ヤ环鏌ヨ
+            </summary>
+            <param name="partcode">浜у搧缂栫爜</param>
+            <param name="routecode">宸ヨ壓璺嚎缂栫爜</param>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <param name="eqpcode">璁惧缂栫爜</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.SaveBeatRate(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            鑺傛媿宸ヤ环鎻愪氦
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.ProductModelController.DeleteBeatRate(System.String,System.String,System.String,System.String)">
+            <summary>
+            鑺傛媿宸ヤ环鍒犻櫎
+            </summary>
+            <param name="partcode">浜у搧缂栫爜</param>
+            <param name="routecode">宸ヨ壓璺嚎缂栫爜</param>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <param name="eqpcode">璁惧缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.DedectSearch(System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            璐ㄩ噺绠$悊,缂洪櫡瀹氫箟鏌ヨ鍒楄〃
+            </summary>
+            <param name="defectcode">缂洪櫡浠g爜</param>
+            <param name="defectname">缂洪櫡鍚嶇О</param>
+            <param name="defectdescr">缂洪櫡鎻忚堪</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.AddUpdateDedect(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            璐ㄩ噺绠$悊锛岀己闄峰畾涔夋柊澧炪�佺紪杈戞彁浜�
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.DeleteDedect(System.String)">
+            <summary>
+            璐ㄩ噺绠$悊锛岀己闄峰畾涔夊垹闄�
+            </summary>
+            <param name="defectcode">缂洪櫡浠g爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.StepCheckStanedSearch(System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            宸ュ簭妫�楠屾爣鍑嗗垪琛ㄦ煡璇�
+            </summary>
+            <param name="stanedcode">鏍囧噯浠g爜</param>
+            <param name="stanedname">鏍囧噯鍚嶇О</param>
+            <param name="staneddescr">鏍囧噯鎻忚堪</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勬牸</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.EditStepCheckStanedSearch(System.String)">
+            <summary>
+            宸ュ簭妫�楠屾爣鍑嗙紪杈戣幏鍙栨暟鎹�
+            </summary>
+            <param name="defectcode">宸ュ簭妫�楠屾爣鍑嗙紪鐮�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.StepCheckItemSelect">
+            <summary>
+            宸ュ簭妫�楠屾爣鍑嗘柊澧炪�佺紪杈戣幏鍙栨楠岄」鐩笅鎷夊垪琛�
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.DeleteStepCheckStaned(System.String)">
+            <summary>
+            宸ュ簭妫�楠屾爣鍑嗗垹闄�
+            </summary>
+            <param name="stanedcode">stanedcode</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.AddUpdateStepCheckStaned(System.String,VueWebApi.Models.RoutEdit)">
+            <summary>
+            宸ュ簭妫�楠屾爣鍑嗘柊澧炪�佺紪杈戞彁浜�
+            </summary>
+            <param name="opertype">鎿嶄綔绫诲瀷</param>
+            <param name="json">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.StepCheckItemSearch(System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            宸ュ簭妫�楠岄」鐩垪琛ㄦ煡璇�
+            </summary>
+            <param name="itemcode">妫�楠岄」鐩紪鐮�</param>
+            <param name="itemname">妫�楠岄」鐩悕绉�</param>
+            <param name="itemdescr">妫�楠岄」鐩弿杩�</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.AddUpdateStepCheckItem(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            宸ュ簭妫�楠岄」鐩柊澧炪�佺紪杈戞彁浜�
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.QualityManagementController.DeleteStepCheckItem(System.String)">
+            <summary>
+            宸ュ簭妫�楠岄」鐩垹闄�
+            </summary>
+            <param name="checkitemcode">妫�楠岄」鐩唬鐮�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.SystemSettingController.EncodingRules(System.String,System.String,System.Int32,System.Int32,System.String,System.String)">
+            <summary>
+            缂栫爜瑙勫垯鏌ヨ
+            </summary>
+            <param name="rightname">缂栫爜鍚嶇О</param>
+            <param name="prefix">鍥哄畾瀛楃</param>
+            <param name="page">椤电爜</param>
+            <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+            <param name="prop">鎺掑簭瀛楁</param>
+            <param name="order">鎺掑簭瑙勫垯</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.SystemSettingController.SaveEncodingRules(Newtonsoft.Json.Linq.JObject)">
+            <summary>
+            缂栫爜瑙勫垯缂栬緫淇濆瓨
+            </summary>
+            <param name="obj">鎻愪氦鏁版嵁瀵硅薄</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Controllers.SystemSettingController.NewEncodingRules(System.String)">
+            <summary>
+            鑾峰彇瑙勫垯鐢熸垚鐨勭紪鐮�
+            </summary>
+            <param name="rightcode">鍔熻兘缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.WebApiApplication.Init">
+            <summary>
+            娉ㄥ唽Session
+            </summary>
+        </member>
+        <member name="T:VueWebApi.Tools.ChannelActionFilterAttribute">
+            <summary>
+            娓犻亾杩囨护鍣�
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Tools.ChannelActionFilterAttribute.OnActionExecuting(System.Web.Http.Controllers.HttpActionContext)">
+            <summary>
+            璇锋眰鎺ュ彛涔嬪墠娓犻亾杩囨护
+            </summary>
+            <param name="actionContext"></param>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.sqlConnection">
+            <summary>
+            鍒涘缓鏁版嵁搴撹繛鎺ュ璞qlserver
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.select``1(System.String,System.Object)">
+            <summary>
+            Dapper鏌ヨ杩斿洖List
+            </summary>
+            <typeparam name="T">闇�瑕佽繑鍥炵殑瀵硅薄绫诲瀷</typeparam>
+            <param name="sql">Sql璇彞</param>
+            <param name="parm"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.selectToDict(System.String,System.Object)">
+            <summary>
+            Dapper鏌ヨ杩斿洖List瀛楀吀瀵硅薄  鏃犻渶鎵嬪姩Wapper瀵硅薄浜� 
+            </summary>
+            <param name="sql"></param>
+            <param name="parm"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.selectToObject``1(System.String,System.Object)">
+            <summary>
+            Dapper鏌ヨ杩斿洖瀵硅薄闈濴ist闆嗗悎
+            </summary>
+            <typeparam name="T"></typeparam>
+            <param name="sql"></param>
+            <param name="parm"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.GetPageList``1(System.String,System.Object,System.String,System.String,System.Int32,System.Int32,System.Int32@)">
+            <summary>
+            dapper閫氱敤鍒嗛〉鍑芥暟
+            </summary>
+            <typeparam name="T">娉涘瀷闆嗗悎瀹炰綋绫�</typeparam>
+            <param name="sql">鏌ヨ璇彞</param>
+            <param name="orderBy">鎺掑簭锛堝瓧娈� DESC/ASC锛�</param>
+            <param name="pageIndex">褰撳墠椤�</param>
+            <param name="pageSize">褰撳墠椤垫樉绀烘潯鏁�</param>
+            <param name="total">缁撴灉闆嗘�绘暟</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.selectdata(System.String,System.Object)">
+            <summary>
+            Dapper鏌ヨ杩斿洖datatable鏁版嵁(甯﹀弬鏁�)
+            </summary>
+            <param name="sql"></param>
+            <param name="parm"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.selecttable(System.String)">
+            <summary>
+            Dapper鏌ヨ杩斿洖datatable鏁版嵁(涓嶅甫鍙傛暟)
+            </summary>
+            <param name="sql"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.selectProcedure(System.String,System.Object)">
+            <summary>
+            Dapper鎵ц瀛樺偍杩囩▼杩斿洖datatable鏁版嵁(甯﹀弬鏁�)
+            </summary>
+            <param name="sql">瀛樺偍杩囩▼鍚�</param>
+            <param name="parm">鍙傛暟</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.IsProcedure(System.String,System.Object)">
+            <summary>
+            Dapper鎵ц瀛樺偍杩囩▼杩斿洖datatable鏁版嵁(甯﹀弬鏁�)
+            </summary>
+            <param name="sql">瀛樺偍杩囩▼鍚�</param>
+            <param name="parm">鍙傛暟</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.IsProcedureNo(System.String)">
+            <summary>
+            Dapper鎵ц瀛樺偍杩囩▼杩斿洖datatable鏁版嵁(涓嶅甫鍙傛暟)
+            </summary>
+            <param name="sql">瀛樺偍杩囩▼鍚�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.selectcount(System.String,System.Object)">
+            <summary>
+            Dapper鏌ヨ杩斿洖鏁版嵁鏉℃暟
+            </summary>
+            <param name="sql"></param>
+            <param name="parm"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.SQL(System.String,System.Object)">
+            <summary>
+            Dapper澧炲垹鏀�
+            </summary>
+            <param name="sql"></param>
+            <param name="parametere"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.DoTransaction(System.Collections.Generic.List{System.Object})">
+            <summary>
+            澧炲姞锛屽垹闄わ紝淇敼浣跨敤鐨� 浜嬪姟鏂规硶  Sqllist涓轰緷娆℃墽琛�
+            </summary>
+            <param name="sqlList"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.DoTransactionCont(System.Collections.Generic.List{System.Object})">
+            <summary>
+            澧炲姞锛屽垹闄わ紝淇敼浣跨敤鐨� 浜嬪姟鏂规硶  Sqllist涓轰緷娆℃墽琛�
+            </summary>
+            <param name="sqlList"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DapperHelper.insertReturnId(System.String,System.Object,System.String)">
+            <summary>
+            Dapper鎻掑叆 杩斿洖鑷涓婚敭Id
+            </summary>
+            <param name="sql"></param>
+            <param name="parameter"></param>
+            <param name="tableName">寰呮彃鍏ユ暟鎹殑琛ㄥ悕</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DataOperator.ExecuteSqlTran(System.Collections.Generic.List{System.String},System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鎵ц澶氭潯SQL璇彞锛屽疄鐜版暟鎹簱浜嬪姟銆�
+            </summary>
+            <param name="sql">澶氭潯SQL璇彞</param>
+            <returns>褰卞搷鐨勮褰曟暟</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetTable(System.String)">
+            <summary>
+            鑾峰彇DataTable
+            </summary>
+            <param name="sql">浼犲叆SQL璇彞</param>
+            <returns>杩斿洖DataTable</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetTable(System.String,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鑾峰彇DataTable
+            </summary>
+            <param name="sql">浼犲叆SQL璇彞</param>
+            <param name="parameters">SqlParameter 鍙傛暟</param>
+            <returns>杩斿洖DataTable</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetData(System.String,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            Dataset鑾峰彇鏁版嵁琛�
+            </summary>
+            <param name="sql"></param>
+            <param name="parameters"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetCount(System.String)">
+            <summary>
+            鑾峰彇鏁版嵁琛屾暟,濡傛灉鍑洪敊杩斿洖"-1"
+            </summary>
+            <param name="sql">浼犲叆SQL璇彞</param>
+            <returns>濡傛灉鍑洪敊杩斿洖"-1"</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.Executesqltran(System.Collections.Generic.List{System.String},System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鎵ц澶氭潯sql璇彞鐨勪簨鐗�
+            </summary>
+            <param name="list"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetCount(System.String,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鑾峰彇鏁版嵁琛屾暟,濡傛灉鍑洪敊杩斿洖"-1"
+            </summary>
+            <param name="sql">浼犲叆SQL璇彞</param>
+            <param name="parameters">SqlParameter 鍙傛暟</param>
+            <returns>濡傛灉鍑洪敊杩斿洖"-1"</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetObject(System.String)">
+            <summary>
+            鑾峰彇琛ㄦ牸绗竴琛岀涓�鍒�
+            </summary>
+            <param name="sql">浼犲叆SQL璇彞</param>
+            <returns>濡傛灉鍑洪敊杩斿洖"null"</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetObject(System.String,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鑾峰彇琛ㄦ牸绗竴琛岀涓�鍒�
+            </summary>
+            <param name="sql">浼犲叆SQL璇彞</param>
+            <param name="parameters">SqlParameter 鍙傛暟</param>
+            <returns>杩斿洖Object</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.ExecuteSql(System.String)">
+            <summary>
+            鎵цSQL璇彞杩斿洖鏄惁鎴愬姛
+            </summary>
+            <param name="sql">浼犲叆SQL璇彞</param>
+            <returns>杩斿洖鏄惁鎴愬姛</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.ExecuteSql(System.String,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鎵цSQL璇彞杩斿洖鏄惁鎴愬姛
+            </summary>
+            <param name="sql">浼犲叆SQL璇彞</param>
+            <param name="parameters">SqlParameter 鍙傛暟</param>
+            <returns>杩斿洖鏄惁鎴愬姛</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.ExecuteProduct(System.String,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鎵ц瀛樺偍杩囩▼杩斿洖杩斿洖鍊�
+            </summary>
+            <param name="productName">瀛樺偍杩囩▼鍚嶅瓧</param>
+            <param name="parameters">SqlParameter 鍙傛暟</param>
+            <returns>杩斿洖鍊糎ash琛�</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.ExecuteProductData(System.String,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鎵ц瀛樺偍杩囩▼杩斿洖杩斿洖鍊�
+            </summary>
+            <param name="productName">瀛樺偍杩囩▼鍚嶅瓧</param>
+            <param name="parameters">SqlParameter 鍙傛暟</param>
+            <returns>杩斿洖鍊糎ash琛�</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.ExecuteProductDataList(System.String,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鎵ц瀛樺偍杩囩▼杩斿洖杩斿洖鍊�
+            </summary>
+            <param name="productName">瀛樺偍杩囩▼鍚嶅瓧</param>
+            <param name="parameters">SqlParameter 鍙傛暟</param>
+            <returns>杩斿洖鍊糎ash琛�</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.executeProductList(System.String,System.Boolean,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鎵ц瀛樺偍杩囩▼杩斿洖杩斿洖鍊�
+            </summary>
+            <param name="productName">瀛樺偍杩囩▼鍚嶅瓧</param>
+            <param name="parameters">SqlParameter 鍙傛暟</param>
+            <returns>杩斿洖鍊糒ist</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.ExecuteProductbool(System.String,System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            鎵ц瀛樺偍杩囩▼杩斿洖杩斿洖鍊�
+            </summary>
+            <param name="productName">瀛樺偍杩囩▼鍚嶅瓧</param>
+            <param name="parameters">SqlParameter 鍙傛暟</param>
+            <returns>杩斿洖鍊糄ataTable琛�</returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetDataByPage(System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.String,System.Int32@)">
+            <summary>
+            鍒嗛〉鏌ヨ
+            </summary>
+            <param name="filename">琛ㄥ悕</param>
+            <param name="filename">闇�瑕佽繑鍥炵殑鍒�</param>
+            <param name="sortfilename">鎺掑簭瀛楁鍚�</param>
+            <param name="PageSize">椤靛昂瀵�</param>
+            <param name="PageIndex">椤电爜</param>
+            <param name="OrderType">璁剧疆鎺掑簭绫诲瀷, 闈� 0 鍊煎垯闄嶅簭</param>
+            <param name="strWhere">鏌ヨ鏉′欢 (娉ㄦ剰: 涓嶈鍔� where)</param>
+            <param name="RecordCount">鎬昏褰�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetDataByPage_V2(System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.Int32@)">
+            <summary>
+            鍒嗛〉鏌ヨ(鏀寔JOIN)
+            </summary>
+            <param name="filename">琛ㄥ悕</param>
+            <param name="filename">闇�瑕佽繑鍥炵殑鍒�</param>
+            <param name="sortfilename">鎺掑簭瀛楁鍚�(榛樿鍗囧簭锛岄檷搴忛渶鍦ㄦ帓搴忓瓧娈靛悕鍚庨潰DESC鍏抽敭瀛楋細sortField Desc)</param>
+            <param name="PageSize">椤靛昂瀵�</param>
+            <param name="PageIndex">椤电爜</param>
+            <param name="strWhere">鏌ヨ鏉′欢 (娉ㄦ剰: 涓嶈鍔� where)</param>
+            <param name="RecordCount">鎬昏褰�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.GetDataByPage_V2_Join(System.String,System.String,System.String,System.Int32,System.Int32,System.String,System.Int32@)">
+            <summary>
+            鍒嗛〉鏌ヨ(鏀寔JOIN)
+            </summary>
+            <param name="filename">琛ㄥ悕</param>
+            <param name="filename">闇�瑕佽繑鍥炵殑鍒�</param>
+            <param name="sortfilename">鎺掑簭瀛楁鍚�(榛樿鍗囧簭锛岄檷搴忛渶鍦ㄦ帓搴忓瓧娈靛悕鍚庨潰DESC鍏抽敭瀛楋細sortField Desc)</param>
+            <param name="PageSize">椤靛昂瀵�</param>
+            <param name="PageIndex">椤电爜</param>
+            <param name="strWhere">鏌ヨ鏉′欢 (娉ㄦ剰: 涓嶈鍔� where)</param>
+            <param name="RecordCount">鎬昏褰�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.DBHelper.ParametersStrGet(System.Data.SqlClient.SqlParameter[])">
+            <summary>
+            [鐢ㄤ簬鏃ュ織鏂囨湰杈撳嚭] 灏哠qlParameter鏁扮粍鍙傛暟杞垚瀛楃涓�.
+            </summary>
+            <param name="parameters">鍙傛暟鏁扮粍</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.ImportExcel.ExcelToTable(System.String)">
+            <summary>
+            Excel瀵煎叆鎴怐atable
+            </summary>
+            <param name="file">瀵煎叆璺緞(鍖呭惈鏂囦欢鍚嶄笌鎵╁睍鍚�)</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.ImportExcel.ExcelToTableList(System.String)">
+            <summary>
+            Excel 2涓猄heet瀵煎叆鎴怐atable
+            </summary>
+            <param name="file">瀵煎叆璺緞(鍖呭惈鏂囦欢鍚嶄笌鎵╁睍鍚�)</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.ImportExcel.GetCellValue(NPOI.SS.UserModel.ICell)">
+            <summary>
+            鑾峰彇鍗曞厓鏍肩被鍨�
+            </summary>
+            <param name="cell"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.ImportExcel.ExcelToTableErro(System.String)">
+            <summary>
+            鍗曚釜Excel 涓嶄负绌洪獙璇併�侀噸澶嶆暟鎹獙璇�
+            </summary>
+            <param name="file">瀵煎叆璺緞(鍖呭惈鏂囦欢鍚嶄笌鎵╁睍鍚�)</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.ImportExcel.ExcelToTableListErro(System.String)">
+            <summary>
+            Excel 2涓猄heet 鏁版嵁楠岃瘉
+            </summary>
+            <param name="file">瀵煎叆璺緞(鍖呭惈鏂囦欢鍚嶄笌鎵╁睍鍚�)</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.LogHelper.WriteLog(System.Exception)">
+            <summary>
+            杈撳嚭鏃ュ織鍒癓og4Net
+            </summary>
+            <param name="ex"></param>
+        </member>
+        <member name="M:VueWebApi.Tools.NPOIHelper.ExportEasy(System.Data.DataTable,System.String)">
+            <summary>
+            NPOI绠�鍗旸emo锛屽揩閫熷叆闂ㄤ唬鐮�
+            </summary>
+            <param name="dtSource"></param>
+            <param name="strFileName"></param>
+            <remarks>NPOI璁や负Excel鐨勭涓�涓崟鍏冩牸鏄細(0锛�0)</remarks>
+            <Author>鏌虫案娉� http://www.yongfa365.com/ 2010-5-8 22:21:41</Author>
+        </member>
+        <member name="M:VueWebApi.Tools.NPOIHelper.GetExcelDatatableList(System.String)">
+            <summary>
+            澶氫釜sheet瀵煎叆
+            </summary>
+            <param name="fileUrl"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.NPOIHelper.GetExcelDatatableListName(System.String)">
+            <summary>
+            澶氫釜sheet瀵煎叆
+            </summary>
+            <param name="fileUrl"></param>
+            <returns></returns>
+        </member>
+        <member name="F:VueWebApi.Tools.RedisHelper.RedisIpConnString">
+            <summary>
+            redis鑾峰彇杩炴帴閰嶇疆瀛楃涓�
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.CreateManager(System.String[],System.String[])">
+            <summary>  
+            缂撳啿姹�  
+            </summary>  
+            <param name="readWriteHosts"></param>  
+            <param name="readOnlyHosts"></param>  
+            <returns></returns>  
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.#cctor">
+            <summary>  
+            鏋勯�犲嚱鏁�  
+            </summary>  
+            <param name="openPooledRedis">鏄惁寮�鍚紦鍐叉睜</param>  
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.Set``1(System.String,``0,System.Int32,System.Int32)">
+            <summary>  
+            璁剧疆缂撳瓨  
+            </summary>  
+            <typeparam name="T"></typeparam>  
+            <param name="key">缂撳瓨寤�</param>  
+            <param name="t">缂撳瓨鍊�</param>  
+            <param name="timeout">杩囨湡鏃堕棿锛屽崟浣嶇,-1锛氫笉杩囨湡锛�0锛氶粯璁よ繃鏈熸椂闂�</param>  
+            <returns></returns>  
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.KeyExpire(System.String,System.Int32)">
+            <summary>
+            璁剧疆澶辨晥鏃堕棿
+            </summary>
+            <param name="key"></param>
+            <param name="expiry"></param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.Get``1(System.String,System.Int32)">
+            <summary>  
+            鑾峰彇  
+            </summary>  
+            <typeparam name="T"></typeparam>  
+            <param name="key"></param>  
+            <returns></returns>  
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.Remove(System.String,System.Int32)">
+            <summary>  
+            鍒犻櫎  
+            </summary>  
+            <param name="key"></param>  
+            <returns></returns>  
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.AddList``1(System.String,System.Collections.Generic.IEnumerable{``0},System.Int32)">
+            <summary>  
+            鏍规嵁IEnumerable鏁版嵁娣诲姞閾捐〃  
+            </summary>  
+            <typeparam name="T"></typeparam>  
+            <param name="listId"></param>  
+            <param name="values"></param>  
+            <param name="timeout"></param>  
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.AddEntityToList``1(System.String,``0,System.Int32,System.Int32)">
+            <summary>  
+            娣诲姞鍗曚釜瀹炰綋鍒伴摼琛ㄤ腑  
+            </summary>  
+            <typeparam name="T"></typeparam>  
+            <param name="listId"></param>  
+            <param name="Item"></param>  
+            <param name="timeout"></param>  
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.GetList``1(System.String,System.Int32)">
+            <summary>  
+            鑾峰彇閾捐〃  
+            </summary>  
+            <typeparam name="T"></typeparam>  
+            <param name="listId"></param>  
+            <returns></returns>  
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.RemoveEntityFromList``1(System.String,``0,System.Int32)">
+            <summary>  
+            鍦ㄩ摼琛ㄤ腑鍒犻櫎鍗曚釜瀹炰綋  
+            </summary>  
+            <typeparam name="T"></typeparam>  
+            <param name="listId"></param>  
+            <param name="t"></param>  
+        </member>
+        <member name="M:VueWebApi.Tools.RedisHelper.RemoveEntityFromList``1(System.String,System.Func{``0,System.Boolean})">
+            <summary>  
+            鏍规嵁lambada琛ㄨ揪寮忓垹闄ょ鍚堟潯浠剁殑瀹炰綋  
+            </summary>  
+            <typeparam name="T"></typeparam>  
+            <param name="listId"></param>  
+            <param name="func"></param>  
+        </member>
+        <member name="M:VueWebApi.Tools.ScanStartReport.ZZEncodingSeach(System.String,System.String)">
+            <summary>
+            鎵爜淇℃伅涓哄伐鍗�+宸ュ簭鏉$爜
+            </summary>
+            <param name="ordercode">宸ュ崟缂栧彿</param>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.ScanStartReport.WXEncodingSeach(System.String,System.String,System.String)">
+            <summary>
+            鐢熶骇寮�鎶ュ伐:澶栧崗宸ュ簭浠诲姟寮�鎶ュ伐鍒ゆ柇:宸ュ崟鍙�+宸ュ簭
+            </summary>
+            <param name="OperType">鎿嶄綔绫诲瀷</param>
+            <param name="ordercode">宸ュ崟缂栧彿</param>
+            <param name="stepcode">宸ュ簭缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.SeachEncode.EncodingSeach(System.String)">
+            <summary>
+            鏍规嵁鍔熻兘缂栫爜鑾峰彇鏈�鏂拌鍒欑紪鐮�
+            </summary>
+            <param name="rightcode">鍔熻兘缂栫爜</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Tools.SeachEncode.RightLocation(System.String,System.String)">
+            <summary>
+            鏍规嵁瑙掕壊缂栫爜鏌ヨ鍔熻兘鑿滃崟
+            </summary>
+            <param name="rolecode"></param>
+            <param name="type"></param>
+            <returns></returns>
+        </member>
+        <member name="T:VueWebApi.Util.ObjectValueParser`1">
+            <summary>
+            鍊艰浆鎹㈠櫒
+            </summary>
+            <typeparam name="T">鎸囧畾鍊肩殑绫诲瀷</typeparam>
+            <param name="obj">鍙栧�兼潵婧�</param>
+            <returns>杩斿洖鎸囧畾绫诲瀷鐨勫��</returns>
+        </member>
+        <member name="T:VueWebApi.Util.ObjectValueTryParser`1">
+            <summary>
+            灏濊瘯灏嗗�艰浆鎹㈡垚鎸囧畾绫诲瀷 杩斿洖杞崲缁撴灉
+            </summary>
+            <typeparam name="T">鎸囧畾鍊肩殑绫诲瀷</typeparam>
+            <param name="obj">鍙栧�兼潵婧�</param>
+            <param name="valueOutput">鑻ヨ浆鎹㈡垚鍔� 鍒檕ut杞崲缁撴灉 鍚﹀垯 out榛樿T绫诲瀷鍊�</param>
+            <returns></returns>
+        </member>
+        <member name="T:VueWebApi.Util.StringValueParser`1">
+            <summary>
+            灏濊瘯灏嗗�艰浆鎹㈡垚鎸囧畾绫诲瀷 杩斿洖杞崲缁撴灉
+            </summary>
+            <typeparam name="T">鎸囧畾鍊肩殑绫诲瀷</typeparam>
+            <param name="str">鍙栧�兼潵婧愬瓧绗︿覆</param>
+            <returns>杩斿洖鎸囧畾绫诲瀷鐨勫��</returns>
+        </member>
+        <member name="T:VueWebApi.Util.StringValueTryParser`1">
+            <summary>
+            灏濊瘯灏嗗�艰浆鎹㈡垚鎸囧畾绫诲瀷 杩斿洖杞崲鎴愬姛涓庡惁
+            </summary>
+            <typeparam name="T">鎸囧畾鍊肩殑绫诲瀷</typeparam>
+            <param name="str">鍙栧�兼潵婧愬瓧绗︿覆</param>
+            <param name="valueOutput">鑻ヨ浆鎹㈡垚鍔� 鍒檕ut杞崲缁撴灉 鍚﹀垯 out榛樿T绫诲瀷鍊�</param>
+            <returns></returns>
+        </member>
+        <member name="T:VueWebApi.Util.EntityHelper">
+            <summary>
+            瀹炰綋甯姪绫�
+            </summary>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetObject(System.Data.DataRow,System.String)">
+            <summary>
+            浠庝竴琛屾暟鎹腑灏濊瘯鑾峰彇鎸囧畾鍒楀悕鐨勫��
+            </summary>
+            <param name="dr">婧愭暟鎹</param>
+            <param name="columnName">鎸囧畾鍒楀悕</param>
+            <returns>鑻ユ寚瀹氱殑鍒楀悕瀛樺湪骞舵湁鏁堝垯杩斿洖鍙栧埌鐨勫璞★紝鑻ユ寚瀹氬垪鍚嶄笉瀛樺湪鎴栬�呬负鏃犳晥鏁版嵁鍒欒繑鍥瀗ull</returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetT``1(System.Data.DataRow,System.String,``0,VueWebApi.Util.ObjectValueParser{``0})">
+            <summary>
+            浠庝竴琛屾暟鎹腑灏濊瘯鑾峰彇鎸囧畾寮曠敤绫诲瀷鐨勫��
+            </summary>
+            <typeparam name="T">鎸囧畾绫诲瀷鐨勫��</typeparam>
+            <param name="dr">婧愭暟鎹</param>
+            <param name="columnName">鍒楀悕</param>
+            <param name="defVal">鍒楁棤鏁堟椂杩斿洖鐨勯粯璁ゅ��</param>
+            <param name="parser">鍊艰浆鎹㈠櫒 鑻ョ粰瀹氱殑鍊艰浆鎹㈠櫒涓簄ull锛屽垯浣跨敤as寮哄埗杞崲锛岃嫢as杞崲涓簄ull 鍒欒繑鍥為粯璁ゅ��</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.Get``1(System.Object,``0,VueWebApi.Util.ObjectValueParser{``0})">
+            <summary>
+            灏嗗璞¤浆鎹负鎸囧畾绫诲瀷鏁版嵁 杞崲澶辫触杩斿洖璁剧疆鐨勯粯璁ゅ��
+            </summary>
+            <typeparam name="T">鎸囧畾鐨勭被鍨�</typeparam>
+            <param name="source">鏁版嵁婧�</param>
+            <param name="defVal">鍒楁棤鏁堟椂杩斿洖鐨勯粯璁ゅ��</param>
+            <param name="parser">鍊艰浆鎹㈠櫒 鑻ョ粰瀹氱殑鍊艰浆鎹㈠櫒涓簄ull锛屽垯浣跨敤as寮哄埗杞崲锛岃嫢as杞崲涓簄ull 鍒欒繑鍥為粯璁ゅ��</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.TryGetT``1(System.Data.DataRow,System.String,``0,VueWebApi.Util.ObjectValueTryParser{``0})">
+            <summary>
+            浠庝竴琛屾暟鎹腑灏濊瘯鑾峰彇鎸囧畾寮曠敤绫诲瀷鐨勫��
+            </summary>
+            <typeparam name="T">鎸囧畾鐨勭被鍨�</typeparam>
+            <param name="dr">婧愭暟鎹</param>
+            <param name="columnName">鍒楀悕</param>
+            <param name="defVal">鍒楁棤鏁堟椂杩斿洖鐨勯粯璁ゅ��</param>
+            <param name="parser">鍊艰浆鎹㈠櫒 鑻ョ粰瀹氱殑鍊艰浆鎹㈠櫒涓簄ull锛屽垯浣跨敤as寮哄埗杞崲锛岃嫢as杞崲涓簄ull 鍒欒繑鍥為粯璁ゅ��</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.TryGetT``1(System.Object,``0,VueWebApi.Util.ObjectValueTryParser{``0})">
+            <summary>
+            灏嗗璞″皾璇曡浆鎹负鎸囧畾绫诲瀷鐨勬暟鎹� 杞崲澶辫触杩斿洖鎸囧畾鐨勯粯璁ゅ��
+            </summary>
+            <typeparam name="T">鎸囧畾鐨勭被鍨�</typeparam>
+            <param name="source">鏁版嵁婧�</param>
+            <param name="defVal">榛樿鍊�</param>
+            <param name="parser">鍊艰浆鎹㈠櫒 鑻ョ粰瀹氱殑鍊艰浆鎹㈠櫒涓簄ull锛屽垯浣跨敤as寮哄埗杞崲锛岃嫢as杞崲涓簄ull 鍒欒繑鍥為粯璁ゅ��</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetT``1(System.Data.DataRow,System.String,``0,VueWebApi.Util.StringValueParser{``0})">
+            <summary>
+            浠庝竴琛屾暟鎹腑灏濊瘯鑾峰彇鎸囧畾鍊肩被鍨嬬殑鍊�
+            </summary>
+            <typeparam name="T">鎸囧畾绫诲瀷鐨勫��</typeparam>
+            <param name="dr">婧愭暟鎹</param>
+            <param name="columnName">鍒楀悕</param>
+            <param name="defVal">鍒楁棤鏁堟椂杩斿洖鐨勯粯璁ゅ��</param>
+            <param name="parser">鍊艰浆鎹㈠櫒</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetT``1(System.Object,``0,VueWebApi.Util.StringValueParser{``0})">
+            <summary>
+            灏嗗璞¤浆鎹负鎸囧畾绫诲瀷鏁版嵁 杞崲澶辫触杩斿洖璁剧疆鐨勯粯璁ゅ��
+            </summary>
+            <typeparam name="T">鎸囧畾鐨勭被鍨�</typeparam>
+            <param name="source">鏁版嵁婧�</param>
+            <param name="defVal">鍒楁棤鏁堟椂杩斿洖鐨勯粯璁ゅ��</param>
+            <param name="parser">鍊艰浆鎹㈠櫒</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.TryGetT``1(System.Data.DataRow,System.String,``0,VueWebApi.Util.StringValueTryParser{``0})">
+            <summary>
+            浠庝竴琛屾暟鎹腑灏濊瘯鑾峰彇鎸囧畾鍊肩被鍨嬬殑鍊�
+            </summary>
+            <typeparam name="T">鎸囧畾绫诲瀷鐨勫��</typeparam>
+            <param name="dr">婧愭暟鎹</param>
+            <param name="columnName">鍒楀悕</param>
+            <param name="defVal">鍒楁棤鏁堟椂杩斿洖鐨勯粯璁ゅ��</param>
+            <param name="parser">鍊艰浆鎹㈠櫒</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.TryGetT``1(System.Object,``0,VueWebApi.Util.StringValueTryParser{``0})">
+            <summary>
+            灏嗗璞″皾璇曡浆鎹负鎸囧畾绫诲瀷鐨勬暟鎹� 杞崲澶辫触杩斿洖鎸囧畾鐨勯粯璁ゅ��
+            </summary>
+            <typeparam name="T">鎸囧畾鐨勭被鍨�</typeparam>
+            <param name="obj">鏁版嵁婧�</param>
+            <param name="defVal">榛樿鍊�</param>
+            <param name="parser">鍊艰浆鎹㈠櫒</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetString(System.Data.DataRow,System.String,System.String)">
+            <summary>
+            浠庝竴琛屾暟鎹腑灏濊瘯鑾峰彇瀛楃涓�
+            </summary>
+            <param name="dr">婧愭暟鎹</param>
+            <param name="columnName">鍒楀悕</param>
+            <param name="defVal">鍒楁棤鏁堟椂杩斿洖鐨勯粯璁ゅ��</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetString(System.Object,System.String)">
+            <summary>
+            鑾峰彇瀛楃涓� 妫�娴�  鏁版嵁婧愪负绌烘椂杩斿洖榛樿鍊�
+            </summary>
+            <param name="source">鏁版嵁婧�</param>
+            <param name="defVal">榛樿鍊�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetInt(System.Data.DataRow,System.String,System.Int32)">
+            <summary>
+            浠庝竴琛屾暟鎹腑灏濊瘯鑾峰彇鏁存暟
+            </summary>
+            <param name="dr">婧愭暟鎹</param>
+            <param name="columnName">鍒楀悕</param>
+            <param name="defVal">鍒楁棤鏁堟椂杩斿洖鐨勯粯璁ゅ��</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetInt(System.Object,System.Int32)">
+            <summary>
+            浠庢暟鎹憳鑾峰彇鏁存暟
+            </summary>
+            <param name="source">鏁版嵁婧�</param>
+            <param name="defVal">鑾峰彇澶辫触鏃剁殑榛樿鍊�</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetDateTime(System.Data.DataRow,System.String,System.DateTime)">
+            <summary>
+            浠庝竴琛屾暟鎹腑灏濊瘯鑾峰彇鏃ユ湡
+            </summary>
+            <param name="dr">婧愭暟鎹</param>
+            <param name="columnName">鍒楀悕</param>
+            <param name="defVal">鍒楁棤鏁堟椂杩斿洖鐨勯粯璁ゅ��</param>
+            <returns></returns>
+        </member>
+        <member name="M:VueWebApi.Util.EntityHelper.GetDateTime(System.Object,System.DateTime)">
+            <summary>
+            浠庢暟鎹簮涓� 鑾峰彇鏃ユ湡
+            </summary>
+            <param name="source">鏁版嵁婧�</param>
+            <param name="defVal">鑾峰彇澶辫触鏃剁殑榛樿鍊�</param>
+            <returns></returns>
+        </member>
+        <member name="T:ControllerGroupAttribute">
+            <summary>
+            Controller鎻忚堪淇℃伅
+            </summary>
+        </member>
+        <member name="P:ControllerGroupAttribute.GroupName">
+            <summary>
+            褰撳墠Controller鎵�灞炴ā鍧� 璇风敤涓枃
+            </summary>
+        </member>
+        <member name="P:ControllerGroupAttribute.Useage">
+            <summary>
+            褰撳墠controller鐢ㄩ��    璇风敤涓枃
+            </summary>
+        </member>
+        <member name="M:ControllerGroupAttribute.#ctor(System.String,System.String)">
+            <summary>
+             Controller鎻忚堪淇℃伅 鏋勯��
+            </summary>
+            <param name="groupName">妯″潡鍚嶇О</param>
+            <param name="useage">褰撳墠controller鐢ㄩ��</param>
+        </member>
+        <member name="T:HiddenApiAttribute">
+            <summary>
+            闅愯棌鎺ュ彛锛屼笉鐢熸垚鍒皊wagger鏂囨。灞曠ず
+            </summary>
+            <seealso cref="T:System.Attribute" />
+        </member>
+        <member name="T:HiddenApiFilter">
+            <summary>
+            Class HiddenApiFilter.
+            </summary>
+            <seealso cref="T:Swashbuckle.Swagger.IDocumentFilter" />
+        </member>
+        <member name="M:HiddenApiFilter.Apply(Swashbuckle.Swagger.SwaggerDocument,Swashbuckle.Swagger.SchemaRegistry,System.Web.Http.Description.IApiExplorer)">
+            <summary>
+            閲嶅啓Apply鏂规硶锛岀Щ闄ら殣钘忔帴鍙g殑鐢熸垚
+            </summary>
+            <param name="swaggerDoc">swagger鏂囨。鏂囦欢</param>
+            <param name="schemaRegistry"></param>
+            <param name="apiExplorer">api鎺ュ彛闆嗗悎</param>
+        </member>
+        <member name="T:HttpAuthHeaderFilter">
+            <summary>
+            swagger 澧炲姞 AUTH 閫夐」
+            </summary>
+        </member>
+        <member name="M:HttpAuthHeaderFilter.Apply(Swashbuckle.Swagger.Operation,Swashbuckle.Swagger.SchemaRegistry,System.Web.Http.Description.ApiDescription)">
+            <summary>
+            搴旂敤
+            </summary>
+            <param name="operation"></param>
+            <param name="schemaRegistry"></param>
+            <param name="apiDescription"></param>
+        </member>
+        <member name="T:SwaggerControllerDescProvider">
+            <summary>
+            swagger鏄剧ず鎺у埗鍣ㄧ殑鎻忚堪
+            </summary>
+        </member>
+        <member name="M:SwaggerControllerDescProvider.#ctor(Swashbuckle.Swagger.ISwaggerProvider,System.String)">
+            <summary>
+            
+            </summary>
+            <param name="swaggerProvider"></param>
+            <param name="xml">xml鏂囨。璺緞</param>
+        </member>
+        <member name="M:SwaggerControllerDescProvider.GetSwagger(System.String,System.String)">
+            <summary>
+            Gets the swagger.
+            </summary>
+            <param name="rootUrl">The root URL.</param>
+            <param name="apiVersion">The API version.</param>
+            <returns>SwaggerDocument.</returns>
+        </member>
+        <member name="M:SwaggerControllerDescProvider.GetControllerDesc">
+            <summary>
+            浠嶢PI鏂囨。涓鍙栨帶鍒跺櫒鎻忚堪
+            </summary>
+            <returns>鎵�鏈夋帶鍒跺櫒鎻忚堪</returns>
+        </member>
+    </members>
+</doc>
diff --git a/VueWebApi/obj/Release/Package/PackageTmp/grf/Rework.frx b/VueWebApi/obj/Release/Package/PackageTmp/grf/Rework.frx
new file mode 100644
index 0000000..0af314a
--- /dev/null
+++ b/VueWebApi/obj/Release/Package/PackageTmp/grf/Rework.frx
@@ -0,0 +1,89 @@
+锘�<?xml version="1.0" encoding="utf-8"?>
+<Report ScriptLanguage="CSharp" ReportInfo.Created="10/16/2018 18:08:59" ReportInfo.Modified="07/26/2022 14:37:33" ReportInfo.CreatorVersion="2014.2.3.0" PrintSettings.ShowDialog="false">
+  <Dictionary>
+    <XmlDataConnection Name="Connection" ConnectionString="rijcmlqmmfdjkQxfe1iwShBNGpud2ngqn0kQFUwlWvLE3W/iceu9kzGbruXJ5I6r8tOQvypOEky6erzZZQtihg2HYGClg==">
+      <TableDataSource Name="Table11" Alias="Table1" DataType="System.Int32" Enabled="true" TableName="Table1">
+        <Column Name="SEQ" Alias="seq" DataType="System.String" PropName="WO"/>
+        <Column Name="WO_CODE" Alias="wo_code" DataType="System.String" PropName="QTY"/>
+        <Column Name="PARTCODE" Alias="paetcode" DataType="System.String" PropName="PN_NAME"/>
+        <Column Name="PARTNAME" Alias="partname" DataType="System.String" PropName="PN_DESC"/>
+        <Column Name="PN_PARTNUMBER" Enabled="false" DataType="System.String" PropName="PN_PARTNAME"/>
+        <Column Name="PARTSPEC" Alias="partspec" DataType="System.String" PropName="Column"/>
+        <Column Name="ROUTENAME" Alias="routename" DataType="System.String" PropName="Column"/>
+        <Column Name="ORDERQTY" Alias="orderqty" DataType="System.String" PropName="Column"/>
+        <Column Name="LM_USER" Alias="lm_user" DataType="System.String" PropName="Column"/>
+        <Column Name="LM_DATE" Alias="lm_date" DataType="System.String" PropName="Column"/>
+        <Column Name="STEPCODE" Alias="stepcode" DataType="System.String" PropName="Column"/>
+        <Column Name="STEPNAME" Alias="stepname" DataType="System.String" PropName="Column1"/>
+        <Column Name="PLAN_QTY" Alias="plan_qty" DataType="System.String" PropName="Column2"/>
+        <Column Name="GOOD_QTY" Alias="good_qty" DataType="System.String" PropName="Column"/>
+        <Column Name="NG_QTY" Alias="ng_qty" DataType="System.String" PropName="Column1"/>
+        <Column Name="STEPQRCODE" Alias="stepqrcode" DataType="System.String" PropName="Column"/>
+      </TableDataSource>
+    </XmlDataConnection>
+  </Dictionary>
+  <ReportPage Name="Page1" RawPaperSize="9">
+    <ReportTitleBand Name="ReportTitle1" Width="718.2" Height="160.65">
+      <BarcodeObject Name="Barcode1" Left="585.9" Top="18.9" Width="106.55" Height="97.1" AutoSize="false" DataColumn="Table1.wo_code" Text="" ShowText="false" Barcode="QR Code" Barcode.ErrorCorrection="L" Barcode.Encoding="UTF8" Barcode.QuietZone="true"/>
+      <TextObject Name="Text7" Left="253.26" Top="3.78" Width="226.8" Height="28.35" Text="娴佺▼鍗�" HorzAlign="Center" VertAlign="Center" Font="寰蒋闆呴粦, 14.25pt"/>
+      <TextObject Name="Text54" Left="81.95" Top="37.8" Width="141.75" Height="18.9" Text="[Table1.wo_code]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text3" Left="81.95" Top="60.48" Width="141.75" Height="18.9" Text="[Table1.partname]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text39" Left="318.2" Top="37.8" Width="141.75" Height="18.9" Text="[Table1.paetcode]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text48" Left="18.9" Top="37.8" Width="66.15" Height="18.9" Text="宸ュ崟缂栧彿锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text1" Left="18.9" Top="60.48" Width="66.15" Height="18.9" Text="浜у搧鍚嶇О锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text38" Left="255.15" Top="37.8" Width="66.15" Height="18.9" Text="浜у搧缂栫爜锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text55" Left="81.95" Top="85.05" Width="141.75" Height="18.9" Text="[Table1.orderqty]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text56" Left="18.9" Top="85.05" Width="66.15" Height="18.9" Text="宸ュ崟鏁伴噺锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text57" Left="318.2" Top="56.7" Width="141.75" Height="18.9" Text="[Table1.partspec]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text58" Left="255.15" Top="56.7" Width="66.15" Height="18.9" Text="浜у搧瑙勬牸锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text59" Left="318.2" Top="85.05" Width="141.75" Height="18.9" Text="[Table1.routename]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text60" Left="255.15" Top="85.05" Width="66.15" Height="18.9" Text="宸ヨ壓璺嚎锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text61" Left="81.95" Top="113.4" Width="141.75" Height="18.9" Text="[Table1.lm_user]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text62" Left="18.9" Top="113.4" Width="66.15" Height="18.9" Text="鎵撳嵃浜哄憳锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text63" Left="318.2" Top="113.4" Width="141.75" Height="18.9" Text="[Table1.lm_date]" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+      <TextObject Name="Text64" Left="255.15" Top="113.4" Width="66.15" Height="18.9" Text="鎵撳嵃鏃堕棿锛�" AutoWidth="true" HorzAlign="Right" VertAlign="Center" Font="寰蒋闆呴粦, 8pt"/>
+    </ReportTitleBand>
+    <PageHeaderBand Name="PageHeader1" Top="164.65" Width="718.2" Height="35.91">
+      <TableObject Name="Table1" Width="718.17" Height="35.91" Border.Lines="All">
+        <TableColumn Name="Column1" Width="73.23"/>
+        <TableColumn Name="Column2" Width="92.13"/>
+        <TableColumn Name="Column3" Width="129.93"/>
+        <TableColumn Name="Column4" Width="82.68"/>
+        <TableColumn Name="Column45" Width="94.5"/>
+        <TableColumn Name="Column46" Width="94.5"/>
+        <TableColumn Name="Column47" Width="151.2"/>
+        <TableRow Name="Row1" Height="35.91">
+          <TableCell Name="Cell1" Border.Lines="Right" Fill.Color="Gainsboro" Text="宸ュ簭鍙�" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell2" Border.Lines="Right" Fill.Color="Gainsboro" Text="宸ュ簭浜岀淮鐮�" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell3" Border.Lines="Right" Fill.Color="Gainsboro" Text="宸ュ簭" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell4" Border.Lines="Right" Fill.Color="Gainsboro" Text="鍔犲伐鏁伴噺" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell221" Border.Lines="Right" Fill.Color="Gainsboro" Text="鍚堟牸鏁伴噺" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell222" Border.Lines="Right" Fill.Color="Gainsboro" Text="涓嶈壇鏁伴噺" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell223" Fill.Color="Gainsboro" Text="澶囨敞" HorzAlign="Center" VertAlign="Center"/>
+        </TableRow>
+      </TableObject>
+    </PageHeaderBand>
+    <DataBand Name="Data1" Top="204.56" Width="718.2" Height="45.36" DataSource="Table11">
+      <TableObject Name="Table12" Width="718.17" Height="45.36" Border.Lines="All">
+        <TableColumn Name="Column48" Width="73.23"/>
+        <TableColumn Name="Column49" Width="92.13"/>
+        <TableColumn Name="Column50" Width="129.93"/>
+        <TableColumn Name="Column51" Width="82.68"/>
+        <TableColumn Name="Column52" Width="94.5"/>
+        <TableColumn Name="Column53" Width="94.5"/>
+        <TableColumn Name="Column54" Width="151.2"/>
+        <TableRow Name="Row2" Height="45.36">
+          <TableCell Name="Cell224" Border.Lines="Right" Text="[Table1.seq]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell225" Border.Lines="Right" HorzAlign="Center" VertAlign="Center">
+            <BarcodeObject Name="Barcode2" Left="18.9" Top="3.02" Width="60.48" Height="41.58" AutoSize="false" DataColumn="Table1.stepqrcode" Text="" ShowText="false" Barcode="QR Code" Barcode.ErrorCorrection="L" Barcode.Encoding="UTF8" Barcode.QuietZone="true"/>
+          </TableCell>
+          <TableCell Name="Cell226" Border.Lines="Right" Text="[Table1.stepname]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell227" Border.Lines="Right" Text="[Table1.plan_qty]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell228" Border.Lines="Right" Text="[Table1.good_qty]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell229" Border.Lines="Right" Text="[Table1.ng_qty]" HorzAlign="Center" VertAlign="Center"/>
+          <TableCell Name="Cell230" HorzAlign="Center" VertAlign="Center"/>
+        </TableRow>
+      </TableObject>
+    </DataBand>
+  </ReportPage>
+</Report>
diff --git a/VueWebApi/obj/Release/TransformWebConfig/original/Web.config b/VueWebApi/obj/Release/TransformWebConfig/original/Web.config
index 39cfa39..ff7ce4e 100644
--- a/VueWebApi/obj/Release/TransformWebConfig/original/Web.config
+++ b/VueWebApi/obj/Release/TransformWebConfig/original/Web.config
@@ -31,7 +31,7 @@
 	</appSettings>
 	<system.web>
 		<compilation debug="true" targetFramework="4.6.1" />
-		<customErrors mode="Off"/>
+		<customErrors mode="Off" />
 		<httpRuntime targetFramework="4.6.1" />
 		<!--session澶辨晥鏃堕棿-->
 		<sessionState mode="InProc" timeout="240">
@@ -114,6 +114,18 @@
 				<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
 				<bindingRedirect oldVersion="0.0.0.0-4.1.1.3" newVersion="4.0.0.0" />
 			</dependentAssembly>
+			<dependentAssembly>
+				<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+				<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
+			</dependentAssembly>
+			<dependentAssembly>
+				<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+				<bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
+			</dependentAssembly>
+			<dependentAssembly>
+				<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+				<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
+			</dependentAssembly>
 		</assemblyBinding>
 	</runtime>
 	<system.codedom>
diff --git a/VueWebApi/obj/Release/TransformWebConfig/transformed/Web.config b/VueWebApi/obj/Release/TransformWebConfig/transformed/Web.config
index 48bcd0b..15fb914 100644
--- a/VueWebApi/obj/Release/TransformWebConfig/transformed/Web.config
+++ b/VueWebApi/obj/Release/TransformWebConfig/transformed/Web.config
@@ -113,6 +113,18 @@
         <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-4.1.1.3" newVersion="4.0.0.0" />
       </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.0.4.1" newVersion="4.0.4.1" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
+      </dependentAssembly>
     </assemblyBinding>
   </runtime>
   <system.codedom>
diff --git a/VueWebApi/obj/Release/VueWebApi.csproj.AssemblyReference.cache b/VueWebApi/obj/Release/VueWebApi.csproj.AssemblyReference.cache
deleted file mode 100644
index f5e894a..0000000
--- a/VueWebApi/obj/Release/VueWebApi.csproj.AssemblyReference.cache
+++ /dev/null
Binary files differ
diff --git a/VueWebApi/obj/Release/VueWebApi.csproj.CoreCompileInputs.cache b/VueWebApi/obj/Release/VueWebApi.csproj.CoreCompileInputs.cache
index b373bbd..7674f1e 100644
--- a/VueWebApi/obj/Release/VueWebApi.csproj.CoreCompileInputs.cache
+++ b/VueWebApi/obj/Release/VueWebApi.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-20fce33fd342e469daac51efb4a3d8765365c620
+698d89f244c7cde8c23a3c191fa4ccdee5879c01
diff --git a/VueWebApi/obj/Release/VueWebApi.csproj.FileListAbsolute.txt b/VueWebApi/obj/Release/VueWebApi.csproj.FileListAbsolute.txt
index 3dfc178..7728157 100644
--- a/VueWebApi/obj/Release/VueWebApi.csproj.FileListAbsolute.txt
+++ b/VueWebApi/obj/Release/VueWebApi.csproj.FileListAbsolute.txt
@@ -1,4 +1,5 @@
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\VueWebApi.dll.config
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\VueWebApi.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\VueWebApi.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\VueWebApi.pdb
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\roslyn\csc.exe
@@ -50,16 +51,122 @@
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\roslyn\vbc.rsp
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\roslyn\VBCSCompiler.exe
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\roslyn\VBCSCompiler.exe.config
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.Win32.Primitives.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\netstandard.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.AppContext.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Collections.Concurrent.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Collections.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Collections.NonGeneric.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Collections.Specialized.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.ComponentModel.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.ComponentModel.EventBasedAsync.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.ComponentModel.Primitives.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.ComponentModel.TypeConverter.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Console.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Data.Common.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.Contracts.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.Debug.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.FileVersionInfo.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.Process.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.StackTrace.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.TextWriterTraceListener.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.Tools.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.TraceSource.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.Tracing.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Drawing.Primitives.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Dynamic.Runtime.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Globalization.Calendars.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Globalization.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Globalization.Extensions.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.Compression.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.Compression.ZipFile.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.FileSystem.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.FileSystem.DriveInfo.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.FileSystem.Primitives.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.FileSystem.Watcher.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.IsolatedStorage.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.MemoryMappedFiles.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.Pipes.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.UnmanagedMemoryStream.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Linq.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Linq.Expressions.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Linq.Parallel.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Linq.Queryable.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.Http.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.NameResolution.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.NetworkInformation.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.Ping.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.Primitives.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.Requests.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.Security.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.Sockets.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.WebHeaderCollection.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.WebSockets.Client.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.WebSockets.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.ObjectModel.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Reflection.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Reflection.Extensions.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Reflection.Primitives.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Resources.Reader.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Resources.ResourceManager.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Resources.Writer.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.CompilerServices.VisualC.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.Extensions.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.Handles.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.InteropServices.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.InteropServices.RuntimeInformation.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.Numerics.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.Serialization.Formatters.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.Serialization.Json.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.Serialization.Primitives.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.Serialization.Xml.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Security.Claims.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Security.Cryptography.Algorithms.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Security.Cryptography.Csp.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Security.Cryptography.Encoding.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Security.Cryptography.Primitives.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Security.Cryptography.X509Certificates.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Security.Principal.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Security.SecureString.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Text.Encoding.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Text.Encoding.Extensions.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Text.RegularExpressions.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.Overlapped.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.Tasks.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.Tasks.Parallel.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.Thread.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.ThreadPool.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.Timer.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.ValueTuple.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Xml.ReaderWriter.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Xml.XDocument.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Xml.XmlDocument.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Xml.XmlSerializer.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Xml.XPath.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Xml.XPath.XDocument.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Antlr3.Runtime.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\BouncyCastle.Crypto.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Dapper.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.Bars.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.Editor.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.Service.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.VSDesign.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.Web.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\ICSharpCode.SharpZipLib.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\JWT.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\log4net.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.AspNetCore.Http.Abstractions.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.AspNetCore.Http.Features.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.AspNetCore.Mvc.Abstractions.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.AspNetCore.Routing.Abstractions.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.Bcl.AsyncInterfaces.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.Extensions.Primitives.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.Net.Http.Headers.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.Web.Infrastructure.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Newtonsoft.Json.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\NPOI.dll
@@ -74,14 +181,14 @@
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\StackExchange.Redis.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Swashbuckle.Core.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Buffers.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.CodeDom.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.PerformanceCounter.dll
-D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.Compression.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.Pipelines.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Memory.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.Http.Formatting.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Numerics.Vectors.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.CompilerServices.Unsafe.dll
-D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.InteropServices.RuntimeInformation.dll
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Text.Encodings.Web.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.Channels.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.Tasks.Extensions.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Web.Cors.dll
@@ -97,18 +204,23 @@
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Web.WebPages.Razor.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\WebActivatorEx.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\WebGrease.dll
-D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.Bars.dll
-D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.Editor.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\BouncyCastle.Crypto.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Dapper.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.xml
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.Service.dll.config
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\FastReport.Web.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\ICSharpCode.SharpZipLib.pdb
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\ICSharpCode.SharpZipLib.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\JWT.pdb
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\JWT.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\log4net.xml
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.AspNetCore.Http.Abstractions.xml
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.AspNetCore.Http.Features.xml
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.AspNetCore.Mvc.Abstractions.xml
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.AspNetCore.Routing.Abstractions.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.Bcl.AsyncInterfaces.xml
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.Extensions.Primitives.xml
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Microsoft.Net.Http.Headers.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\Newtonsoft.Json.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\NPOI.pdb
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\NPOI.xml
@@ -124,12 +236,14 @@
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\ServiceStack.Text.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\StackExchange.Redis.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Buffers.xml
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.CodeDom.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Diagnostics.PerformanceCounter.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.IO.Pipelines.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Memory.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Net.Http.Formatting.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Numerics.Vectors.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Runtime.CompilerServices.Unsafe.xml
+D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Text.Encodings.Web.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.Channels.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Threading.Tasks.Extensions.xml
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\System.Web.Http.xml
@@ -154,7 +268,6 @@
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\zh-Hans\System.Web.WebPages.resources.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\zh-Hans\System.Web.WebPages.Deployment.resources.dll
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\bin\zh-Hans\System.Web.WebPages.Razor.resources.dll
-D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\obj\Release\VueWebApi.csproj.AssemblyReference.cache
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\obj\Release\VueWebApi.csproj.CoreCompileInputs.cache
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\obj\Release\VueWebApi.csproj.CopyComplete
 D:\鏂板嚡杩狹ES\VueWebApi\VueWebApi\obj\Release\VueWebApi.dll
diff --git a/VueWebApi/obj/Release/VueWebApi.pdb b/VueWebApi/obj/Release/VueWebApi.pdb
index 9096656..bc0aa6c 100644
--- a/VueWebApi/obj/Release/VueWebApi.pdb
+++ b/VueWebApi/obj/Release/VueWebApi.pdb
Binary files differ
diff --git a/VueWebApi/packages.config b/VueWebApi/packages.config
index df86b1c..19654a1 100644
--- a/VueWebApi/packages.config
+++ b/VueWebApi/packages.config
@@ -24,8 +24,14 @@
   <package id="Microsoft.AspNet.WebApi.WebHost.zh-Hans" version="5.2.9" targetFramework="net461" />
   <package id="Microsoft.AspNet.WebPages" version="3.2.7" targetFramework="net461" />
   <package id="Microsoft.AspNet.WebPages.zh-Hans" version="3.2.7" targetFramework="net461" />
+  <package id="Microsoft.AspNetCore.Http.Abstractions" version="2.2.0" targetFramework="net461" />
+  <package id="Microsoft.AspNetCore.Http.Features" version="2.2.0" targetFramework="net461" />
+  <package id="Microsoft.AspNetCore.Mvc.Abstractions" version="2.2.0" targetFramework="net461" />
+  <package id="Microsoft.AspNetCore.Routing.Abstractions" version="2.2.0" targetFramework="net461" />
   <package id="Microsoft.Bcl.AsyncInterfaces" version="5.0.0" targetFramework="net461" />
   <package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="2.0.1" targetFramework="net461" />
+  <package id="Microsoft.Extensions.Primitives" version="2.2.0" targetFramework="net461" />
+  <package id="Microsoft.Net.Http.Headers" version="2.2.0" targetFramework="net461" />
   <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net461" />
   <package id="Modernizr" version="2.8.3" targetFramework="net461" />
   <package id="Newtonsoft.Json" version="12.0.2" targetFramework="net461" />
@@ -41,13 +47,16 @@
   <package id="Swashbuckle" version="5.6.0" targetFramework="net461" />
   <package id="Swashbuckle.Core" version="5.6.0" targetFramework="net461" />
   <package id="System.Buffers" version="4.5.1" targetFramework="net461" />
+  <package id="System.CodeDom" version="6.0.0" targetFramework="net461" />
   <package id="System.Diagnostics.PerformanceCounter" version="5.0.0" targetFramework="net461" />
   <package id="System.IO.Compression" version="4.3.0" targetFramework="net461" />
   <package id="System.IO.Pipelines" version="5.0.1" targetFramework="net461" />
+  <package id="System.Management" version="6.0.0" targetFramework="net461" />
   <package id="System.Memory" version="4.5.4" targetFramework="net461" />
   <package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net461" />
   <package id="System.Runtime.CompilerServices.Unsafe" version="4.5.3" targetFramework="net461" />
   <package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net461" />
+  <package id="System.Text.Encodings.Web" version="4.5.0" targetFramework="net461" />
   <package id="System.Threading.Channels" version="5.0.0" targetFramework="net461" />
   <package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net461" />
   <package id="WebActivatorEx" version="2.0" targetFramework="net461" />
diff --git a/packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/.signature.p7s b/packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/.signature.p7s
new file mode 100644
index 0000000..f7aaa8c
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/.signature.p7s
Binary files differ
diff --git a/packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/Microsoft.AspNetCore.Http.Abstractions.2.2.0.nupkg b/packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/Microsoft.AspNetCore.Http.Abstractions.2.2.0.nupkg
new file mode 100644
index 0000000..3510b10
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/Microsoft.AspNetCore.Http.Abstractions.2.2.0.nupkg
Binary files differ
diff --git a/packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.xml b/packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.xml
new file mode 100644
index 0000000..6e1ad17
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Http.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.xml
@@ -0,0 +1,1555 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.AspNetCore.Http.Abstractions</name>
+    </assembly>
+    <members>
+        <member name="T:Microsoft.Extensions.Internal.ActivatorUtilities">
+            <summary>
+            Helper code for the various activator services.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.CreateInstance(System.IServiceProvider,System.Type,System.Object[])">
+            <summary>
+            Instantiate a type with constructor arguments provided directly and/or from an <see cref="T:System.IServiceProvider"/>.
+            </summary>
+            <param name="provider">The service provider used to resolve dependencies</param>
+            <param name="instanceType">The type to activate</param>
+            <param name="parameters">Constructor arguments not provided by the <paramref name="provider"/>.</param>
+            <returns>An activated object of type instanceType</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.CreateFactory(System.Type,System.Type[])">
+            <summary>
+            Create a delegate that will instantiate a type with constructor arguments provided directly
+            and/or from an <see cref="T:System.IServiceProvider"/>.
+            </summary>
+            <param name="instanceType">The type to activate</param>
+            <param name="argumentTypes">
+            The types of objects, in order, that will be passed to the returned function as its second parameter
+            </param>
+            <returns>
+            A factory that will instantiate instanceType using an <see cref="T:System.IServiceProvider"/>
+            and an argument array containing objects matching the types defined in argumentTypes
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.CreateInstance``1(System.IServiceProvider,System.Object[])">
+            <summary>
+            Instantiate a type with constructor arguments provided directly and/or from an <see cref="T:System.IServiceProvider"/>.
+            </summary>
+            <typeparam name="T">The type to activate</typeparam>
+            <param name="provider">The service provider used to resolve dependencies</param>
+            <param name="parameters">Constructor arguments not provided by the <paramref name="provider"/>.</param>
+            <returns>An activated object of type T</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.GetServiceOrCreateInstance``1(System.IServiceProvider)">
+            <summary>
+            Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+            </summary>
+            <typeparam name="T">The type of the service</typeparam>
+            <param name="provider">The service provider used to resolve dependencies</param>
+            <returns>The resolved service or created instance</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ActivatorUtilities.GetServiceOrCreateInstance(System.IServiceProvider,System.Type)">
+            <summary>
+            Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+            </summary>
+            <param name="provider">The service provider</param>
+            <param name="type">The type of the service</param>
+            <returns>The resolved service or created instance</returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Internal.ActivatorUtilitiesConstructorAttribute">
+            <summary>
+            Marks the constructor to be used when activating type using <see cref="T:Microsoft.Extensions.Internal.ActivatorUtilities"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.Extensions.Internal.ObjectFactory">
+            <summary>
+            The result of <see cref="M:Microsoft.Extensions.Internal.ActivatorUtilities.CreateFactory(System.Type,System.Type[])"/>.
+            </summary>
+            <param name="serviceProvider">The <see cref="T:System.IServiceProvider"/> to get service arguments from.</param>
+            <param name="arguments">Additional constructor arguments.</param>
+            <returns>The instantiated type.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Authentication.AuthenticateInfo">
+            <summary>
+            Used to store the results of an Authenticate call.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticateInfo.Principal">
+            <summary>
+            The <see cref="T:System.Security.Claims.ClaimsPrincipal"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticateInfo.Properties">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticateInfo.Description">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription">
+            <summary>
+            Contains information describing an authentication provider.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription"/> class
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.#ctor(System.Collections.Generic.IDictionary{System.String,System.Object})">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription"/> class
+            </summary>
+            <param name="items"></param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.Items">
+            <summary>
+            Contains metadata about the authentication provider.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.AuthenticationScheme">
+            <summary>
+            Gets or sets the name used to reference the authentication middleware instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationDescription.DisplayName">
+            <summary>
+            Gets or sets the display name for the authentication provider.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.Authentication.AuthenticationManager.AutomaticScheme">
+            <summary>
+            Constant used to represent the automatic scheme
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationManager.ForbidAsync">
+            <summary>
+            Creates a challenge for the authentication manager with <see cref="F:Microsoft.AspNetCore.Http.Features.Authentication.ChallengeBehavior.Forbidden"/>.
+            </summary>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that represents the asynchronous challenge operation.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationManager.ForbidAsync(Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties)">
+            <summary>
+            Creates a challenge for the authentication manager with <see cref="F:Microsoft.AspNetCore.Http.Features.Authentication.ChallengeBehavior.Forbidden"/>.
+            </summary>
+            <param name="properties">Additional arbitrary values which may be used by particular authentication types.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that represents the asynchronous challenge operation.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties">
+            <summary>
+            Dictionary used to store state values about the authentication session.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties"/> class
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.#ctor(System.Collections.Generic.IDictionary{System.String,System.String})">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties"/> class
+            </summary>
+            <param name="items"></param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.Items">
+            <summary>
+            State values about the authentication session.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.IsPersistent">
+            <summary>
+            Gets or sets whether the authentication session is persisted across multiple requests.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.RedirectUri">
+            <summary>
+            Gets or sets the full path or absolute URI to be used as an HTTP redirect response value.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.IssuedUtc">
+            <summary>
+            Gets or sets the time at which the authentication ticket was issued.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.ExpiresUtc">
+            <summary>
+            Gets or sets the time at which the authentication ticket expires.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Authentication.AuthenticationProperties.AllowRefresh">
+            <summary>
+            Gets or sets if refreshing the authentication session should be allowed.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.ConnectionInfo.Id">
+            <summary>
+            Gets or sets a unique identifier to represent this connection.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.CookieBuilder">
+            <summary>
+            Defines settings used to create a cookie.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.Name">
+            <summary>
+            The name of the cookie.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.Path">
+            <summary>
+            The cookie path.
+            </summary>
+            <remarks>
+            Determines the value that will set on <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.Path"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.Domain">
+            <summary>
+            The domain to associate the cookie with.
+            </summary>
+            <remarks>
+            Determines the value that will set on <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.Domain"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.HttpOnly">
+            <summary>
+            Indicates whether a cookie is accessible by client-side script.
+            </summary>
+            <remarks>
+            Determines the value that will set on <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.HttpOnly"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.SameSite">
+            <summary>
+            The SameSite attribute of the cookie. The default value is <see cref="F:Microsoft.AspNetCore.Http.SameSiteMode.Lax"/>
+            </summary>
+            <remarks>
+            Determines the value that will set on <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.SameSite"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.SecurePolicy">
+            <summary>
+            The policy that will be used to determine <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.Secure"/>.
+            This is determined from the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> passed to <see cref="M:Microsoft.AspNetCore.Http.CookieBuilder.Build(Microsoft.AspNetCore.Http.HttpContext,System.DateTimeOffset)"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.Expiration">
+            <summary>
+            Gets or sets the lifespan of a cookie.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.MaxAge">
+            <summary>
+            Gets or sets the max-age for the cookie.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieBuilder.IsEssential">
+            <summary>
+            Indicates if this cookie is essential for the application to function correctly. If true then
+            consent policy checks may be bypassed. The default value is false.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.CookieBuilder.Build(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Creates the cookie options from the given <paramref name="context"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.</param>
+            <returns>The cookie options.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.CookieBuilder.Build(Microsoft.AspNetCore.Http.HttpContext,System.DateTimeOffset)">
+            <summary>
+            Creates the cookie options from the given <paramref name="context"/> with an expiration based on <paramref name="expiresFrom"/> and <see cref="P:Microsoft.AspNetCore.Http.CookieBuilder.Expiration"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.</param>
+            <param name="expiresFrom">The time to use as the base for computing <seealso cref="P:Microsoft.AspNetCore.Http.CookieOptions.Expires" />.</param>
+            <returns>The cookie options.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.CookieSecurePolicy">
+            <summary>
+            Determines how cookie security properties are set.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.CookieSecurePolicy.SameAsRequest">
+            <summary>
+            If the URI that provides the cookie is HTTPS, then the cookie will only be returned to the server on 
+            subsequent HTTPS requests. Otherwise if the URI that provides the cookie is HTTP, then the cookie will 
+            be returned to the server on all HTTP and HTTPS requests. This is the default value because it ensures
+            HTTPS for all authenticated requests on deployed servers, and also supports HTTP for localhost development 
+            and for servers that do not have HTTPS support.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.CookieSecurePolicy.Always">
+            <summary>
+            Secure is always marked true. Use this value when your login page and all subsequent pages
+            requiring the authenticated identity are HTTPS. Local development will also need to be done with HTTPS urls.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.CookieSecurePolicy.None">
+            <summary>
+            Secure is not marked true. Use this value when your login page is HTTPS, but other pages
+            on the site which are HTTP also require authentication information. This setting is not recommended because
+            the authentication information provided with an HTTP request may be observed and used by other computers
+            on your local network or wireless connection.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HeaderDictionaryExtensions.Append(Microsoft.AspNetCore.Http.IHeaderDictionary,System.String,Microsoft.Extensions.Primitives.StringValues)">
+            <summary>
+            Add new values. Each item remains a separate array entry.
+            </summary>
+            <param name="headers">The <see cref="T:Microsoft.AspNetCore.Http.IHeaderDictionary"/> to use.</param>
+            <param name="key">The header name.</param>
+            <param name="value">The header value.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HeaderDictionaryExtensions.AppendCommaSeparatedValues(Microsoft.AspNetCore.Http.IHeaderDictionary,System.String,System.String[])">
+            <summary>
+            Quotes any values containing commas, and then comma joins all of the values with any existing values.
+            </summary>
+            <param name="headers">The <see cref="T:Microsoft.AspNetCore.Http.IHeaderDictionary"/> to use.</param>
+            <param name="key">The header name.</param>
+            <param name="values">The header values.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HeaderDictionaryExtensions.GetCommaSeparatedValues(Microsoft.AspNetCore.Http.IHeaderDictionary,System.String)">
+            <summary>
+            Get the associated values from the collection separated into individual values.
+            Quoted values will not be split, and the quotes will be removed.
+            </summary>
+            <param name="headers">The <see cref="T:Microsoft.AspNetCore.Http.IHeaderDictionary"/> to use.</param>
+            <param name="key">The header name.</param>
+            <returns>the associated values from the collection separated into individual values, or StringValues.Empty if the key is not present.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HeaderDictionaryExtensions.SetCommaSeparatedValues(Microsoft.AspNetCore.Http.IHeaderDictionary,System.String,System.String[])">
+            <summary>
+            Quotes any values containing commas, and then comma joins all of the values.
+            </summary>
+            <param name="headers">The <see cref="T:Microsoft.AspNetCore.Http.IHeaderDictionary"/> to use.</param>
+            <param name="key">The header name.</param>
+            <param name="values">The header values.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HttpResponseWritingExtensions">
+            <summary>
+            Convenience methods for writing to the response.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponseWritingExtensions.WriteAsync(Microsoft.AspNetCore.Http.HttpResponse,System.String,System.Threading.CancellationToken)">
+            <summary>
+            Writes the given text to the response body. UTF-8 encoding will be used.
+            </summary>
+            <param name="response">The <see cref="T:Microsoft.AspNetCore.Http.HttpResponse"/>.</param>
+            <param name="text">The text to write to the response.</param>
+            <param name="cancellationToken">Notifies when request operations should be cancelled.</param>
+            <returns>A task that represents the completion of the write operation.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponseWritingExtensions.WriteAsync(Microsoft.AspNetCore.Http.HttpResponse,System.String,System.Text.Encoding,System.Threading.CancellationToken)">
+            <summary>
+            Writes the given text to the response body using the given encoding.
+            </summary>
+            <param name="response">The <see cref="T:Microsoft.AspNetCore.Http.HttpResponse"/>.</param>
+            <param name="text">The text to write to the response.</param>
+            <param name="encoding">The encoding to use.</param>
+            <param name="cancellationToken">Notifies when request operations should be cancelled.</param>
+            <returns>A task that represents the completion of the write operation.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ResponseTrailerExtensions.DeclareTrailer(Microsoft.AspNetCore.Http.HttpResponse,System.String)">
+            <summary>
+            Adds the given trailer name to the 'Trailer' response header. This must happen before the response headers are sent.
+            </summary>
+            <param name="response"></param>
+            <param name="trailerName"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ResponseTrailerExtensions.SupportsTrailers(Microsoft.AspNetCore.Http.HttpResponse)">
+            <summary>
+            Indicates if the server supports sending trailer headers for this response.
+            </summary>
+            <param name="response"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ResponseTrailerExtensions.AppendTrailer(Microsoft.AspNetCore.Http.HttpResponse,System.String,Microsoft.Extensions.Primitives.StringValues)">
+            <summary>
+            Adds the given trailer header to the trailers collection to be sent at the end of the response body.
+            Check <see cref="M:Microsoft.AspNetCore.Http.ResponseTrailerExtensions.SupportsTrailers(Microsoft.AspNetCore.Http.HttpResponse)" /> or an InvalidOperationException may be thrown.
+            </summary>
+            <param name="response"></param>
+            <param name="trailerName"></param>
+            <param name="trailerValues"></param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.FragmentString">
+            <summary>
+            Provides correct handling for FragmentString value when needed to generate a URI string
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.FragmentString.Empty">
+            <summary>
+            Represents the empty fragment string. This field is read-only.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.#ctor(System.String)">
+            <summary>
+            Initialize the fragment string with a given value. This value must be in escaped and delimited format with
+            a leading '#' character.
+            </summary>
+            <param name="value">The fragment string to be assigned to the Value property.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.FragmentString.Value">
+            <summary>
+            The escaped fragment string with the leading '#' character
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.FragmentString.HasValue">
+            <summary>
+            True if the fragment string is not empty
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.ToString">
+            <summary>
+            Provides the fragment string escaped in a way which is correct for combining into the URI representation.
+            A leading '#' character will be included unless the Value is null or empty. Characters which are potentially
+            dangerous are escaped.
+            </summary>
+            <returns>The fragment string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.ToUriComponent">
+            <summary>
+            Provides the fragment string escaped in a way which is correct for combining into the URI representation.
+            A leading '#' character will be included unless the Value is null or empty. Characters which are potentially
+            dangerous are escaped.
+            </summary>
+            <returns>The fragment string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.FromUriComponent(System.String)">
+            <summary>
+            Returns an FragmentString given the fragment as it is escaped in the URI format. The string MUST NOT contain any
+            value that is not a fragment.
+            </summary>
+            <param name="uriComponent">The escaped fragment as it appears in the URI format.</param>
+            <returns>The resulting FragmentString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.FragmentString.FromUriComponent(System.Uri)">
+            <summary>
+            Returns an FragmentString given the fragment as from a Uri object. Relative Uri objects are not supported.
+            </summary>
+            <param name="uri">The Uri object</param>
+            <returns>The resulting FragmentString</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HostString">
+            <summary>
+            Represents the host portion of a URI can be used to construct URI's properly formatted and encoded for use in
+            HTTP headers.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.#ctor(System.String)">
+            <summary>
+            Creates a new HostString without modification. The value should be Unicode rather than punycode, and may have a port.
+            IPv4 and IPv6 addresses are also allowed, and also may have ports.
+            </summary>
+            <param name="value"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.#ctor(System.String,System.Int32)">
+            <summary>
+            Creates a new HostString from its host and port parts.
+            </summary>
+            <param name="host">The value should be Unicode rather than punycode. IPv6 addresses must use square braces.</param>
+            <param name="port">A positive, greater than 0 value representing the port in the host string.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HostString.Value">
+            <summary>
+            Returns the original value from the constructor.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HostString.Host">
+            <summary>
+            Returns the value of the host part of the value. The port is removed if it was present.
+            IPv6 addresses will have brackets added if they are missing.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HostString.Port">
+            <summary>
+            Returns the value of the port part of the host, or <value>null</value> if none is found.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.ToString">
+            <summary>
+            Returns the value as normalized by ToUriComponent().
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.ToUriComponent">
+            <summary>
+            Returns the value properly formatted and encoded for use in a URI in a HTTP header.
+            Any Unicode is converted to punycode. IPv6 addresses will have brackets added if they are missing.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.FromUriComponent(System.String)">
+            <summary>
+            Creates a new HostString from the given URI component.
+            Any punycode will be converted to Unicode.
+            </summary>
+            <param name="uriComponent"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.FromUriComponent(System.Uri)">
+            <summary>
+            Creates a new HostString from the host and port of the give Uri instance.
+            Punycode will be converted to Unicode.
+            </summary>
+            <param name="uri"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.MatchesAny(Microsoft.Extensions.Primitives.StringSegment,System.Collections.Generic.IList{Microsoft.Extensions.Primitives.StringSegment})">
+            <summary>
+            Matches the host portion of a host header value against a list of patterns.
+            The host may be the encoded punycode or decoded unicode form so long as the pattern
+            uses the same format.
+            </summary>
+            <param name="value">Host header value with or without a port.</param>
+            <param name="patterns">A set of pattern to match, without ports.</param>
+            <remarks>
+            The port on the given value is ignored. The patterns should not have ports.
+            The patterns may be exact matches like "example.com", a top level wildcard "*"
+            that matches all hosts, or a subdomain wildcard like "*.example.com" that matches
+            "abc.example.com:443" but not "example.com:443".
+            Matching is case insensitive.
+            </remarks>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.Equals(Microsoft.AspNetCore.Http.HostString)">
+            <summary>
+            Compares the equality of the Value property, ignoring case.
+            </summary>
+            <param name="other"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.Equals(System.Object)">
+            <summary>
+            Compares against the given object only if it is a HostString.
+            </summary>
+            <param name="obj"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.GetHashCode">
+            <summary>
+            Gets a hash code for the value.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.op_Equality(Microsoft.AspNetCore.Http.HostString,Microsoft.AspNetCore.Http.HostString)">
+            <summary>
+            Compares the two instances for equality.
+            </summary>
+            <param name="left"></param>
+            <param name="right"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.op_Inequality(Microsoft.AspNetCore.Http.HostString,Microsoft.AspNetCore.Http.HostString)">
+            <summary>
+            Compares the two instances for inequality.
+            </summary>
+            <param name="left"></param>
+            <param name="right"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HostString.GetParts(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment@,Microsoft.Extensions.Primitives.StringSegment@)">
+            <summary>
+            Parses the current value. IPv6 addresses will have brackets added if they are missing.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HttpContext">
+            <summary>
+            Encapsulates all HTTP-specific information about an individual HTTP request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Features">
+            <summary>
+            Gets the collection of HTTP features provided by the server and middleware available on this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Request">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpRequest"/> object for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Response">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpResponse"/> object for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Connection">
+            <summary>
+            Gets information about the underlying connection for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.WebSockets">
+            <summary>
+            Gets an object that manages the establishment of WebSocket connections for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Authentication">
+            <summary>
+            This is obsolete and will be removed in a future version. 
+            The recommended alternative is to use Microsoft.AspNetCore.Authentication.AuthenticationHttpContextExtensions.
+            See https://go.microsoft.com/fwlink/?linkid=845470.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.User">
+            <summary>
+            Gets or sets the user for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Items">
+            <summary>
+            Gets or sets a key/value collection that can be used to share data within the scope of this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.RequestServices">
+            <summary>
+            Gets or sets the <see cref="T:System.IServiceProvider"/> that provides access to the request's service container.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.RequestAborted">
+            <summary>
+            Notifies when the connection underlying this request is aborted and thus request operations should be
+            cancelled.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.TraceIdentifier">
+            <summary>
+            Gets or sets a unique identifier to represent this request in trace logs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpContext.Session">
+            <summary>
+            Gets or sets the object used to manage user session data for this request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpContext.Abort">
+            <summary>
+            Aborts the connection underlying this request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HttpRequest">
+            <summary>
+            Represents the incoming side of an individual HTTP request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.HttpContext">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.HttpContext"/> for this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Method">
+            <summary>
+            Gets or sets the HTTP method.
+            </summary>
+            <returns>The HTTP method.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Scheme">
+            <summary>
+            Gets or sets the HTTP request scheme.
+            </summary>
+            <returns>The HTTP request scheme.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.IsHttps">
+            <summary>
+            Returns true if the RequestScheme is https.
+            </summary>
+            <returns>true if this request is using https; otherwise, false.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Host">
+            <summary>
+            Gets or sets the Host header. May include the port.
+            </summary>
+            <return>The Host header.</return>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.PathBase">
+            <summary>
+            Gets or sets the RequestPathBase.
+            </summary>
+            <returns>The RequestPathBase.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Path">
+            <summary>
+            Gets or sets the request path from RequestPath.
+            </summary>
+            <returns>The request path from RequestPath.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.QueryString">
+            <summary>
+            Gets or sets the raw query string used to create the query collection in Request.Query.
+            </summary>
+            <returns>The raw query string.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Query">
+            <summary>
+            Gets the query value collection parsed from Request.QueryString.
+            </summary>
+            <returns>The query value collection parsed from Request.QueryString.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Protocol">
+            <summary>
+            Gets or sets the RequestProtocol.
+            </summary>
+            <returns>The RequestProtocol.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Headers">
+            <summary>
+            Gets the request headers.
+            </summary>
+            <returns>The request headers.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Cookies">
+            <summary>
+            Gets the collection of Cookies for this request.
+            </summary>
+            <returns>The collection of Cookies for this request.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.ContentLength">
+            <summary>
+            Gets or sets the Content-Length header.
+            </summary>
+            <returns>The value of the Content-Length header, if any.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.ContentType">
+            <summary>
+            Gets or sets the Content-Type header.
+            </summary>
+            <returns>The Content-Type header.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Body">
+            <summary>
+            Gets or sets the RequestBody Stream.
+            </summary>
+            <returns>The RequestBody Stream.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.HasFormContentType">
+            <summary>
+            Checks the Content-Type header for form types.
+            </summary>
+            <returns>true if the Content-Type header represents a form content type; otherwise, false.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpRequest.Form">
+            <summary>
+            Gets or sets the request body as a form.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpRequest.ReadFormAsync(System.Threading.CancellationToken)">
+            <summary>
+            Reads the request body if it is a form.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.HttpResponse">
+            <summary>
+            Represents the outgoing side of an individual HTTP request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.HttpContext">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Http.HttpResponse.HttpContext"/> for this response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.StatusCode">
+            <summary>
+            Gets or sets the HTTP response code.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.Headers">
+            <summary>
+            Gets the response headers.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.Body">
+            <summary>
+            Gets or sets the response body <see cref="T:System.IO.Stream"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.ContentLength">
+            <summary>
+            Gets or sets the value for the <c>Content-Length</c> response header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.ContentType">
+            <summary>
+            Gets or sets the value for the <c>Content-Type</c> response header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.Cookies">
+            <summary>
+            Gets an object that can be used to manage cookies for this response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.HttpResponse.HasStarted">
+            <summary>
+            Gets a value indicating whether response headers have been sent to the client.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.OnStarting(System.Func{System.Object,System.Threading.Tasks.Task},System.Object)">
+            <summary>
+            Adds a delegate to be invoked just before response headers will be sent to the client.
+            </summary>
+            <param name="callback">The delegate to execute.</param>
+            <param name="state">A state object to capture and pass back to the delegate.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.OnStarting(System.Func{System.Threading.Tasks.Task})">
+            <summary>
+            Adds a delegate to be invoked just before response headers will be sent to the client.
+            </summary>
+            <param name="callback">The delegate to execute.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.OnCompleted(System.Func{System.Object,System.Threading.Tasks.Task},System.Object)">
+            <summary>
+            Adds a delegate to be invoked after the response has finished being sent to the client.
+            </summary>
+            <param name="callback">The delegate to invoke.</param>
+            <param name="state">A state object to capture and pass back to the delegate.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.RegisterForDispose(System.IDisposable)">
+            <summary>
+            Registers an object for disposal by the host once the request has finished processing.
+            </summary>
+            <param name="disposable">The object to be disposed.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.OnCompleted(System.Func{System.Threading.Tasks.Task})">
+            <summary>
+            Adds a delegate to be invoked after the response has finished being sent to the client.
+            </summary>
+            <param name="callback">The delegate to invoke.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.Redirect(System.String)">
+            <summary>
+            Returns a temporary redirect response (HTTP 302) to the client.
+            </summary>
+            <param name="location">The URL to redirect the client to. This must be properly encoded for use in http headers
+            where only ASCII characters are allowed.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.HttpResponse.Redirect(System.String,System.Boolean)">
+            <summary>
+            Returns a redirect response (HTTP 301 or HTTP 302) to the client.
+            </summary>
+            <param name="location">The URL to redirect the client to. This must be properly encoded for use in http headers
+            where only ASCII characters are allowed.</param>
+            <param name="permanent"><c>True</c> if the redirect is permanent (301), otherwise <c>false</c> (302).</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IMiddleware">
+            <summary>
+            Defines middleware that can be added to the application's request pipeline.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IMiddleware.InvokeAsync(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Http.RequestDelegate)">
+            <summary>
+            Request handling method.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <param name="next">The delegate representing the remaining middleware in the request pipeline.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that represents the execution of this middleware.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IMiddlewareFactory">
+            <summary>
+            Provides methods to create middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IMiddlewareFactory.Create(System.Type)">
+            <summary>
+            Creates a middleware instance for each request.
+            </summary>
+            <param name="middlewareType">The concrete <see cref="T:System.Type"/> of the <see cref="T:Microsoft.AspNetCore.Http.IMiddleware"/>.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Http.IMiddleware"/> instance.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IMiddlewareFactory.Release(Microsoft.AspNetCore.Http.IMiddleware)">
+            <summary>
+            Releases a <see cref="T:Microsoft.AspNetCore.Http.IMiddleware"/> instance at the end of each request.
+            </summary>
+            <param name="middleware">The <see cref="T:Microsoft.AspNetCore.Http.IMiddleware"/> instance to release.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.PathString">
+            <summary>
+            Provides correct escaping for Path and PathBase values when needed to reconstruct a request or redirect URI string
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.PathString.Empty">
+            <summary>
+            Represents the empty path. This field is read-only.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.#ctor(System.String)">
+            <summary>
+            Initialize the path string with a given value. This value must be in unescaped format. Use
+            PathString.FromUriComponent(value) if you have a path value which is in an escaped format.
+            </summary>
+            <param name="value">The unescaped path to be assigned to the Value property.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.PathString.Value">
+            <summary>
+            The unescaped path value
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.PathString.HasValue">
+            <summary>
+            True if the path is not empty
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.ToString">
+            <summary>
+            Provides the path string escaped in a way which is correct for combining into the URI representation.
+            </summary>
+            <returns>The escaped path value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.ToUriComponent">
+            <summary>
+            Provides the path string escaped in a way which is correct for combining into the URI representation.
+            </summary>
+            <returns>The escaped path value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.FromUriComponent(System.String)">
+            <summary>
+            Returns an PathString given the path as it is escaped in the URI format. The string MUST NOT contain any
+            value that is not a path.
+            </summary>
+            <param name="uriComponent">The escaped path as it appears in the URI format.</param>
+            <returns>The resulting PathString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.FromUriComponent(System.Uri)">
+            <summary>
+            Returns an PathString given the path as from a Uri object. Relative Uri objects are not supported.
+            </summary>
+            <param name="uri">The Uri object</param>
+            <returns>The resulting PathString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/>.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,System.StringComparison)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> when compared
+            using the specified comparison option.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="comparisonType">One of the enumeration values that determines how this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and value are compared.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString@)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and returns
+            the remaining segments.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="remaining">The remaining segments after the match.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,System.StringComparison,Microsoft.AspNetCore.Http.PathString@)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> when compared
+            using the specified comparison option and returns the remaining segments.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="comparisonType">One of the enumeration values that determines how this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and value are compared.</param>
+            <param name="remaining">The remaining segments after the match.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString@,Microsoft.AspNetCore.Http.PathString@)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and returns
+            the matched and remaining segments.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="matched">The matched segments with the original casing in the source value.</param>
+            <param name="remaining">The remaining segments after the match.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.StartsWithSegments(Microsoft.AspNetCore.Http.PathString,System.StringComparison,Microsoft.AspNetCore.Http.PathString@,Microsoft.AspNetCore.Http.PathString@)">
+            <summary>
+            Determines whether the beginning of this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> instance matches the specified <see cref="T:Microsoft.AspNetCore.Http.PathString"/> when compared
+            using the specified comparison option and returns the matched and remaining segments.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Http.PathString"/> to compare.</param>
+            <param name="comparisonType">One of the enumeration values that determines how this <see cref="T:Microsoft.AspNetCore.Http.PathString"/> and value are compared.</param>
+            <param name="matched">The matched segments with the original casing in the source value.</param>
+            <param name="remaining">The remaining segments after the match.</param>
+            <returns>true if value matches the beginning of this string; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Add(Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Adds two PathString instances into a combined PathString value.
+            </summary>
+            <returns>The combined PathString value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Add(Microsoft.AspNetCore.Http.QueryString)">
+            <summary>
+            Combines a PathString and QueryString into the joined URI formatted string value.
+            </summary>
+            <returns>The joined URI formatted string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Equals(Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Compares this PathString value to another value. The default comparison is StringComparison.OrdinalIgnoreCase.
+            </summary>
+            <param name="other">The second PathString for comparison.</param>
+            <returns>True if both PathString values are equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Equals(Microsoft.AspNetCore.Http.PathString,System.StringComparison)">
+            <summary>
+            Compares this PathString value to another value using a specific StringComparison type
+            </summary>
+            <param name="other">The second PathString for comparison</param>
+            <param name="comparisonType">The StringComparison type to use</param>
+            <returns>True if both PathString values are equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.Equals(System.Object)">
+            <summary>
+            Compares this PathString value to another value. The default comparison is StringComparison.OrdinalIgnoreCase.
+            </summary>
+            <param name="obj">The second PathString for comparison.</param>
+            <returns>True if both PathString values are equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.GetHashCode">
+            <summary>
+            Returns the hash code for the PathString value. The hash code is provided by the OrdinalIgnoreCase implementation.
+            </summary>
+            <returns>The hash code</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Equality(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Operator call through to Equals
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>True if both PathString values are equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Inequality(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Operator call through to Equals
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>True if both PathString values are not equal</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Addition(System.String,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>The ToString combination of both values</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Addition(Microsoft.AspNetCore.Http.PathString,System.String)">
+            <summary>
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>The ToString combination of both values</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Addition(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Operator call through to Add
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>The PathString combination of both values</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Addition(Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.QueryString)">
+            <summary>
+            Operator call through to Add
+            </summary>
+            <param name="left">The left parameter</param>
+            <param name="right">The right parameter</param>
+            <returns>The PathString combination of both values</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Implicit(System.String)~Microsoft.AspNetCore.Http.PathString">
+            <summary>
+            Implicitly creates a new PathString from the given string.
+            </summary>
+            <param name="s"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.PathString.op_Implicit(Microsoft.AspNetCore.Http.PathString)~System.String">
+            <summary>
+            Implicitly calls ToString().
+            </summary>
+            <param name="path"></param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareIServiceProviderNotAvailable">
+            <summary>
+            '{0}' is not available.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareIServiceProviderNotAvailable(System.Object)">
+            <summary>
+            '{0}' is not available.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareNoInvokeMethod">
+            <summary>
+            No public '{0}' or '{1}' method found for middleware of type '{2}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareNoInvokeMethod(System.Object,System.Object,System.Object)">
+            <summary>
+            No public '{0}' or '{1}' method found for middleware of type '{2}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareNonTaskReturnType">
+            <summary>
+            '{0}' or '{1}' does not return an object of type '{2}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareNonTaskReturnType(System.Object,System.Object,System.Object)">
+            <summary>
+            '{0}' or '{1}' does not return an object of type '{2}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareNoParameters">
+            <summary>
+            The '{0}' or '{1}' method's first argument must be of type '{2}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareNoParameters(System.Object,System.Object,System.Object)">
+            <summary>
+            The '{0}' or '{1}' method's first argument must be of type '{2}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddleMutlipleInvokes">
+            <summary>
+            Multiple public '{0}' or '{1}' methods are available.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddleMutlipleInvokes(System.Object,System.Object)">
+            <summary>
+            Multiple public '{0}' or '{1}' methods are available.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_PathMustStartWithSlash">
+            <summary>
+            The path in '{0}' must start with '/'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_PathMustStartWithSlash(System.Object)">
+            <summary>
+            The path in '{0}' must start with '/'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_InvokeMiddlewareNoService">
+            <summary>
+            Unable to resolve service for type '{0}' while attempting to Invoke middleware '{1}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_InvokeMiddlewareNoService(System.Object,System.Object)">
+            <summary>
+            Unable to resolve service for type '{0}' while attempting to Invoke middleware '{1}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_InvokeDoesNotSupportRefOrOutParams">
+            <summary>
+            The '{0}' method must not have ref or out parameters.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_InvokeDoesNotSupportRefOrOutParams(System.Object)">
+            <summary>
+            The '{0}' method must not have ref or out parameters.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_PortMustBeGreaterThanZero">
+            <summary>
+            The value must be greater than zero.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_PortMustBeGreaterThanZero">
+            <summary>
+            The value must be greater than zero.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareNoMiddlewareFactory">
+            <summary>
+            No service for type '{0}' has been registered.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareNoMiddlewareFactory(System.Object)">
+            <summary>
+            No service for type '{0}' has been registered.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareUnableToCreateMiddleware">
+            <summary>
+            '{0}' failed to create middleware of type '{1}'.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareUnableToCreateMiddleware(System.Object,System.Object)">
+            <summary>
+            '{0}' failed to create middleware of type '{1}'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.Exception_UseMiddlewareExplicitArgumentsNotSupported">
+            <summary>
+            Types that implement '{0}' do not support explicit arguments.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatException_UseMiddlewareExplicitArgumentsNotSupported(System.Object)">
+            <summary>
+            Types that implement '{0}' do not support explicit arguments.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Abstractions.Resources.ArgumentCannotBeNullOrEmpty">
+            <summary>
+            Argument cannot be null or empty.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Abstractions.Resources.FormatArgumentCannotBeNullOrEmpty">
+            <summary>
+            Argument cannot be null or empty.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.QueryString">
+            <summary>
+            Provides correct handling for QueryString value when needed to reconstruct a request or redirect URI string
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.QueryString.Empty">
+            <summary>
+            Represents the empty query string. This field is read-only.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.#ctor(System.String)">
+            <summary>
+            Initialize the query string with a given value. This value must be in escaped and delimited format with
+            a leading '?' character. 
+            </summary>
+            <param name="value">The query string to be assigned to the Value property.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.QueryString.Value">
+            <summary>
+            The escaped query string with the leading '?' character
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.QueryString.HasValue">
+            <summary>
+            True if the query string is not empty
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.ToString">
+            <summary>
+            Provides the query string escaped in a way which is correct for combining into the URI representation. 
+            A leading '?' character will be included unless the Value is null or empty. Characters which are potentially
+            dangerous are escaped.
+            </summary>
+            <returns>The query string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.ToUriComponent">
+            <summary>
+            Provides the query string escaped in a way which is correct for combining into the URI representation. 
+            A leading '?' character will be included unless the Value is null or empty. Characters which are potentially
+            dangerous are escaped.
+            </summary>
+            <returns>The query string value</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.FromUriComponent(System.String)">
+            <summary>
+            Returns an QueryString given the query as it is escaped in the URI format. The string MUST NOT contain any
+            value that is not a query.
+            </summary>
+            <param name="uriComponent">The escaped query as it appears in the URI format.</param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.FromUriComponent(System.Uri)">
+            <summary>
+            Returns an QueryString given the query as from a Uri object. Relative Uri objects are not supported.
+            </summary>
+            <param name="uri">The Uri object</param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.Create(System.String,System.String)">
+            <summary>
+            Create a query string with a single given parameter name and value.
+            </summary>
+            <param name="name">The un-encoded parameter name</param>
+            <param name="value">The un-encoded parameter value</param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.Create(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
+            <summary>
+            Creates a query string composed from the given name value pairs.
+            </summary>
+            <param name="parameters"></param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.QueryString.Create(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,Microsoft.Extensions.Primitives.StringValues}})">
+            <summary>
+            Creates a query string composed from the given name value pairs.
+            </summary>
+            <param name="parameters"></param>
+            <returns>The resulting QueryString</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.RequestDelegate">
+            <summary>
+            A function that can process an HTTP request.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the request.</param>
+            <returns>A task that represents the completion of request processing.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.WebSocketManager">
+            <summary>
+            Manages the establishment of WebSocket connections for a specific HTTP request. 
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.WebSocketManager.IsWebSocketRequest">
+            <summary>
+            Gets a value indicating whether the request is a WebSocket establishment request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.WebSocketManager.WebSocketRequestedProtocols">
+            <summary>
+            Gets the list of requested WebSocket sub-protocols.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.WebSocketManager.AcceptWebSocketAsync">
+            <summary>
+            Transitions the request to a WebSocket connection.
+            </summary>
+            <returns>A task representing the completion of the transition.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.WebSocketManager.AcceptWebSocketAsync(System.String)">
+            <summary>
+            Transitions the request to a WebSocket connection using the specified sub-protocol.
+            </summary>
+            <param name="subProtocol">The sub-protocol to use.</param>
+            <returns>A task representing the completion of the transition.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.MapExtensions">
+            <summary>
+            Extension methods for the <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.MapExtensions.Map(Microsoft.AspNetCore.Builder.IApplicationBuilder,Microsoft.AspNetCore.Http.PathString,System.Action{Microsoft.AspNetCore.Builder.IApplicationBuilder})">
+            <summary>
+            Branches the request pipeline based on matches of the given request path. If the request path starts with
+            the given path, the branch is executed.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="pathMatch">The request path to match.</param>
+            <param name="configuration">The branch to take for positive path matches.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware">
+            <summary>
+            Represents a middleware that maps a request path to a sub-request pipeline.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.#ctor(Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Builder.Extensions.MapOptions)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware"/>.
+            </summary>
+            <param name="next">The delegate representing the next middleware in the request pipeline.</param>
+            <param name="options">The middleware options.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Executes the middleware.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <returns>A task that represents the execution of this middleware.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.MapOptions">
+            <summary>
+            Options for the <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapMiddleware"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.Extensions.MapOptions.PathMatch">
+            <summary>
+            The path to match.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.Extensions.MapOptions.Branch">
+            <summary>
+            The branch taken for a positive match.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware">
+            <summary>
+            Represents a middleware that runs a sub-request pipeline when a given predicate is matched.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.#ctor(Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Builder.Extensions.MapWhenOptions)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware"/>.
+            </summary>
+            <param name="next">The delegate representing the next middleware in the request pipeline.</param>
+            <param name="options">The middleware options.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Executes the middleware.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <returns>A task that represents the execution of this middleware.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenOptions">
+            <summary>
+            Options for the <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.Extensions.MapWhenOptions.Predicate">
+            <summary>
+            The user callback that determines if the branch should be taken.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.Extensions.MapWhenOptions.Branch">
+            <summary>
+            The branch taken for a positive match.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware">
+            <summary>
+            Represents a middleware that extracts the specified path base from request path and postpend it to the request path base.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware.#ctor(Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware"/>.
+            </summary>
+            <param name="next">The delegate representing the next middleware in the request pipeline.</param>
+            <param name="pathBase">The path base to extract.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware.Invoke(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Executes the middleware.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <returns>A task that represents the execution of this middleware.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.MapWhenExtensions">
+            <summary>
+            Extension methods for the <see cref="T:Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.MapWhenExtensions.MapWhen(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Func{Microsoft.AspNetCore.Http.HttpContext,System.Boolean},System.Action{Microsoft.AspNetCore.Builder.IApplicationBuilder})">
+            <summary>
+            Branches the request pipeline based on the result of the given predicate.
+            </summary>
+            <param name="app"></param>
+            <param name="predicate">Invoked with the request environment to determine if the branch should be taken</param>
+            <param name="configuration">Configures a branch to take</param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.RunExtensions">
+            <summary>
+            Extension methods for adding terminal middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.RunExtensions.Run(Microsoft.AspNetCore.Builder.IApplicationBuilder,Microsoft.AspNetCore.Http.RequestDelegate)">
+            <summary>
+            Adds a terminal middleware delegate to the application's request pipeline.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="handler">A delegate that handles the request.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.UseExtensions">
+            <summary>
+            Extension methods for adding middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UseExtensions.Use(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Func{Microsoft.AspNetCore.Http.HttpContext,System.Func{System.Threading.Tasks.Task},System.Threading.Tasks.Task})">
+            <summary>
+            Adds a middleware delegate defined in-line to the application's request pipeline.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="middleware">A function that handles the request or calls the given next function.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.UseMiddlewareExtensions">
+            <summary>
+            Extension methods for adding typed middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.UseMiddleware``1(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Object[])">
+            <summary>
+            Adds a middleware type to the application's request pipeline.
+            </summary>
+            <typeparam name="TMiddleware">The middleware type.</typeparam>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="args">The arguments to pass to the middleware type instance's constructor.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.UseMiddleware(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Type,System.Object[])">
+            <summary>
+            Adds a middleware type to the application's request pipeline.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="middleware">The middleware type.</param>
+            <param name="args">The arguments to pass to the middleware type instance's constructor.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.UsePathBaseExtensions">
+            <summary>
+            Extension methods for <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UsePathBaseExtensions.UsePathBase(Microsoft.AspNetCore.Builder.IApplicationBuilder,Microsoft.AspNetCore.Http.PathString)">
+            <summary>
+            Adds a middleware that extracts the specified path base from request path and postpend it to the request path base.
+            </summary>
+            <param name="app">The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</param>
+            <param name="pathBase">The path base to extract.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> instance.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.UseWhenExtensions">
+            <summary>
+            Extension methods for <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.UseWhenExtensions.UseWhen(Microsoft.AspNetCore.Builder.IApplicationBuilder,System.Func{Microsoft.AspNetCore.Http.HttpContext,System.Boolean},System.Action{Microsoft.AspNetCore.Builder.IApplicationBuilder})">
+            <summary>
+            Conditionally creates a branch in the request pipeline that is rejoined to the main pipeline.
+            </summary>
+            <param name="app"></param>
+            <param name="predicate">Invoked with the request environment to determine if the branch should be taken</param>
+            <param name="configuration">Configures a branch to take</param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Builder.IApplicationBuilder">
+            <summary>
+            Defines a class that provides the mechanisms to configure an application's request pipeline.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.IApplicationBuilder.ApplicationServices">
+            <summary>
+            Gets or sets the <see cref="T:System.IServiceProvider"/> that provides access to the application's service container.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.IApplicationBuilder.ServerFeatures">
+            <summary>
+            Gets the set of HTTP features the application's server provides.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Builder.IApplicationBuilder.Properties">
+            <summary>
+            Gets a key/value collection that can be used to share data between middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.IApplicationBuilder.Use(System.Func{Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Http.RequestDelegate})">
+            <summary>
+            Adds a middleware delegate to the application's request pipeline.
+            </summary>
+            <param name="middleware">The middleware delegate.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.IApplicationBuilder.New">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/> that shares the <see cref="P:Microsoft.AspNetCore.Builder.IApplicationBuilder.Properties"/> of this
+            <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.
+            </summary>
+            <returns>The new <see cref="T:Microsoft.AspNetCore.Builder.IApplicationBuilder"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Builder.IApplicationBuilder.Build">
+            <summary>
+            Builds the delegate used by this application to process HTTP requests.
+            </summary>
+            <returns>The request handling delegate.</returns>
+        </member>
+    </members>
+</doc>
diff --git a/packages/Microsoft.AspNetCore.Http.Features.2.2.0/.signature.p7s b/packages/Microsoft.AspNetCore.Http.Features.2.2.0/.signature.p7s
new file mode 100644
index 0000000..0991c5e
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Http.Features.2.2.0/.signature.p7s
Binary files differ
diff --git a/packages/Microsoft.AspNetCore.Http.Features.2.2.0/Microsoft.AspNetCore.Http.Features.2.2.0.nupkg b/packages/Microsoft.AspNetCore.Http.Features.2.2.0/Microsoft.AspNetCore.Http.Features.2.2.0.nupkg
new file mode 100644
index 0000000..ebd4791
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Http.Features.2.2.0/Microsoft.AspNetCore.Http.Features.2.2.0.nupkg
Binary files differ
diff --git a/packages/Microsoft.AspNetCore.Http.Features.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.xml b/packages/Microsoft.AspNetCore.Http.Features.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.xml
new file mode 100644
index 0000000..4222fde
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Http.Features.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.xml
@@ -0,0 +1,869 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.AspNetCore.Http.Features</name>
+    </assembly>
+    <members>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IFeatureCollection">
+            <summary>
+            Represents a collection of HTTP features.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFeatureCollection.IsReadOnly">
+            <summary>
+            Indicates if the collection can be modified.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFeatureCollection.Revision">
+            <summary>
+            Incremented for each modification and can be used to verify cached results.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFeatureCollection.Item(System.Type)">
+            <summary>
+            Gets or sets a given feature. Setting a null value removes the feature.
+            </summary>
+            <param name="key"></param>
+            <returns>The requested feature, or null if it is not present.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IFeatureCollection.Get``1">
+            <summary>
+            Retrieves the requested feature from the collection.
+            </summary>
+            <typeparam name="TFeature">The feature key.</typeparam>
+            <returns>The requested feature, or null if it is not present.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IFeatureCollection.Set``1(``0)">
+            <summary>
+            Sets the given feature in the collection.
+            </summary>
+            <typeparam name="TFeature">The feature key.</typeparam>
+            <param name="instance">The feature value.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFormFeature.HasFormContentType">
+            <summary>
+            Indicates if the request has a supported form content-type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IFormFeature.Form">
+            <summary>
+            The parsed form, if any.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IFormFeature.ReadForm">
+            <summary>
+            Parses the request body as a form.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IFormFeature.ReadFormAsync(System.Threading.CancellationToken)">
+            <summary>
+            Parses the request body as a form.
+            </summary>
+            <param name="cancellationToken"></param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpBodyControlFeature">
+            <summary>
+            Controls the IO behavior for the <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Body"/> and <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Body"/> 
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpBodyControlFeature.AllowSynchronousIO">
+            <summary>
+            Gets or sets a value that controls whether synchronous IO is allowed for the <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Body"/> and <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Body"/> 
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature">
+            <summary>
+            Information regarding the TCP/IP connection carrying the request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.ConnectionId">
+            <summary>
+            The unique identifier for the connection the request was received on. This is primarily for diagnostic purposes.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.RemoteIpAddress">
+            <summary>
+            The IPAddress of the client making the request. Note this may be for a proxy rather than the end user.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.LocalIpAddress">
+            <summary>
+            The local IPAddress on which the request was received.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.RemotePort">
+            <summary>
+            The remote port of the client making the request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpConnectionFeature.LocalPort">
+            <summary>
+            The local port on which the request was received.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpMaxRequestBodySizeFeature">
+            <summary>
+            Feature to inspect and modify the maximum request body size for a single request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpMaxRequestBodySizeFeature.IsReadOnly">
+            <summary>
+            Indicates whether <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpMaxRequestBodySizeFeature.MaxRequestBodySize"/> is read-only.
+            If true, this could mean that the request body has already been read from
+            or that <see cref="M:Microsoft.AspNetCore.Http.Features.IHttpUpgradeFeature.UpgradeAsync"/> was called.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpMaxRequestBodySizeFeature.MaxRequestBodySize">
+            <summary>
+            The maximum allowed size of the current request body in bytes.
+            When set to null, the maximum request body size is unlimited.
+            This cannot be modified after the reading the request body has started.
+            This limit does not affect upgraded connections which are always unlimited.
+            </summary>
+            <remarks>
+            Defaults to the server's global max request body size limit.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature">
+            <summary>
+            Contains the details of a given request. These properties should all be mutable.
+            None of these properties should ever be set to null.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Protocol">
+            <summary>
+            The HTTP-version as defined in RFC 7230. E.g. "HTTP/1.1"
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Scheme">
+            <summary>
+            The request uri scheme. E.g. "http" or "https". Note this value is not included
+            in the original request, it is inferred by checking if the transport used a TLS
+            connection or not.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Method">
+            <summary>
+            The request method as defined in RFC 7230. E.g. "GET", "HEAD", "POST", etc..
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.PathBase">
+            <summary>
+            The first portion of the request path associated with application root. The value
+            is un-escaped. The value may be string.Empty.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Path">
+            <summary>
+            The portion of the request path that identifies the requested resource. The value
+            is un-escaped. The value may be string.Empty if <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.PathBase"/> contains the
+            full path.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.QueryString">
+            <summary>
+            The query portion of the request-target as defined in RFC 7230. The value
+            may be string.Empty. If not empty then the leading '?' will be included. The value
+            is in its original form, without un-escaping.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.RawTarget">
+            <summary>
+            The request target as it was sent in the HTTP request. This property contains the
+            raw path and full query, as well as other request targets such as * for OPTIONS
+            requests (https://tools.ietf.org/html/rfc7230#section-5.3).
+            </summary>
+            <remarks>
+            This property is not used internally for routing or authorization decisions. It has not
+            been UrlDecoded and care should be taken in its use.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Headers">
+            <summary>
+            Headers included in the request, aggregated by header name. The values are not split
+            or merged across header lines. E.g. The following headers:
+            HeaderA: value1, value2
+            HeaderA: value3
+            Result in Headers["HeaderA"] = { "value1, value2", "value3" }
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestFeature.Body">
+            <summary>
+            A <see cref="T:System.IO.Stream"/> representing the request body, if any. Stream.Null may be used
+            to represent an empty request body.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpRequestIdentifierFeature">
+            <summary>
+            Feature to identify a request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestIdentifierFeature.TraceIdentifier">
+            <summary>
+            Identifier to trace a request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpRequestLifetimeFeature.RequestAborted">
+            <summary>
+            A <see cref="T:System.Threading.CancellationToken"/> that fires if the request is aborted and
+            the application should cease processing. The token will not fire if the request
+            completes successfully.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpRequestLifetimeFeature.Abort">
+            <summary>
+            Forcefully aborts the request if it has not already completed. This will result in
+            RequestAborted being triggered.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature">
+            <summary>
+            Represents the fields and state of an HTTP response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.StatusCode">
+            <summary>
+            The status-code as defined in RFC 7230. The default value is 200.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.ReasonPhrase">
+            <summary>
+            The reason-phrase as defined in RFC 7230. Note this field is no longer supported by HTTP/2.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Headers">
+            <summary>
+            The response headers to send. Headers with multiple values will be emitted as multiple headers.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Body">
+            <summary>
+            The <see cref="T:System.IO.Stream"/> for writing the response body.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.HasStarted">
+            <summary>
+            Indicates if the response has started. If true, the <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.StatusCode"/>,
+            <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.ReasonPhrase"/>, and <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Headers"/> are now immutable, and
+            OnStarting should no longer be called.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.OnStarting(System.Func{System.Object,System.Threading.Tasks.Task},System.Object)">
+            <summary>
+            Registers a callback to be invoked just before the response starts. This is the
+            last chance to modify the <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.Headers"/>, <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.StatusCode"/>, or
+            <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.ReasonPhrase"/>.
+            </summary>
+            <param name="callback">The callback to invoke when starting the response.</param>
+            <param name="state">The state to pass into the callback.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpResponseFeature.OnCompleted(System.Func{System.Object,System.Threading.Tasks.Task},System.Object)">
+            <summary>
+            Registers a callback to be invoked after a response has fully completed. This is
+            intended for resource cleanup.
+            </summary>
+            <param name="callback">The callback to invoke after the response has completed.</param>
+            <param name="state">The state to pass into the callback.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IHttpSendFileFeature">
+            <summary>
+            Provides an efficient mechanism for transferring files from disk to the network.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpSendFileFeature.SendFileAsync(System.String,System.Int64,System.Nullable{System.Int64},System.Threading.CancellationToken)">
+            <summary>
+            Sends the requested file in the response body. This may bypass the IHttpResponseFeature.Body
+            <see cref="T:System.IO.Stream"/>. A response may include multiple writes.
+            </summary>
+            <param name="path">The full disk path to the file.</param>
+            <param name="offset">The offset in the file to start at.</param>
+            <param name="count">The number of bytes to send, or null to send the remainder of the file.</param>
+            <param name="cancellation">A <see cref="T:System.Threading.CancellationToken"/> used to abort the transmission.</param>
+            <returns></returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpUpgradeFeature.IsUpgradableRequest">
+            <summary>
+            Indicates if the server can upgrade this request to an opaque, bidirectional stream.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpUpgradeFeature.UpgradeAsync">
+            <summary>
+            Attempt to upgrade the request to an opaque, bidirectional stream. The response status code
+            and headers need to be set before this is invoked. Check <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpUpgradeFeature.IsUpgradableRequest"/>
+            before invoking.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IHttpWebSocketFeature.IsWebSocketRequest">
+            <summary>
+            Indicates if this is a WebSocket upgrade request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.IHttpWebSocketFeature.AcceptAsync(Microsoft.AspNetCore.Http.WebSocketAcceptContext)">
+            <summary>
+            Attempts to upgrade the request to a <see cref="T:System.Net.WebSockets.WebSocket"/>. Check <see cref="P:Microsoft.AspNetCore.Http.Features.IHttpWebSocketFeature.IsWebSocketRequest"/>
+            before invoking this.
+            </summary>
+            <param name="context"></param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IResponseCookiesFeature">
+            <summary>
+            A helper for creating the response Set-Cookie header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IResponseCookiesFeature.Cookies">
+            <summary>
+            Gets the wrapper for the response Set-Cookie header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.ITlsConnectionFeature.ClientCertificate">
+            <summary>
+            Synchronously retrieves the client certificate, if any.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITlsConnectionFeature.GetClientCertificateAsync(System.Threading.CancellationToken)">
+            <summary>
+            Asynchronously retrieves the client certificate, if any.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.ITlsTokenBindingFeature">
+            <summary>
+            Provides information regarding TLS token binding parameters.
+            </summary>
+            <remarks>
+            TLS token bindings help mitigate the risk of impersonation by an attacker in the
+            event an authenticated client's bearer tokens are somehow exfiltrated from the
+            client's machine. See https://datatracker.ietf.org/doc/draft-popov-token-binding/
+            for more information.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITlsTokenBindingFeature.GetProvidedTokenBindingId">
+            <summary>
+            Gets the 'provided' token binding identifier associated with the request.
+            </summary>
+            <returns>The token binding identifier, or null if the client did not
+            supply a 'provided' token binding or valid proof of possession of the
+            associated private key. The caller should treat this identifier as an
+            opaque blob and should not try to parse it.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITlsTokenBindingFeature.GetReferredTokenBindingId">
+            <summary>
+            Gets the 'referred' token binding identifier associated with the request.
+            </summary>
+            <returns>The token binding identifier, or null if the client did not
+            supply a 'referred' token binding or valid proof of possession of the
+            associated private key. The caller should treat this identifier as an
+            opaque blob and should not try to parse it.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature">
+            <summary>
+            Used to query, grant, and withdraw user consent regarding the storage of user
+            information related to site activity and functionality.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.IsConsentNeeded">
+            <summary>
+            Indicates if consent is required for the given request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.HasConsent">
+            <summary>
+            Indicates if consent was given.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.CanTrack">
+            <summary>
+            Indicates either if consent has been given or if consent is not required.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.GrantConsent">
+            <summary>
+            Grants consent for this request. If the response has not yet started then
+            this will also grant consent for future requests.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.WithdrawConsent">
+            <summary>
+            Withdraws consent for this request. If the response has not yet started then
+            this will also withdraw consent for future requests.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Features.ITrackingConsentFeature.CreateConsentCookie">
+            <summary>
+            Creates a consent cookie for use when granting consent from a javascript client.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.CookieOptions">
+            <summary>
+            Options used to create a new cookie.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.CookieOptions.#ctor">
+            <summary>
+            Creates a default cookie with a path of '/'.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.Domain">
+            <summary>
+            Gets or sets the domain to associate the cookie with.
+            </summary>
+            <returns>The domain to associate the cookie with.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.Path">
+            <summary>
+            Gets or sets the cookie path.
+            </summary>
+            <returns>The cookie path.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.Expires">
+            <summary>
+            Gets or sets the expiration date and time for the cookie.
+            </summary>
+            <returns>The expiration date and time for the cookie.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.Secure">
+            <summary>
+            Gets or sets a value that indicates whether to transmit the cookie using Secure Sockets Layer (SSL)--that is, over HTTPS only.
+            </summary>
+            <returns>true to transmit the cookie only over an SSL connection (HTTPS); otherwise, false.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.SameSite">
+            <summary>
+            Gets or sets the value for the SameSite attribute of the cookie. The default value is <see cref="F:Microsoft.AspNetCore.Http.SameSiteMode.Lax"/>
+            </summary>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Http.SameSiteMode"/> representing the enforcement mode of the cookie.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.HttpOnly">
+            <summary>
+            Gets or sets a value that indicates whether a cookie is accessible by client-side script.
+            </summary>
+            <returns>true if a cookie must not be accessible by client-side script; otherwise, false.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.MaxAge">
+            <summary>
+            Gets or sets the max-age for the cookie.
+            </summary>
+            <returns>The max-age date and time for the cookie.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.CookieOptions.IsEssential">
+            <summary>
+            Indicates if this cookie is essential for the application to function correctly. If true then
+            consent policy checks may be bypassed. The default value is false.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IFormCollection">
+            <summary>
+            Represents the parsed form values sent with the HttpRequest.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormCollection.Count">
+            <summary>
+                Gets the number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </summary>
+            <returns>
+                The number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormCollection.Keys">
+            <summary>
+                Gets an <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the
+                <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </summary>
+            <returns>
+                An <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the object
+                that implements <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormCollection.ContainsKey(System.String)">
+            <summary>
+                Determines whether the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" /> contains an element
+                with the specified key.
+            </summary>
+            <param name="key">
+            The key to locate in the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" />.
+            </param>
+            <returns>
+                true if the <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" /> contains an element with
+                the key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormCollection.TryGetValue(System.String,Microsoft.Extensions.Primitives.StringValues@)">
+            <summary>
+               Gets the value associated with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <param name="value">
+                The key of the value to get.
+                When this method returns, the value associated with the specified key, if the
+                key is found; otherwise, the default value for the type of the value parameter.
+                This parameter is passed uninitialized.
+            </param>
+            <returns>
+               true if the object that implements <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" /> contains
+                an element with the specified key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormCollection.Item(System.String)">
+            <summary>
+                Gets the value with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <returns>
+                The element with the specified key, or <c>StringValues.Empty</c> if the key is not present.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+            <remarks>
+                <see cref="T:Microsoft.AspNetCore.Http.IFormCollection" /> has a different indexer contract than
+                <see cref="T:System.Collections.Generic.IDictionary`2" />, as it will return <c>StringValues.Empty</c> for missing entries
+                rather than throwing an Exception.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormCollection.Files">
+            <summary>
+            The file collection sent with the request.
+            </summary>
+            <returns>The files included with the request.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IFormFile">
+            <summary>
+            Represents a file sent with the HttpRequest.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.ContentType">
+            <summary>
+            Gets the raw Content-Type header of the uploaded file.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.ContentDisposition">
+            <summary>
+            Gets the raw Content-Disposition header of the uploaded file.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.Headers">
+            <summary>
+            Gets the header dictionary of the uploaded file.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.Length">
+            <summary>
+            Gets the file length in bytes.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.Name">
+            <summary>
+            Gets the form field name from the Content-Disposition header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IFormFile.FileName">
+            <summary>
+            Gets the file name from the Content-Disposition header.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormFile.OpenReadStream">
+            <summary>
+            Opens the request stream for reading the uploaded file.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormFile.CopyTo(System.IO.Stream)">
+            <summary>
+            Copies the contents of the uploaded file to the <paramref name="target"/> stream.
+            </summary>
+            <param name="target">The stream to copy the file contents to.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IFormFile.CopyToAsync(System.IO.Stream,System.Threading.CancellationToken)">
+            <summary>
+            Asynchronously copies the contents of the uploaded file to the <paramref name="target"/> stream.
+            </summary>
+            <param name="target">The stream to copy the file contents to.</param>
+            <param name="cancellationToken"></param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IFormFileCollection">
+            <summary>
+            Represents the collection of files sent with the HttpRequest.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IHeaderDictionary">
+            <summary>
+            Represents HttpRequest and HttpResponse headers
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IHeaderDictionary.Item(System.String)">
+            <summary>
+            IHeaderDictionary has a different indexer contract than IDictionary, where it will return StringValues.Empty for missing entries.
+            </summary>
+            <param name="key"></param>
+            <returns>The stored value, or StringValues.Empty if the key is not present.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IHeaderDictionary.ContentLength">
+            <summary>
+            Strongly typed access to the Content-Length header. Implementations must keep this in sync with the string representation.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IQueryCollection">
+            <summary>
+                Represents the HttpRequest query string collection
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IQueryCollection.Count">
+            <summary>
+                Gets the number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </summary>
+            <returns>
+                The number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IQueryCollection.Keys">
+            <summary>
+                Gets an <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the
+                <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </summary>
+            <returns>
+                An <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the object
+                that implements <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IQueryCollection.ContainsKey(System.String)">
+            <summary>
+                Determines whether the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" /> contains an element
+                with the specified key.
+            </summary>
+            <param name="key">
+            The key to locate in the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" />.
+            </param>
+            <returns>
+                true if the <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" /> contains an element with
+                the key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IQueryCollection.TryGetValue(System.String,Microsoft.Extensions.Primitives.StringValues@)">
+            <summary>
+               Gets the value associated with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <param name="value">
+                The key of the value to get.
+                When this method returns, the value associated with the specified key, if the
+                key is found; otherwise, the default value for the type of the value parameter.
+                This parameter is passed uninitialized.
+            </param>
+            <returns>
+               true if the object that implements <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" /> contains
+                an element with the specified key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IQueryCollection.Item(System.String)">
+            <summary>
+                Gets the value with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <returns>
+                The element with the specified key, or <c>StringValues.Empty</c> if the key is not present.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+            <remarks>
+                <see cref="T:Microsoft.AspNetCore.Http.IQueryCollection" /> has a different indexer contract than
+                <see cref="T:System.Collections.Generic.IDictionary`2" />, as it will return <c>StringValues.Empty</c> for missing entries
+                rather than throwing an Exception.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IRequestCookieCollection">
+            <summary>
+            Represents the HttpRequest cookie collection
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IRequestCookieCollection.Count">
+            <summary>
+                Gets the number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </summary>
+            <returns>
+                The number of elements contained in the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IRequestCookieCollection.Keys">
+            <summary>
+                Gets an <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the
+                <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </summary>
+            <returns>
+                An <see cref="T:System.Collections.Generic.ICollection`1" /> containing the keys of the object
+                that implements <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IRequestCookieCollection.ContainsKey(System.String)">
+            <summary>
+                Determines whether the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" /> contains an element
+                with the specified key.
+            </summary>
+            <param name="key">
+            The key to locate in the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" />.
+            </param>
+            <returns>
+                true if the <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" /> contains an element with
+                the key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IRequestCookieCollection.TryGetValue(System.String,System.String@)">
+            <summary>
+               Gets the value associated with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <param name="value">
+                The key of the value to get.
+                When this method returns, the value associated with the specified key, if the
+                key is found; otherwise, the default value for the type of the value parameter.
+                This parameter is passed uninitialized.
+            </param>
+            <returns>
+               true if the object that implements <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" /> contains
+                an element with the specified key; otherwise, false.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.IRequestCookieCollection.Item(System.String)">
+            <summary>
+                Gets the value with the specified key.
+            </summary>
+            <param name="key">
+                The key of the value to get.
+            </param>
+            <returns>
+                The element with the specified key, or <c>string.Empty</c> if the key is not present.
+            </returns>
+            <exception cref="T:System.ArgumentNullException">
+                key is null.
+            </exception>
+            <remarks>
+                <see cref="T:Microsoft.AspNetCore.Http.IRequestCookieCollection" /> has a different indexer contract than
+                <see cref="T:System.Collections.Generic.IDictionary`2" />, as it will return <c>string.Empty</c> for missing entries
+                rather than throwing an Exception.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.IResponseCookies">
+            <summary>
+            A wrapper for the response Set-Cookie header.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IResponseCookies.Append(System.String,System.String)">
+            <summary>
+            Add a new cookie and value.
+            </summary>
+            <param name="key">Name of the new cookie.</param>
+            <param name="value">Value of the new cookie.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IResponseCookies.Append(System.String,System.String,Microsoft.AspNetCore.Http.CookieOptions)">
+            <summary>
+            Add a new cookie.
+            </summary>
+            <param name="key">Name of the new cookie.</param>
+            <param name="value">Value of the new cookie.</param>
+            <param name="options"><see cref="T:Microsoft.AspNetCore.Http.CookieOptions"/> included in the new cookie setting.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IResponseCookies.Delete(System.String)">
+            <summary>
+            Sets an expired cookie.
+            </summary>
+            <param name="key">Name of the cookie to expire.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.IResponseCookies.Delete(System.String,Microsoft.AspNetCore.Http.CookieOptions)">
+            <summary>
+            Sets an expired cookie.
+            </summary>
+            <param name="key">Name of the cookie to expire.</param>
+            <param name="options">
+            <see cref="T:Microsoft.AspNetCore.Http.CookieOptions"/> used to discriminate the particular cookie to expire. The
+            <see cref="P:Microsoft.AspNetCore.Http.CookieOptions.Domain"/> and <see cref="P:Microsoft.AspNetCore.Http.CookieOptions.Path"/> values are especially important.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.ISession.IsAvailable">
+            <summary>
+            Indicate whether the current session has loaded.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.ISession.Id">
+            <summary>
+            A unique identifier for the current session. This is not the same as the session cookie
+            since the cookie lifetime may not be the same as the session entry lifetime in the data store.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.ISession.Keys">
+            <summary>
+            Enumerates all the keys, if any.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.LoadAsync(System.Threading.CancellationToken)">
+            <summary>
+            Load the session from the data store. This may throw if the data store is unavailable.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.CommitAsync(System.Threading.CancellationToken)">
+            <summary>
+            Store the session in the data store. This may throw if the data store is unavailable.
+            </summary>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.TryGetValue(System.String,System.Byte[]@)">
+            <summary>
+            Retrieve the value of the given key, if present.
+            </summary>
+            <param name="key"></param>
+            <param name="value"></param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.Set(System.String,System.Byte[])">
+            <summary>
+            Set the given key and value in the current session. This will throw if the session
+            was not established prior to sending the response.
+            </summary>
+            <param name="key"></param>
+            <param name="value"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.Remove(System.String)">
+            <summary>
+            Remove the given key from the session if present.
+            </summary>
+            <param name="key"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.ISession.Clear">
+            <summary>
+            Remove all entries from the current session, if any.
+            The session cookie is not removed.
+            </summary>
+        </member>
+    </members>
+</doc>
diff --git a/packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/.signature.p7s b/packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/.signature.p7s
new file mode 100644
index 0000000..eeaecd1
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/.signature.p7s
Binary files differ
diff --git a/packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0.nupkg b/packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0.nupkg
new file mode 100644
index 0000000..20db024
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0.nupkg
Binary files differ
diff --git a/packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Abstractions.xml b/packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Abstractions.xml
new file mode 100644
index 0000000..401295f
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Mvc.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Abstractions.xml
@@ -0,0 +1,4528 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.AspNetCore.Mvc.Abstractions</name>
+    </assembly>
+    <members>
+        <member name="T:Microsoft.Extensions.Internal.ClosedGenericMatcher">
+            <summary>
+            Helper related to generic interface definitions and implementing classes.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.ClosedGenericMatcher.ExtractGenericInterface(System.Type,System.Type)">
+            <summary>
+            Determine whether <paramref name="queryType"/> is or implements a closed generic <see cref="T:System.Type"/>
+            created from <paramref name="interfaceType"/>.
+            </summary>
+            <param name="queryType">The <see cref="T:System.Type"/> of interest.</param>
+            <param name="interfaceType">The open generic <see cref="T:System.Type"/> to match. Usually an interface.</param>
+            <returns>
+            The closed generic <see cref="T:System.Type"/> created from <paramref name="interfaceType"/> that
+            <paramref name="queryType"/> is or implements. <c>null</c> if the two <see cref="T:System.Type"/>s have no such
+            relationship.
+            </returns>
+            <remarks>
+            This method will return <paramref name="queryType"/> if <paramref name="interfaceType"/> is
+            <c>typeof(KeyValuePair{,})</c>, and <paramref name="queryType"/> is
+            <c>typeof(KeyValuePair{string, object})</c>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Id">
+            <summary>
+            Gets an id which uniquely identifies the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.RouteValues">
+            <summary>
+            Gets or sets the collection of route values that must be provided by routing
+            for the action to be selected.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.ActionConstraints">
+            <summary>
+            The set of constraints for this action. Must all be satisfied for the action to be selected.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.EndpointMetadata">
+            <summary>
+            Gets or sets the endpoint metadata for this action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Parameters">
+            <summary>
+            The set of parameters associated with this action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.BoundProperties">
+            <summary>
+            The set of properties which are model bound.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.FilterDescriptors">
+            <summary>
+            The set of filters associated with this action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.DisplayName">
+            <summary>
+            A friendly name for this action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Properties">
+            <summary>
+            Stores arbitrary metadata properties associated with the <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorExtensions">
+            <summary>
+            Extension methods for <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorExtensions.GetProperty``1(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor)">
+            <summary>
+            Gets the value of a property from the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Properties"/> collection
+            using the provided value of <typeparamref name="T"/> as the key.
+            </summary>
+            <typeparam name="T">The type of the property.</typeparam>
+            <param name="actionDescriptor">The action descriptor.</param>
+            <returns>The property or the default value of <typeparamref name="T"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorExtensions.SetProperty``1(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor,``0)">
+            <summary>
+            Sets the value of an property in the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor.Properties"/> collection using
+            the provided value of <typeparamref name="T"/> as the key.
+            </summary>
+            <typeparam name="T">The type of the property.</typeparam>
+            <param name="actionDescriptor">The action descriptor.</param>
+            <param name="value">The value of the property.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptorProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionDescriptorProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker">
+            <summary>
+            Defines an interface for invoking an MVC action.
+            </summary>
+            <remarks>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker"/> is created for each request the MVC handles by querying the set of
+            <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider"/> instances. See <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider"/> for more information. 
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker.InvokeAsync">
+            <summary>
+            Invokes an MVC action.
+            </summary>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> which will complete when action processing has completed.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider">
+            <summary>
+            Defines an interface for components that can create an <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker"/> for the
+            current request.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider"/> instances form a pipeline that results in the creation of an
+            <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker"/>. The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider"/> instances are ordered by
+            an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/>.  
+            </para>
+            <para>
+            To create an <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvoker"/>, each provider has its <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> method
+            called in sequence and given the same instance of <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext"/>. Then each
+            provider has its <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> method called in the reverse order. The result is
+            the value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext.Result"/>.  
+            </para>
+            <para>
+            As providers are called in a predefined sequence, each provider has a chance to observe and decorate the
+            result of the providers that have already run. 
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)">
+            <summary>
+            Called to execute the provider. 
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)">
+            <summary>
+            Called to execute the provider, after the <see cref="M:Microsoft.AspNetCore.Mvc.Abstractions.IActionInvokerProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext)"/> methods of all providers,
+            have been called.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionInvokerProviderContext"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.ArgumentCannotBeNullOrEmpty">
+            <summary>
+            Value cannot be null or empty.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatArgumentCannotBeNullOrEmpty">
+            <summary>
+            Value cannot be null or empty.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.ModelBindingContext_ModelMetadataMustBeSet">
+            <summary>
+            The ModelMetadata property must be set before accessing this property.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatModelBindingContext_ModelMetadataMustBeSet">
+            <summary>
+            The ModelMetadata property must be set before accessing this property.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.Validation_InvalidFieldCannotBeReset">
+            <summary>
+            A field previously marked invalid should not be marked valid.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatValidation_InvalidFieldCannotBeReset">
+            <summary>
+            A field previously marked invalid should not be marked valid.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.Validation_InvalidFieldCannotBeReset_ToSkipped">
+            <summary>
+            A field previously marked invalid should not be marked skipped.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatValidation_InvalidFieldCannotBeReset_ToSkipped">
+            <summary>
+            A field previously marked invalid should not be marked skipped.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.ModelStateDictionary_MaxModelStateErrors">
+            <summary>
+            The maximum number of allowed model errors has been reached.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatModelStateDictionary_MaxModelStateErrors">
+            <summary>
+            The maximum number of allowed model errors has been reached.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Body">
+            <summary>
+            Body
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Body">
+            <summary>
+            Body
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Custom">
+            <summary>
+            Custom
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Custom">
+            <summary>
+            Custom
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Form">
+            <summary>
+            Form
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Form">
+            <summary>
+            Form
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Header">
+            <summary>
+            Header
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Header">
+            <summary>
+            Header
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Services">
+            <summary>
+            Services
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Services">
+            <summary>
+            Services
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_ModelBinding">
+            <summary>
+            ModelBinding
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_ModelBinding">
+            <summary>
+            ModelBinding
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Path">
+            <summary>
+            Path
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Path">
+            <summary>
+            Path
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Query">
+            <summary>
+            Query
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Query">
+            <summary>
+            Query
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_CannotBeComposite">
+            <summary>
+            The provided binding source '{0}' is a composite. '{1}' requires that the source must represent a single type of input.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_CannotBeComposite(System.Object,System.Object)">
+            <summary>
+            The provided binding source '{0}' is a composite. '{1}' requires that the source must represent a single type of input.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_MustBeFromRequest">
+            <summary>
+            The provided binding source '{0}' is not a request-based binding source. '{1}' requires that the source must represent data from an HTTP request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_MustBeFromRequest(System.Object,System.Object)">
+            <summary>
+            The provided binding source '{0}' is not a request-based binding source. '{1}' requires that the source must represent data from an HTTP request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_CannotBeGreedy">
+            <summary>
+            The provided binding source '{0}' is a greedy data source. '{1}' does not support greedy data sources.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_CannotBeGreedy(System.Object,System.Object)">
+            <summary>
+            The provided binding source '{0}' is a greedy data source. '{1}' does not support greedy data sources.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_MustBeGreedy">
+            <summary>
+            The provided binding source '{0}' is not a greedy data source. '{1}' only supports greedy data sources.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_MustBeGreedy(System.Object,System.Object)">
+            <summary>
+            The provided binding source '{0}' is not a greedy data source. '{1}' only supports greedy data sources.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_Special">
+            <summary>
+            Special
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_Special">
+            <summary>
+            Special
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Abstractions.Resources.BindingSource_FormFile">
+            <summary>
+            FormFile
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Abstractions.Resources.FormatBindingSource_FormFile">
+            <summary>
+            FormFile
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext">
+            <summary>
+            Context for <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/> execution.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext.Candidates">
+            <summary>
+            The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate"/>. This includes all actions that are valid for the current
+            request, as well as their constraints.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext.CurrentCandidate">
+            <summary>
+            The current <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext.RouteContext">
+            <summary>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext.RouteContext"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem">
+            <summary>
+            Represents an <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata"/> with or without a corresponding
+            <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.#ctor(Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata"/> instance.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.Constraint">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/> associated with <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.Metadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.Metadata">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata"/> instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.IsReusable">
+            <summary>
+            Gets or sets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem.Constraint"/> can be reused across requests.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext">
+            <summary>
+            Context for an action constraint provider.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the request.</param>
+            <param name="action">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for which constraints are being created.</param>
+            <param name="items">The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem"/> objects.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext.HttpContext">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext.Action">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for which constraints are being created.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext.Results">
+            <summary>
+            The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintItem"/> objects.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate">
+            <summary>
+            A candidate action for action selection.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate.#ctor(Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor,System.Collections.Generic.IReadOnlyList{Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate"/>.
+            </summary>
+            <param name="action">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> representing a candidate for selection.</param>
+            <param name="constraints">
+            The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/> instances associated with <paramref name="action"/>.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate.Action">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> representing a candidate for selection.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionSelectorCandidate.Constraints">
+            <summary>
+            The list of <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/> instances associated with <see name="Action"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint">
+             <summary>
+             Supports conditional logic to determine whether or not an associated action is valid to be selected
+             for the given request.
+             </summary>
+             <remarks>
+             Action constraints have the secondary effect of making an action with a constraint applied a better
+             match than one without.
+            
+             Consider two actions, 'A' and 'B' with the same action and controller name. Action 'A' only allows the
+             HTTP POST method (via a constraint) and action 'B' has no constraints.
+            
+             If an incoming request is a POST, then 'A' is considered the best match because it both matches and
+             has a constraint. If an incoming request uses any other verb, 'A' will not be valid for selection
+             due to it's constraint, so 'B' is the best match.
+            
+            
+             Action constraints are also grouped according to their order value. Any constraints with the same
+             group value are considered to be part of the same application policy, and will be executed in the
+             same stage.
+            
+             Stages run in ascending order based on the value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Order"/>. Given a set of actions which
+             are candidates for selection, the next stage to run is the lowest value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Order"/> for any
+             constraint of any candidate which is greater than the order of the last stage.
+            
+             Once the stage order is identified, each action has all of its constraints in that stage executed.
+             If any constraint does not match, then that action is not a candidate for selection. If any actions
+             with constraints in the current state are still candidates, then those are the 'best' actions and this
+             process will repeat with the next stage on the set of 'best' actions. If after processing the
+             subsequent stages of the 'best' actions no candidates remain, this process will repeat on the set of
+             'other' candidate actions from this stage (those without a constraint).
+             </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Order">
+            <summary>
+            The constraint order.
+            </summary>
+            <remarks>
+            Constraints are grouped into stages by the value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Order"/>. See remarks on
+            <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint.Accept(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext)">
+            <summary>
+            Determines whether an action is a valid candidate for selection.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintContext"/>.</param>
+            <returns>True if the action is valid for selection, otherwise false.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory">
+             <summary>
+             A factory for <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+             </summary>
+             <remarks>
+             <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory"/> will be invoked during action selection
+             to create constraint instances for an action.
+            
+             Place an attribute implementing this interface on a controller or action to insert an action
+             constraint created by a factory.
+             </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory.IsReusable">
+            <summary>
+            Gets a value that indicates if the result of <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory.CreateInstance(System.IServiceProvider)"/>
+            can be reused across requests.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintFactory.CreateInstance(System.IServiceProvider)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+            </summary>
+            <param name="services">The per-request services.</param>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata">
+            <summary>
+            A marker interface that identifies a type as metadata for an <see cref="T:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraint"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ActionConstraints.ActionConstraintProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ActionContext">
+            <summary>
+            Context object for execution of action which has been selected as part of an HTTP request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionContext.#ctor">
+            <summary>
+            Creates an empty <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+            <remarks>
+            The default constructor is provided for unit test purposes only.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/> to copy.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteData,Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <param name="routeData">The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> for the current request.</param>
+            <param name="actionDescriptor">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for the selected action.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ActionContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteData,Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor,Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <param name="routeData">The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> for the current request.</param>
+            <param name="actionDescriptor">The <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for the selected action.</param>
+            <param name="modelState">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionContext.ActionDescriptor">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor"/> for the selected action.
+            </summary>
+            <remarks>
+            The property setter is provided for unit test purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionContext.HttpContext">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.
+            </summary>
+            <remarks>
+            The property setter is provided for unit test purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionContext.ModelState">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ActionContext.RouteData">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> for the current request.
+            </summary>
+            <remarks>
+            The property setter is provided for unit test purposes only.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription">
+            <summary>
+            Represents an API exposed by this application.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.ActionDescriptor">
+            <summary>
+            Gets or sets <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.ActionDescriptor"/> for this api.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.GroupName">
+            <summary>
+            Gets or sets group name for this api.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.HttpMethod">
+            <summary>
+            Gets or sets the supported HTTP method for this api, or null if all HTTP methods are supported.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.ParameterDescriptions">
+            <summary>
+            Gets a list of <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription"/> for this api.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.Properties">
+            <summary>
+            Gets arbitrary metadata properties associated with the <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.RelativePath">
+            <summary>
+            Gets or sets relative url path template (relative to application root) for this api.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.SupportedRequestFormats">
+            <summary>
+            Gets the list of possible formats for a request.
+            </summary>
+            <remarks>
+            Will be empty if the action does not accept a parameter decorated with the <c>[FromBody]</c> attribute.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription.SupportedResponseTypes">
+            <summary>
+            Gets the list of possible formats for a response.
+            </summary>
+            <remarks>
+            Will be empty if the action returns no response, or if the response type is unclear. Use
+            <c>ProducesAttribute</c> on an action method to specify a response type.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext">
+            <summary>
+            A context object for <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/> providers.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext.#ctor(System.Collections.Generic.IReadOnlyList{Microsoft.AspNetCore.Mvc.Abstractions.ActionDescriptor})">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext"/>.
+            </summary>
+            <param name="actions">The list of actions.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext.Actions">
+            <summary>
+            The list of actions.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext.Results">
+            <summary>
+            The list of resulting <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription">
+            <summary>
+            A metadata description of an input to an API.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.ModelMetadata">
+            <summary>
+            Gets or sets the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Name">
+            <summary>
+            Gets or sets the name.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.RouteInfo">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Source">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Type">
+            <summary>
+            Gets or sets the parameter type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.ParameterDescriptor">
+            <summary>
+            Gets or sets the parameter descriptor.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.IsRequired">
+            <summary>
+            Gets or sets a value that determines if the parameter is required.
+            </summary>
+            <remarks>
+            A parameter is considered required if
+            <list type="bullet">
+            <item>it's bound from the request body (<see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Body"/>).</item>
+            <item>it's a required route value.</item>
+            <item>it has annotations (e.g. BindRequiredAttribute) that indicate it's required.</item>
+            </list>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.DefaultValue">
+            <summary>
+            Gets or sets the default value for a parameter.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo">
+            <summary>
+            A metadata description of routing information for an <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo.Constraints">
+            <summary>
+            Gets or sets the set of <see cref="T:Microsoft.AspNetCore.Routing.IRouteConstraint"/> objects for the parameter.
+            </summary>
+            <remarks>
+            Route constraints are only applied when a value is bound from a URL's path. See
+            <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Source"/> for the data source considered.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo.DefaultValue">
+            <summary>
+            Gets or sets the default value for the parameter.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterRouteInfo.IsOptional">
+             <summary>
+             Gets a value indicating whether not a parameter is considered optional by routing.
+             </summary>
+             <remarks>
+             An optional parameter is considered optional by the routing system. This does not imply
+             that the parameter is considered optional by the action.
+            
+             If the parameter uses <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.ModelBinding"/> for the value of
+             <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiParameterDescription.Source"/> then the value may also come from the
+             URL query string or form data.
+             </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiRequestFormat">
+            <summary>
+            A possible format for the body of a request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiRequestFormat.Formatter">
+            <summary>
+            The formatter used to read this request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiRequestFormat.MediaType">
+            <summary>
+            The media type of the request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseFormat">
+            <summary>
+            Possible format for an <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseFormat.Formatter">
+            <summary>
+            Gets or sets the formatter used to output this response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseFormat.MediaType">
+            <summary>
+            Gets or sets the media type of the response.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType">
+            <summary>
+            Possible type of the response body which is formatted by <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.ApiResponseFormats"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.ApiResponseFormats">
+            <summary>
+            Gets or sets the response formats supported by this type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.ModelMetadata">
+            <summary>
+            Gets or sets <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.Type"/> or null.
+            </summary>
+            <remarks>
+            Will be null if <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.Type"/> is null or void.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.Type">
+            <summary>
+            Gets or sets the CLR data type of the response or null.
+            </summary>
+            <remarks>
+            Will be null if the action returns no response, or if the response type is unclear. Use
+            <c>Microsoft.AspNetCore.Mvc.ProducesAttribute</c> or <c>Microsoft.AspNetCore.Mvc.ProducesResponseTypeAttribute</c> on an action method
+            to specify a response type.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.StatusCode">
+            <summary>
+            Gets or sets the HTTP response status code.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.IsDefaultResponse">
+            <summary>
+            Gets or sets a value indicating whether the response type represents a default response.
+            </summary>
+            <remarks>
+            If an <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/> has a default response, then the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiResponseType.StatusCode"/> property should be ignored. This response
+            will be used when a more specific response format does not apply. The common use of a default response is to specify the format
+            for communicating error conditions.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)">
+            <summary>
+            Creates or modifies <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescription"/>s.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext)">
+            <summary>
+            Called after <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider"/> implementations with higher <see cref="P:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider.Order"/> values have been called.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionProviderContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Authorization.IAllowAnonymousFilter">
+            <summary>
+            A filter that allows anonymous requests, disabling some <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAuthorizationFilter"/>s.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext">
+            <summary>
+            A context for action filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuted(Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},System.Object)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+            <param name="controller">The controller instance containing the action.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Canceled">
+            <summary>
+            Gets or sets an indication that an action filter short-circuited the action and the action filter pipeline.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Controller">
+            <summary>
+            Gets the controller instance containing the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Exception">
+            <summary>
+            Gets or sets the <see cref="T:System.Exception"/> caught while executing the action or action filters, if
+            any.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.ExceptionDispatchInfo">
+            <summary>
+            Gets or sets the <see cref="T:System.Runtime.ExceptionServices.ExceptionDispatchInfo"/> for the
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Exception"/>, if an <see cref="T:System.Exception"/> was caught and this information captured.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.ExceptionHandled">
+            <summary>
+            Gets or sets an indication that the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Exception"/> has been handled.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext.Result">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext">
+            <summary>
+            A context for action filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuted(Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext)"/> and
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter.OnActionExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},System.Collections.Generic.IDictionary{System.String,System.Object},System.Object)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+            <param name="actionArguments">
+            The arguments to pass when invoking the action. Keys are parameter names.
+            </param>
+            <param name="controller">The controller instance containing the action.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.Result">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> to execute. Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.Result"/> to a non-<c>null</c>
+            value inside an action filter will short-circuit the action and any remaining action filters.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.ActionArguments">
+            <summary>
+            Gets the arguments to pass when invoking the action. Keys are parameter names.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext.Controller">
+            <summary>
+            Gets the controller instance containing the action.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate">
+            <summary>
+            A delegate that asynchronously returns an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext"/> indicating the action or the next
+            action filter has executed.
+            </summary>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion returns an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext"/>.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext">
+            <summary>
+            A context for authorization filters i.e. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAuthorizationFilter"/> and
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAuthorizationFilter"/> implementations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata})">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext.Result">
+            <summary>
+            Gets or sets the result of the request. Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext.Result"/> to a non-<c>null</c> value inside
+            an authorization filter will short-circuit the remainder of the filter pipeline.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext">
+            <summary>
+            A context for exception filters i.e. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IExceptionFilter"/> and
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncExceptionFilter"/> implementations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata})">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.Exception">
+            <summary>
+            Gets or sets the <see cref="T:System.Exception"/> caught while executing the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.ExceptionDispatchInfo">
+            <summary>
+            Gets or sets the <see cref="T:System.Runtime.ExceptionServices.ExceptionDispatchInfo"/> for the
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.Exception"/>, if this information was captured.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.ExceptionHandled">
+            <summary>
+            Gets or sets an indication that the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.Exception"/> has been handled.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext.Result">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext">
+            <summary>
+            An abstract context for filters.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata})">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterContext.Filters">
+            <summary>
+            Gets all applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterContext.IsEffectivePolicy``1(``0)">
+            <summary>
+            Returns a value indicating whether the provided <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> is the most effective
+            policy (most specific) applied to the action associated with the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext"/>.
+            </summary>
+            <typeparam name="TMetadata">The type of the filter policy.</typeparam>
+            <param name="policy">The filter policy instance.</param>
+            <returns>
+            <c>true</c> if the provided <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> is the most effective policy, otherwise <c>false</c>.
+            </returns>
+            <remarks>
+            <para>
+            The <see cref="M:Microsoft.AspNetCore.Mvc.Filters.FilterContext.IsEffectivePolicy``1(``0)"/> method is used to implement a common convention
+            for filters that define an overriding behavior. When multiple filters may apply to the same 
+            cross-cutting concern, define a common interface for the filters (<typeparamref name="TMetadata"/>) and 
+            implement the filters such that all of the implementations call this method to determine if they should
+            take action.
+            </para>
+            <para>
+            For instance, a global filter might be overridden by placing a filter attribute on an action method.
+            The policy applied directly to the action method could be considered more specific.
+            </para>
+            <para>
+            This mechanism for overriding relies on the rules of order and scope that the filter system
+            provides to control ordering of filters. It is up to the implementor of filters to implement this 
+            protocol cooperatively. The filter system has no innate notion of overrides, this is a recommended
+            convention.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterContext.FindEffectivePolicy``1">
+            <summary>
+            Returns the most effective (most specific) policy of type <typeparamref name="TMetadata"/> applied to 
+            the action associated with the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext"/>.
+            </summary>
+            <typeparam name="TMetadata">The type of the filter policy.</typeparam>
+            <returns>The implementation of <typeparamref name="TMetadata"/> applied to the action associated with
+            the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterContext"/>
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor">
+             <summary>
+             Descriptor for an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/>.
+             </summary>
+             <remarks>
+             <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/> describes an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> with an order and scope.
+            
+             Order and scope control the execution order of filters. Filters with a higher value of Order execute
+             later in the pipeline.
+            
+             When filters have the same Order, the Scope value is used to determine the order of execution. Filters
+             with a higher value of Scope execute later in the pipeline. See <c>Microsoft.AspNetCore.Mvc.FilterScope</c>
+             for commonly used scopes.
+            
+             For <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IExceptionFilter"/> implementations, the filter runs only after an exception has occurred,
+             and so the observed order of execution will be opposite that of other filters.
+             </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.#ctor(Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata,System.Int32)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>.
+            </summary>
+            <param name="filter">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/>.</param>
+            <param name="filterScope">The filter scope.</param>
+            <remarks>
+            If the <paramref name="filter"/> implements <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter"/>, then the value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Order"/> will be taken from <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>. Otherwise the value
+            of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Order"/> will default to <c>0</c>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Filter">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Order">
+            <summary>
+            The filter order.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor.Scope">
+            <summary>
+            The filter scope.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem">
+            <summary>
+            Used to associate executable filters with <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> instances
+            as part of <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext"/>. An <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider"/> should
+            inspect <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.Results"/> and set <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Filter"/> and
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.IsReusable"/> as appropriate.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterItem.#ctor(Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>.
+            </summary>
+            <param name="descriptor">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterItem.#ctor(Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor,Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>.
+            </summary>
+            <param name="descriptor">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>.</param>
+            <param name="filter"></param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Descriptor">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/> containing the filter metadata.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Filter">
+            <summary>
+            Gets or sets the executable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> associated with <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Descriptor"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.IsReusable">
+            <summary>
+            Gets or sets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Filter"/> can be reused across requests.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext">
+            <summary>
+            A context for filter providers i.e. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider"/> implementations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.FilterItem})">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.ActionContext"/>.</param>
+            <param name="items">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>s, initially created from <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>s or a cache entry.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.ActionContext">
+            <summary>
+            Gets or sets the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.ActionContext"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.Results">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>s, initially created from <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterDescriptor"/>s or a
+            cache entry. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider"/>s should set <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterItem.Filter"/> on existing items or
+            add new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/>s to make executable filters available.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IActionFilter">
+            <summary>
+            A filter that surrounds execution of the action.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuting(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext)">
+            <summary>
+            Called before the action executes, after model binding is complete.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuted(Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext)">
+            <summary>
+            Called after the action executes, before the action result.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAlwaysRunResultFilter">
+            <summary>
+            A filter that surrounds execution of all action results.
+            </summary>
+            <remarks>
+            <para>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAlwaysRunResultFilter"/> interface declares an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> implementation
+            that should run for all action results. <seealso cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/>.
+            </para>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> instances are not executed in cases where
+            an authorization filter or resource filter short-circuits the request to prevent execution of the action.
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations
+            are also not executed in cases where an exception filter handles an exception by producing an action result.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter">
+            <summary>
+            A filter that asynchronously surrounds execution of the action, after model binding is complete.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter.OnActionExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate)">
+            <summary>
+            Called asynchronously before the action, after model binding is complete.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext"/>.</param>
+            <param name="next">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate"/>. Invoked to execute the next action filter or the action itself.
+            </param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion indicates the filter has executed.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter">
+            <summary>
+            A filter that asynchronously surrounds execution of all action results.
+            </summary>
+            <remarks>
+            <para>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/> interface declares an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementation
+            that should run for all action results. <seealso cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/>.
+            </para>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> instances are not executed in cases where
+            an authorization filter or resource filter short-circuits the request to prevent execution of the action.
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations
+            are also not executed in cases where an exception filter handles an exception by producing an action result.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAuthorizationFilter">
+            <summary>
+            A filter that asynchronously confirms request authorization.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncAuthorizationFilter.OnAuthorizationAsync(Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext)">
+            <summary>
+            Called early in the filter pipeline to confirm request is authorized.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext"/>.</param>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion indicates the filter has executed.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncExceptionFilter">
+            <summary>
+            A filter that runs asynchronously after an action has thrown an <see cref="T:System.Exception"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncExceptionFilter.OnExceptionAsync(Microsoft.AspNetCore.Mvc.Filters.ExceptionContext)">
+            <summary>
+            Called after an action has thrown an <see cref="T:System.Exception"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext"/>.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion indicates the filter has executed.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResourceFilter">
+            <summary>
+            A filter that asynchronously surrounds execution of model binding, the action (and filters) and the action
+            result (and filters).
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncResourceFilter.OnResourceExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ResourceExecutionDelegate)">
+            <summary>
+            Called asynchronously before the rest of the pipeline.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext"/>.</param>
+            <param name="next">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutionDelegate"/>. Invoked to execute the next resource filter or the remainder
+            of the pipeline.
+            </param>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> which will complete when the remainder of the pipeline completes.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter">
+            <summary>
+            A filter that asynchronously surrounds execution of action results successfully returned from an action.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations are executed around the action
+            result only when the action method (or action filters) complete successfully.
+            </para>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> instances are not executed in cases where
+            an authorization filter or resource filter short-circuits the request to prevent execution of the action.
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/>. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations
+            are also not executed in cases where an exception filter handles an exception by producing an action result.
+            </para>
+            <para>
+            To create a result filter that surrounds the execution of all action results, implement
+            either the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAlwaysRunResultFilter"/> or the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/> interface.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter.OnResultExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ResultExecutionDelegate)">
+            <summary>
+            Called asynchronously before the action result.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext"/>.</param>
+            <param name="next">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutionDelegate"/>. Invoked to execute the next result filter or the result itself.
+            </param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion indicates the filter has executed.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IAuthorizationFilter">
+            <summary>
+            A filter that confirms request authorization.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IAuthorizationFilter.OnAuthorization(Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext)">
+            <summary>
+            Called early in the filter pipeline to confirm request is authorized.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IExceptionFilter">
+            <summary>
+            A filter that runs after an action has thrown an <see cref="T:System.Exception"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IExceptionFilter.OnException(Microsoft.AspNetCore.Mvc.Filters.ExceptionContext)">
+            <summary>
+            Called after an action has thrown an <see cref="T:System.Exception"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ExceptionContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IFilterContainer">
+            <summary>
+            A filter that requires a reference back to the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory"/> that created it.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.IFilterContainer.FilterDefinition">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory"/> that created this filter instance.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory">
+            <summary>
+            An interface for filter metadata which can create an instance of an executable filter.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory.IsReusable">
+            <summary>
+            Gets a value that indicates if the result of <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory.CreateInstance(System.IServiceProvider)"/>
+            can be reused across requests.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IFilterFactory.CreateInstance(System.IServiceProvider)">
+            <summary>
+            Creates an instance of the executable filter.
+            </summary>
+            <param name="serviceProvider">The request <see cref="T:System.IServiceProvider"/>.</param>
+            <returns>An instance of the executable filter.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata">
+            <summary>
+            Marker interface for filters handled in the MVC request pipeline.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterItem"/> provider. Implementations should update <see cref="P:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext.Results"/>
+            to make executable filters available.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order">
+            <summary>
+            Gets the order value for determining the order of execution of providers. Providers execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Providers are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/> property.
+            A provider with a lower numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/> will have its
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)"/> called before that of a provider with a higher numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>. The <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)"/> method is called in the reverse ordering after
+            all calls to <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)"/>. A provider with a lower numeric value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/> will have its <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)"/> method called after that of a provider
+            with a higher numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>.
+            </para>
+            <para>
+            If two providers have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>, then their relative execution order
+            is undefined.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuting(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)">
+            <summary>
+            Called in increasing <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.OnProvidersExecuted(Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext)">
+            <summary>
+            Called in decreasing <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider.Order"/>, after all <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterProvider"/>s have executed once.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.FilterProviderContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter">
+            <summary>
+            A filter that specifies the relative order it should run.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order">
+            <summary>
+            Gets the order value for determining the order of execution of filters. Filters execute in
+            ascending numeric value of the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/> property.
+            </summary>
+            <remarks>
+            <para>
+            Filters are executed in an ordering determined by an ascending sort of the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/> property.
+            </para>
+            <para>
+            Asynchronous filters, such as <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter"/>, surround the execution of subsequent
+            filters of the same filter kind. An asynchronous filter with a lower numeric <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>
+            value will have its filter method, such as <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncActionFilter.OnActionExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ActionExecutionDelegate)"/>,
+            executed before that of a filter with a higher value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>.
+            </para>
+            <para>
+            Synchronous filters, such as <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IActionFilter"/>, have a before-method, such as
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuting(Microsoft.AspNetCore.Mvc.Filters.ActionExecutingContext)"/>, and an after-method, such as
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IActionFilter.OnActionExecuted(Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext)"/>. A synchronous filter with a lower numeric <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>
+            value will have its before-method executed before that of a filter with a higher value of
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>. During the after-stage of the filter, a synchronous filter with a lower
+            numeric <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/> value will have its after-method executed after that of a filter with a higher
+            value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>.
+            </para>
+            <para>
+            If two filters have the same numeric value of <see cref="P:Microsoft.AspNetCore.Mvc.Filters.IOrderedFilter.Order"/>, then their relative execution order
+            is determined by the filter scope.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter">
+            <summary>
+            A filter that surrounds execution of model binding, the action (and filters) and the action result
+            (and filters).
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter.OnResourceExecuting(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext)">
+            <summary>
+            Executes the resource filter. Called before execution of the remainder of the pipeline.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter.OnResourceExecuted(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext)">
+            <summary>
+            Executes the resource filter. Called after execution of the remainder of the pipeline.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter">
+            <summary>
+            A filter that surrounds execution of action results successfully returned from an action.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations are executed around the action
+            result only when the action method (or action filters) complete successfully.
+            </para>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> instances are not executed in cases where
+            an authorization filter or resource filter short-circuits the request to prevent execution of the action.
+            <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/>. <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IResultFilter"/> and <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter"/> implementations
+            are also not executed in cases where an exception filter handles an exception by producing an action result.
+            </para>
+            <para>
+            To create a result filter that surrounds the execution of all action results, implement
+            either the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAlwaysRunResultFilter"/> or the <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IAsyncAlwaysRunResultFilter"/> interface.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IResultFilter.OnResultExecuting(Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext)">
+            <summary>
+            Called before the action result executes.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.IResultFilter.OnResultExecuted(Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext)">
+            <summary>
+            Called after the action result executes.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext"/>.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext">
+            <summary>
+            A context for resource filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter.OnResourceExecuted(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">The list of <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> instances.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Canceled">
+            <summary>
+            Gets or sets a value which indicates whether or not execution was canceled by a resource filter.
+            If true, then a resource filter short-circuited execution by setting
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.Result"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception">
+            <summary>
+            Gets or set the current <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/>.
+            </summary>
+            <remarks>
+            <para>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/> or <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionDispatchInfo"/> to <c>null</c> will treat
+            the exception as handled, and it will not be rethrown by the runtime.
+            </para>
+            <para>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionHandled"/> to <c>true</c> will also mark the exception as handled.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionDispatchInfo">
+            <summary>
+            Gets or set the current <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/>.
+            </summary>
+            <remarks>
+            <para>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/> or <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionDispatchInfo"/> to <c>null</c> will treat
+            the exception as handled, and it will not be rethrown by the runtime.
+            </para>
+            <para>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionHandled"/> to <c>true</c> will also mark the exception as handled.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.ExceptionHandled">
+            <summary>
+            <para>
+            Gets or sets a value indicating whether or not the current <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/> has been handled.
+            </para>
+            <para>
+            If <c>false</c> the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Exception"/> will be rethrown by the runtime after resource filters
+            have executed.
+            </para>
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Result">
+            <summary>
+            Gets or sets the result.
+            </summary>
+            <remarks>
+            <para>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Result"/> may be provided by execution of the action itself or by another
+            filter.
+            </para>
+            <para>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext.Result"/> has already been written to the response before being made available
+            to resource filters.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext">
+            <summary>
+            A context for resource filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IResourceFilter.OnResourceExecuting(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext)"/> and
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncResourceFilter.OnResourceExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ResourceExecutionDelegate)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">The list of <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> instances.</param>
+            <param name="valueProviderFactories">The list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory"/> instances.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.Result">
+            <summary>
+            Gets or sets the result of the action to be executed.
+            </summary>
+            <remarks>
+            Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.Result"/> to a non-<c>null</c> value inside a resource filter will
+            short-circuit execution of additional resource filters and the action itself.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutingContext.ValueProviderFactories">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory"/> instances used by model binding.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutionDelegate">
+            <summary>
+            A delegate that asynchronously returns a <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext"/> indicating model binding, the
+            action, the action's result, result filters, and exception filters have executed.
+            </summary>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion returns a <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext">
+            <summary>
+            A context for result filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IResultFilter.OnResultExecuted(Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},Microsoft.AspNetCore.Mvc.IActionResult,System.Object)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+            <param name="result">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> copied from <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Result"/>.
+            </param>
+            <param name="controller">The controller instance containing the action.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Canceled">
+            <summary>
+            Gets or sets an indication that a result filter set <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Cancel"/> to
+            <c>true</c> and short-circuited the filter pipeline.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Controller">
+            <summary>
+            Gets the controller instance containing the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Exception">
+            <summary>
+            Gets or sets the <see cref="T:System.Exception"/> caught while executing the result or result filters, if
+            any.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.ExceptionDispatchInfo">
+            <summary>
+            Gets or sets the <see cref="T:System.Runtime.ExceptionServices.ExceptionDispatchInfo"/> for the
+            <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Exception"/>, if an <see cref="T:System.Exception"/> was caught and this information captured.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.ExceptionHandled">
+            <summary>
+            Gets or sets an indication that the <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Exception"/> has been handled.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext.Result">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> copied from <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Result"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext">
+            <summary>
+            A context for result filters, specifically <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IResultFilter.OnResultExecuting(Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext)"/> and
+            <see cref="M:Microsoft.AspNetCore.Mvc.Filters.IAsyncResultFilter.OnResultExecutionAsync(Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext,Microsoft.AspNetCore.Mvc.Filters.ResultExecutionDelegate)"/> calls.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata},Microsoft.AspNetCore.Mvc.IActionResult,System.Object)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext"/> instance.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.</param>
+            <param name="filters">All applicable <see cref="T:Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata"/> implementations.</param>
+            <param name="result">The <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> of the action and action filters.</param>
+            <param name="controller">The controller instance containing the action.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Controller">
+            <summary>
+            Gets the controller instance containing the action.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Result">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.IActionResult"/> to execute. Setting <see cref="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Result"/> to a non-<c>null</c>
+            value inside a result filter will short-circuit the result and any remaining result filters.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Filters.ResultExecutingContext.Cancel">
+            <summary>
+            Gets or sets an indication the result filter pipeline should be short-circuited.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutionDelegate">
+            <summary>
+            A delegate that asynchronously returns an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext"/> indicating the action result or
+            the next result filter has executed.
+            </summary>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion returns an <see cref="T:Microsoft.AspNetCore.Mvc.Filters.ResultExecutedContext"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1">
+            <summary>
+            Represents a collection of formatters.
+            </summary>
+            <typeparam name="TFormatter">The type of formatters in the collection.</typeparam>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1"/> class that is empty.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1.#ctor(System.Collections.Generic.IList{`0})">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1"/> class
+            as a wrapper for the specified list.
+            </summary>
+            <param name="list">The list that is wrapped by the new collection.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1.RemoveType``1">
+            <summary>
+            Removes all formatters of the specified type.
+            </summary>
+            <typeparam name="T">The type to remove.</typeparam>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.FormatterCollection`1.RemoveType(System.Type)">
+            <summary>
+            Removes all formatters of the specified type.
+            </summary>
+            <param name="formatterType">The type to remove.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter">
+            <summary>
+            Reads an object from the request body.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.CanRead(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)">
+            <summary>
+            Determines whether this <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> can deserialize an object of the
+            <paramref name="context"/>'s <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelType"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext"/>.</param>
+            <returns>
+            <c>true</c> if this <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> can deserialize an object of the
+            <paramref name="context"/>'s <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelType"/>. <c>false</c> otherwise.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)">
+            <summary>
+            Reads an object from the request body.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext"/>.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that on completion deserializes the request body.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatterExceptionPolicy">
+            <summary>
+            A policy which <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/>s can implement to indicate if they want the body model binder
+            to handle all exceptions. By default, all default <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/>s implement this interface and
+            have a default value of <see cref="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.MalformedInputExceptions"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatterExceptionPolicy.ExceptionPolicy">
+            <summary>
+            Gets the flag to indicate if the body model binder should handle all exceptions. If an exception is handled,
+            the body model binder converts the exception into model state errors, else the exception is allowed to propagate.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext">
+            <summary>
+            A context object used by an input formatter for deserializing the request body into an object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,System.String,Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.Func{System.IO.Stream,System.Text.Encoding,System.IO.TextReader})">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext"/>.
+            </summary>
+            <param name="httpContext">
+            The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current operation.
+            </param>
+            <param name="modelName">The name of the model.</param>
+            <param name="modelState">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> for recording errors.
+            </param>
+            <param name="metadata">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> of the model to deserialize.
+            </param>
+            <param name="readerFactory">
+            A delegate which can create a <see cref="T:System.IO.TextReader"/> for the request body.
+            </param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,System.String,Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.Func{System.IO.Stream,System.Text.Encoding,System.IO.TextReader},System.Boolean)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext"/>.
+            </summary>
+            <param name="httpContext">
+            The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current operation.
+            </param>
+            <param name="modelName">The name of the model.</param>
+            <param name="modelState">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> for recording errors.
+            </param>
+            <param name="metadata">
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> of the model to deserialize.
+            </param>
+            <param name="readerFactory">
+            A delegate which can create a <see cref="T:System.IO.TextReader"/> for the request body.
+            </param>
+            <param name="treatEmptyInputAsDefaultValue">
+            A value for the <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.TreatEmptyInputAsDefaultValue"/> property.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.TreatEmptyInputAsDefaultValue">
+            <summary>
+            Gets a flag to indicate whether the input formatter should allow no value to be provided.
+            If <see langword="false"/>, the input formatter should handle empty input by returning
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.NoValueAsync"/>. If <see langword="true"/>, the input
+            formatter should handle empty input by returning the default value for the type
+            <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelType"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.HttpContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current operation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelName">
+            <summary>
+            Gets the name of the model. Used as the key or key prefix for errors added to <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelState"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelState">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> associated with the current operation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.Metadata">
+            <summary>
+            Gets the requested <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> of the request body deserialization.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ModelType">
+            <summary>
+            Gets the requested <see cref="T:System.Type"/> of the request body deserialization.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext.ReaderFactory">
+            <summary>
+            Gets a delegate which can create a <see cref="T:System.IO.TextReader"/> for the request body.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterException">
+            <summary>
+            Exception thrown by <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> when the input is not in an expected format.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy">
+            <summary>
+            Defines the set of policies that determine how the model binding system interprets exceptions
+            thrown by an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/>. Applications should set 
+            <c>MvcOptions.InputFormatterExceptionPolicy</c> to configure this setting.
+            </summary>
+            <remarks>
+            <para>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> could throw an exception for several reasons, including:
+            <list type="bullet">
+            <item><description>malformed input</description></item>
+            <item><description>client disconnect or other I/O problem</description></item>
+            <item><description>
+            application configuration problems such as <see cref="T:System.TypeLoadException"/>
+            </description></item>
+            </list>
+            </para>
+            <para>
+            The policy associated with <see cref="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.AllExceptions"/> treats
+            all such categories of problems as model state errors, and usually will be reported to the client as
+            an HTTP 400. This was the only policy supported by model binding in ASP.NET Core MVC 1.0, 1.1, and 2.0
+            and is still the default for historical reasons. 
+            </para>
+            <para>
+            The policy associated with <see cref="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.MalformedInputExceptions"/>
+            treats only <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterException"/> and its subclasses as model state errors. This means that
+            exceptions that are not related to the content of the HTTP request (such as a disconnect) will be rethrown,
+            which by default would cause an HTTP 500 response, unless there is exception-handling middleware enabled.
+            </para>
+            </remarks>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.AllExceptions">
+            <summary>
+            This value indicates that all exceptions thrown by an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter"/> will be treated
+            as model state errors.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterExceptionPolicy.MalformedInputExceptions">
+            <summary>
+            This value indicates that only <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterException"/> and subclasses will be treated
+            as model state errors. All other exceptions types will be rethrown and can be handled by a higher
+            level exception handler, such as exception-handling middleware.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult">
+            <summary>
+            Result of a <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError">
+            <summary>
+            Gets an indication whether the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation had an error.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.IsModelSet">
+            <summary>
+            Gets an indication whether a value for the <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.Model"/> property was supplied.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.Model">
+            <summary>
+            Gets the deserialized <see cref="T:System.Object"/>.
+            </summary>
+            <value>
+            <c>null</c> if <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> is <c>true</c>.
+            </value>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.Failure">
+            <summary>
+            Returns an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation failed.
+            </summary>
+            <returns>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation failed i.e. with <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> <c>true</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.FailureAsync">
+            <summary>
+            Returns a <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating
+            the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation failed.
+            </summary>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation failed i.e. with <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> <c>true</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.Success(System.Object)">
+            <summary>
+            Returns an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation was successful.
+            </summary>
+            <param name="model">The deserialized <see cref="T:System.Object"/>.</param>
+            <returns>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation succeeded i.e. with <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> <c>false</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.SuccessAsync(System.Object)">
+            <summary>
+            Returns a <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating
+            the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation was successful.
+            </summary>
+            <param name="model">The deserialized <see cref="T:System.Object"/>.</param>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation succeeded i.e. with <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.HasError"/> <c>false</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.NoValue">
+            <summary>
+            Returns an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation produced no value.
+            </summary>
+            <returns>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/>
+            operation produced no value.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult.NoValueAsync">
+            <summary>
+            Returns a <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating
+            the <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation produced no value.
+            </summary>
+            <returns>
+            A <see cref="T:System.Threading.Tasks.Task"/> that on completion provides an <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.InputFormatterResult"/> indicating the
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IInputFormatter.ReadAsync(Microsoft.AspNetCore.Mvc.Formatters.InputFormatterContext)"/> operation produced no value.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter">
+            <summary>
+            Writes an object to the output stream.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.CanWriteResult(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext)">
+            <summary>
+            Determines whether this <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter"/> can serialize
+            an object of the specified type.
+            </summary>
+            <param name="context">The formatter context associated with the call.</param>
+            <returns>Returns <c>true</c> if the formatter can write the response; <c>false</c> otherwise.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.WriteAsync(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext)">
+            <summary>
+            Writes the object represented by <paramref name="context"/>'s Object property.
+            </summary>
+            <param name="context">The formatter context associated with the call.</param>
+            <returns>A Task that serializes the value to the <paramref name="context"/>'s response message.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext">
+            <summary>
+            A context object for <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.CanWriteResult(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext)"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.#ctor">
+            <summary>
+            <para>
+            This constructor is obsolete and will be removed in a future version.
+            Please use <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.#ctor(Microsoft.AspNetCore.Http.HttpContext)"/> instead.
+            </para>
+            <para>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext"/>.
+            </para>
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.#ctor(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.HttpContext"/> for the current request.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.HttpContext">
+            <summary>
+            Gets or sets the <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.HttpContext"/> context associated with the current operation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.ContentType">
+            <summary>
+            Gets or sets the content type to write to the response.
+            </summary>
+            <remarks>
+            An <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter"/> can set this value when its
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.CanWriteResult(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext)"/> method is called,
+            and expect to see the same value provided in
+            <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.WriteAsync(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext)"/>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.ContentTypeIsServerDefined">
+            <summary>
+            Gets or sets a value to indicate whether the content type was specified by server-side code.
+            This allows <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.CanWriteResult(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext)"/> to
+            implement stricter filtering on content types that, for example, are being considered purely
+            because of an incoming Accept header.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.Object">
+            <summary>
+            Gets or sets the object to write to the response.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterCanWriteContext.ObjectType">
+            <summary>
+            Gets or sets the <see cref="T:System.Type"/> of the object to write to the response.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext">
+            <summary>
+            A context object for <see cref="M:Microsoft.AspNetCore.Mvc.Formatters.IOutputFormatter.WriteAsync(Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext)"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,System.Func{System.IO.Stream,System.Text.Encoding,System.IO.TextWriter},System.Type,System.Object)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> for the current request.</param>
+            <param name="writerFactory">The delegate used to create a <see cref="T:System.IO.TextWriter"/> for writing the response.</param>
+            <param name="objectType">The <see cref="T:System.Type"/> of the object to write to the response.</param>
+            <param name="object">The object to write to the response.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext.WriterFactory">
+            <summary>
+            <para>
+            Gets or sets a delegate used to create a <see cref="T:System.IO.TextWriter"/> for writing text to the response.
+            </para>
+            <para>
+            Write to <see cref="P:Microsoft.AspNetCore.Http.HttpResponse.Body"/> directly to write binary data to the response.
+            </para>
+            </summary>
+            <remarks>
+            <para>
+            The <see cref="T:System.IO.TextWriter"/> created by this delegate will encode text and write to the
+            <see cref="P:Microsoft.AspNetCore.Http.HttpResponse.Body"/> stream. Call this delegate to create a <see cref="T:System.IO.TextWriter"/>
+            for writing text output to the response stream.
+            </para>
+            <para>
+            To implement a formatter that writes binary data to the response stream, do not use the
+            <see cref="P:Microsoft.AspNetCore.Mvc.Formatters.OutputFormatterWriteContext.WriterFactory"/> delegate, and use <see cref="P:Microsoft.AspNetCore.Http.HttpResponse.Body"/> instead.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.IActionResult">
+            <summary>
+            Defines a contract that represents the result of an action method.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IActionResult.ExecuteResultAsync(Microsoft.AspNetCore.Mvc.ActionContext)">
+            <summary>
+            Executes the result operation of the action method asynchronously. This method is called by MVC to process
+            the result of an action method.
+            </summary>
+            <param name="context">The context in which the result is executed. The context information includes
+            information about the action that was executed and request information.</param>
+            <returns>A task that represents the asynchronous execute operation.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.IUrlHelper">
+            <summary>
+            Defines the contract for the helper to build URLs for ASP.NET MVC within an application.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.IUrlHelper.ActionContext">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Mvc.IUrlHelper.ActionContext"/> for the current request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)">
+            <summary>
+            Generates a URL with an absolute path for an action method, which contains the action
+            name, controller name, route values, protocol to use, host name, and fragment specified by
+            <see cref="T:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext"/>. Generates an absolute URL if <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Protocol"/> and
+            <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Host"/> are non-<c>null</c>. See the remarks section for important security information.
+            </summary>
+            <param name="actionContext">The context object for the generated URLs for an action method.</param>
+            <returns>The generated URL.</returns>
+            <remarks>
+            <para>
+            The value of <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Host" /> should be a trusted value. Relying on the value of the current request
+            can allow untrusted input to influence the resulting URI unless the <c>Host</c> header has been validated.
+            See the deployment documentation for instructions on how to properly validate the <c>Host</c> header in
+            your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Content(System.String)">
+            <summary>
+            Converts a virtual (relative, starting with ~/) path to an application absolute path.
+            </summary>
+            <remarks>
+            If the specified content path does not start with the tilde (~) character,
+            this method returns <paramref name="contentPath"/> unchanged.
+            </remarks>
+            <param name="contentPath">The virtual path of the content.</param>
+            <returns>The application absolute path.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.IsLocalUrl(System.String)">
+            <summary>
+            Returns a value that indicates whether the URL is local. A URL is considered local if it does not have a
+            host / authority part and it has an absolute path. URLs using virtual paths ('~/') are also local.
+            </summary>
+            <param name="url">The URL.</param>
+            <returns><c>true</c> if the URL is local; otherwise, <c>false</c>.</returns>
+            <example>
+            <para>
+            For example, the following URLs are considered local:
+            <code>
+            /Views/Default/Index.html
+            ~/Index.html
+            </code>
+            </para>
+            <para>
+            The following URLs are non-local:
+            <code>
+            ../Index.html
+            http://www.contoso.com/
+            http://localhost/Index.html
+            </code>
+            </para>
+            </example>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)">
+            <summary>
+            Generates a URL with an absolute path, which contains the route name, route values, protocol to use, host
+            name, and fragment specified by <see cref="T:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext"/>. Generates an absolute URL if
+            <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Protocol"/> and <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Host"/> are non-<c>null</c>.
+            See the remarks section for important security information.
+            </summary>
+            <param name="routeContext">The context object for the generated URLs for a route.</param>
+            <returns>The generated URL.</returns>
+            <remarks>
+            <para>
+            The value of <see cref="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Host" /> should be a trusted value. Relying on the value of the current request
+            can allow untrusted input to influence the resulting URI unless the <c>Host</c> header has been validated.
+            See the deployment documentation for instructions on how to properly validate the <c>Host</c> header in
+            your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Link(System.String,System.Object)">
+            <summary>
+            Generates an absolute URL for the specified <paramref name="routeName"/> and route
+            <paramref name="values"/>, which contains the protocol (such as "http" or "https") and host name from the
+            current request. See the remarks section for important security information.
+            </summary>
+            <param name="routeName">The name of the route that is used to generate URL.</param>
+            <param name="values">An object that contains route values.</param>
+            <returns>The generated absolute URL.</returns>
+            <remarks>
+            <para>
+            This method uses the value of <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.Host"/> to populate the host section of the generated URI.
+            Relying on the value of the current request can allow untrusted input to influence the resulting URI unless 
+            the <c>Host</c> header has been validated. See the deployment documentation for instructions on how to properly 
+            validate the <c>Host</c> header in your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo">
+            <summary>
+            Binding info which represents metadata associated to an action parameter.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.#ctor">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo)">
+            <summary>
+            Creates a copy of a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>.
+            </summary>
+            <param name="other">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> to copy.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.BindingSource">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.BinderModelName">
+            <summary>
+            Gets or sets the binder model name.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.BinderType">
+            <summary>
+            Gets or sets the <see cref="T:System.Type"/> of the model binder used to bind the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.PropertyFilterProvider">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IPropertyFilterProvider"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.RequestPredicate">
+            <summary>
+            Gets or sets a predicate which determines whether or not the model should be bound based on state
+            from the current request.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.GetBindingInfo(System.Collections.Generic.IEnumerable{System.Object})">
+            <summary>
+            Constructs a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> from the given <paramref name="attributes"/>.
+            <para>
+            This overload does not account for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> specified via <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>. Consider using
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.GetBindingInfo(System.Collections.Generic.IEnumerable{System.Object},Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/> overload, or <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.TryApplyBindingInfo(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/>
+            on the result of this method to get a more accurate <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> instance.
+            </para>
+            </summary>
+            <param name="attributes">A collection of attributes which are used to construct <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>
+            </param>
+            <returns>A new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.GetBindingInfo(System.Collections.Generic.IEnumerable{System.Object},Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Constructs a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> from the given <paramref name="attributes"/> and <paramref name="modelMetadata"/>.
+            </summary>
+            <param name="attributes">A collection of attributes which are used to construct <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/>.</param>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.</param>
+            <returns>A new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo"/> if any binding metadata was discovered; otherwise or <see langword="null"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo.TryApplyBindingInfo(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Applies binding metadata from the specified <paramref name="modelMetadata"/>.
+            <para>
+            Uses values from <paramref name="modelMetadata"/> if no value is already available.
+            </para>
+            </summary>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.</param>
+            <returns><see langword="true"/> if any binding metadata from <paramref name="modelMetadata"/> was applied;
+            <see langword="false"/> otherwise.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource">
+            <summary>
+            A metadata object representing a source of data for model binding.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Body">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request body.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Custom">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for a custom model binder (unknown data source).
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Form">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request form-data.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Header">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request headers.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.ModelBinding">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for model binding. Includes form-data, query-string
+            and route data from the request.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Path">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request url path.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Query">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for the request query-string.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Services">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for request services.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Special">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for special parameter types that are not user input.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.FormFile">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> for <see cref="T:Microsoft.AspNetCore.Http.IFormFile"/>, <see cref="T:Microsoft.AspNetCore.Http.IFormCollection"/>, and <see cref="T:Microsoft.AspNetCore.Http.IFormFileCollection"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.#ctor(System.String,System.String,System.Boolean,System.Boolean)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/>.
+            </summary>
+            <param name="id">The id, a unique identifier.</param>
+            <param name="displayName">The display name.</param>
+            <param name="isGreedy">A value indicating whether or not the source is greedy.</param>
+            <param name="isFromRequest">
+            A value indicating whether or not the data comes from the HTTP request.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.DisplayName">
+            <summary>
+            Gets the display name for the source.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Id">
+            <summary>
+            Gets the unique identifier for the source. Sources are compared based on their Id.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsGreedy">
+            <summary>
+            Gets a value indicating whether or not a source is greedy. A greedy source will bind a model in
+            a single operation, and will not decompose the model into sub-properties.
+            </summary>
+            <remarks>
+            <para>
+            For sources based on a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/>, setting <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsGreedy"/> to <c>false</c>
+            will most closely describe the behavior. This value is used inside the default model binders to 
+            determine whether or not to attempt to bind properties of a model.
+            </para>
+            <para>
+            Set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsGreedy"/> to <c>true</c> for most custom <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> implementations.
+            </para>
+            <para>
+            If a source represents an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> which will recursively traverse a model's properties
+            and bind them individually using <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/>, then set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsGreedy"/> to
+            <c>true</c>.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.IsFromRequest">
+            <summary>
+            Gets a value indicating whether or not the binding source uses input from the current HTTP request.
+            </summary>
+            <remarks>
+            Some sources (like <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Services"/>) are based on application state and not user
+            input. These are excluded by default from ApiExplorer diagnostics.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.CanAcceptDataFrom(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <summary>
+            Gets a value indicating whether or not the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> can accept
+            data from <paramref name="bindingSource"/>.
+            </summary>
+            <param name="bindingSource">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> to consider as input.</param>
+            <returns><c>True</c> if the source is compatible, otherwise <c>false</c>.</returns>
+            <remarks>
+            When using this method, it is expected that the left-hand-side is metadata specified
+            on a property or parameter for model binding, and the right hand side is a source of
+            data used by a model binder or value provider.
+            
+            This distinction is important as the left-hand-side may be a composite, but the right
+            may not.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.op_Equality(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource,Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource.op_Inequality(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource,Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource">
+            <summary>
+            A <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource.BindingSources"/> which can represent multiple value-provider data sources.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource.Create(System.Collections.Generic.IEnumerable{Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource},System.String)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource"/>.
+            </summary>
+            <param name="bindingSources">
+            The set of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> entries.
+            Must be value-provider sources and user input.
+            </param>
+            <param name="displayName">The display name for the composite source.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource"/>.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource.BindingSources">
+            <summary>
+            Gets the set of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> entries.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.CompositeBindingSource.CanAcceptDataFrom(Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName">
+            <summary>
+            An abstraction used when grouping enum values for <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EnumGroupedDisplayNamesAndValues"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName.#ctor(System.String,System.String)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName"/> structure. This constructor should 
+            not be used in any site where localization is important.
+            </summary>
+            <param name="group">The group name.</param>
+            <param name="name">The name.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName.#ctor(System.String,System.Func{System.String})">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName"/> structure.
+            </summary>
+            <param name="group">The group name.</param>
+            <param name="name">A <see cref="T:System.Func`1"/> which will return the name.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName.Group">
+            <summary>
+            Gets the Group name.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.EnumGroupAndName.Name">
+            <summary>
+            Gets the name.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IBinderTypeProviderMetadata">
+            <summary>
+            Provides a <see cref="T:System.Type"/> which implements <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IBinderTypeProviderMetadata.BinderType">
+            <summary>
+            A <see cref="T:System.Type"/> which implements either <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata">
+            <summary>
+            Metadata which specifies the data source for model binding.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata.BindingSource">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata.BindingSource"/>. 
+            </summary>
+            <remarks>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.IBindingSourceMetadata.BindingSource"/> is metadata which can be used to determine which data
+            sources are valid for model binding of a property or parameter.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder">
+            <summary>
+            Defines an interface for model binders.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder.BindModelAsync(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext)">
+            <summary>
+            Attempts to bind a model.
+            </summary>
+            <param name="bindingContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext"/>.</param>
+            <returns>
+            <para>
+            A <see cref="T:System.Threading.Tasks.Task"/> which will complete when the model binding process completes.
+            </para>
+            <para>
+            If model binding was successful, the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result"/> should have
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.IsModelSet"/> set to <c>true</c>.
+            </para>
+            <para>
+            A model binder that completes successfully should set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result"/> to
+            a value returned from <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Success(System.Object)"/>. 
+            </para>
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinderProvider">
+            <summary>
+            Creates <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> instances. Register <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinderProvider"/>
+            instances in <c>MvcOptions</c>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinderProvider.GetBinder(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> based on <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext"/>.</param>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelNameProvider">
+            <summary>
+            Represents an entity which can provide model name as metadata.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IModelNameProvider.Name">
+            <summary>
+            Model name.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IPropertyFilterProvider">
+            <summary>
+            Provides a predicate which can determines which model properties should be bound by model binding.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IPropertyFilterProvider.PropertyFilter">
+            <summary>
+            Gets a predicate which can determines which model properties should be bound by model binding.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IRequestPredicateProvider">
+            <summary>
+            An interface that allows a top-level model to be bound or not bound based on state associated
+            with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.IRequestPredicateProvider.RequestPredicate">
+            <summary>
+            Gets a function which determines whether or not the model object should be bound based
+            on the current request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider">
+            <summary>
+            Defines the methods that are required for a value provider.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider.ContainsPrefix(System.String)">
+            <summary>
+            Determines whether the collection contains the specified prefix.
+            </summary>
+            <param name="prefix">The prefix to search for.</param>
+            <returns>true if the collection contains the specified prefix; otherwise, false.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider.GetValue(System.String)">
+            <summary>
+            Retrieves a value object using the specified key.
+            </summary>
+            <param name="key">The key of the value object to retrieve.</param>
+            <returns>The value object for the specified key. If the exact key is not found, null.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory">
+            <summary>
+            A factory for creating <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> instances.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory.CreateValueProviderAsync(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> with values from the current request
+            and adds it to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ValueProviders"/> list.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext"/>.</param>
+            <returns>A <see cref="T:System.Threading.Tasks.Task"/> that when completed will add an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> instance
+            to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ValueProviders"/> list if applicable.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider">
+            <summary>
+            Provider for error messages the model binding system detects.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.MissingBindRequiredValueAccessor">
+            <summary>
+            Error message the model binding system adds when a property with an associated
+            <c>BindRequiredAttribute</c> is not bound.
+            </summary>
+            <value>
+            Default <see cref="T:System.String"/> is "A value for the '{0}' parameter or property was not provided.".
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.MissingKeyOrValueAccessor">
+            <summary>
+            Error message the model binding system adds when either the key or the value of a
+            <see cref="T:System.Collections.Generic.KeyValuePair`2"/> is bound but not both.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "A value is required.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.MissingRequestBodyRequiredValueAccessor">
+            <summary>
+            Error message the model binding system adds when no value is provided for the request body,
+            but a value is required.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "A non-empty request body is required.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.ValueMustNotBeNullAccessor">
+            <summary>
+            Error message the model binding system adds when a <c>null</c> value is bound to a
+            non-<see cref="T:System.Nullable"/> property.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The value '{0}' is invalid.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.AttemptedValueIsInvalidAccessor">
+            <summary>
+            Error message the model binding system adds when <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.Exception"/> is of type
+            <see cref="T:System.FormatException"/> or <see cref="T:System.OverflowException"/>, value is known, and error is associated
+            with a property.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The value '{0}' is not valid for {1}.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.NonPropertyAttemptedValueIsInvalidAccessor">
+            <summary>
+            Error message the model binding system adds when <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.Exception"/> is of type
+            <see cref="T:System.FormatException"/> or <see cref="T:System.OverflowException"/>, value is known, and error is associated
+            with a collection element or action parameter.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The value '{0}' is not valid.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.UnknownValueIsInvalidAccessor">
+            <summary>
+            Error message the model binding system adds when <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.Exception"/> is of type
+            <see cref="T:System.FormatException"/> or <see cref="T:System.OverflowException"/>, value is unknown, and error is associated
+            with a property.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The supplied value is invalid for {0}.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.NonPropertyUnknownValueIsInvalidAccessor">
+            <summary>
+            Error message the model binding system adds when <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.Exception"/> is of type
+            <see cref="T:System.FormatException"/> or <see cref="T:System.OverflowException"/>, value is unknown, and error is associated
+            with a collection element or action parameter.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The supplied value is invalid.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.ValueIsInvalidAccessor">
+            <summary>
+            Fallback error message HTML and tag helpers display when a property is invalid but the
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError"/>s have <c>null</c> <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelError.ErrorMessage"/>s.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The value '{0}' is invalid.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.ValueMustBeANumberAccessor">
+            <summary>
+            Error message HTML and tag helpers add for client-side validation of numeric formats. Visible in the
+            browser if the field for a <c>float</c> (for example) property does not have a correctly-formatted value.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The field {0} must be a number.".</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider.NonPropertyValueMustBeANumberAccessor">
+            <summary>
+            Error message HTML and tag helpers add for client-side validation of numeric formats. Visible in the
+            browser if the field for a <c>float</c> (for example) collection element or action parameter does not have a
+            correctly-formatted value.
+            </summary>
+            <value>Default <see cref="T:System.String"/> is "The field must be a number.".</value>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity">
+            <summary>
+            A key type which identifies a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ForType(System.Type)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/> for the provided model <see cref="T:System.Type"/>.
+            </summary>
+            <param name="modelType">The model <see cref="T:System.Type"/>.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ForProperty(System.Type,System.String,System.Type)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/> for the provided property.
+            </summary>
+            <param name="modelType">The model type.</param>
+            <param name="name">The name of the property.</param>
+            <param name="containerType">The container type of the model property.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ForParameter(System.Reflection.ParameterInfo)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/> for the provided parameter.
+            </summary>
+            <param name="parameter">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ParameterInfo" />.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ForParameter(System.Reflection.ParameterInfo,System.Type)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/> for the provided parameter with the specified
+            model type.
+            </summary>
+            <param name="parameter">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ParameterInfo" />.</param>
+            <param name="modelType">The model type.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ContainerType">
+            <summary>
+            Gets the <see cref="T:System.Type"/> defining the model property represented by the current
+            instance, or <c>null</c> if the current instance does not represent a property.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ModelType">
+            <summary>
+            Gets the <see cref="T:System.Type"/> represented by the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.MetadataKind">
+            <summary>
+            Gets a value indicating the kind of metadata represented by the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.Name">
+            <summary>
+            Gets the name of the current instance if it represents a parameter or property, or <c>null</c> if
+            the current instance represents a type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.ParameterInfo">
+            <summary>
+            Gets a descriptor for the parameter, or <c>null</c> if this instance
+            does not represent a parameter.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataKind">
+            <summary>
+            Enumeration for the kinds of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataKind.Type">
+            <summary>
+            Used for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for a <see cref="T:System.Type"/>.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataKind.Property">
+            <summary>
+            Used for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for a property.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataKind.Parameter">
+            <summary>
+            Used for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for a parameter.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext">
+            <summary>
+            A context object for <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinderProvider.GetBinder(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext)"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.CreateBinder(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Creates an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> for the given <paramref name="metadata"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for the model.</param>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.CreateBinder(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,Microsoft.AspNetCore.Mvc.ModelBinding.BindingInfo)">
+            <summary>
+            Creates an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> for the given <paramref name="metadata"/>
+            and <paramref name="bindingInfo"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for the model.</param>
+            <param name="bindingInfo">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.BindingInfo"/> that should be used
+            for creating the binder.</param>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/>.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.BindingInfo">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.BindingInfo"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.Metadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.MetadataProvider">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderProviderContext.Services">
+            <summary>
+            Gets the <see cref="T:System.IServiceProvider"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext">
+            <summary>
+            A context that contains operating information for model binding and validation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ActionContext">
+            <summary>
+            Represents the <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/> associated with this context.
+            </summary>
+            <remarks>
+            The property setter is provided for unit testing purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.BinderModelName">
+            <summary>
+            Gets or sets a model name which is explicitly set using an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelNameProvider"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.BindingSource">
+            <summary>
+            Gets or sets a value which represents the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.BindingSource"/> associated with the
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Model"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.FieldName">
+            <summary>
+            Gets or sets the name of the current field being bound.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.HttpContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.IsTopLevelObject">
+            <summary>
+            Gets or sets an indication that the current binder is handling the top-level object.
+            </summary>
+            <remarks>Passed into the model binding system.</remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Model">
+            <summary>
+            Gets or sets the model value for the current operation.
+            </summary>
+            <remarks>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Model"/> will typically be set for a binding operation that works
+            against a pre-existing model object to update certain properties.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelMetadata">
+            <summary>
+            Gets or sets the metadata for the model associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelName">
+            <summary>
+            Gets or sets the name of the model. This property is used as a key for looking up values in
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> during model binding.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.OriginalModelName">
+            <summary>
+            Gets or sets the name of the top-level model. This is not reset to <see cref="F:System.String.Empty"/> when value
+            providers have no match for that model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelState">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> used to capture <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> values
+            for properties in the object graph of the model when binding.
+            </summary>
+            <remarks>
+            The property setter is provided for unit testing purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelType">
+            <summary>
+            Gets the type of the model.
+            </summary>
+            <remarks>
+            The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelMetadata"/> property must be set to access this property.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.PropertyFilter">
+            <summary>
+            Gets or sets a predicate which will be evaluated for each property to determine if the property
+            is eligible for model binding.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ValidationState">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary"/>. Used for tracking validation state to
+            customize validation behavior for a model object.
+            </summary>
+            <remarks>
+            The property setter is provided for unit testing purposes only.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ValueProvider">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result">
+            <summary>
+            <para>
+            Gets or sets a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> which represents the result of the model binding process.
+            </para>
+            <para>
+            Before an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> is called, <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result"/> will be set to a value indicating
+            failure. The binder should set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Result"/> to a value created with
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Success(System.Object)"/> if model binding succeeded.
+            </para>
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.EnterNestedScope(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.String,System.Object)">
+            <summary>
+            Pushes a layer of state onto this context. Model binders will call this as part of recursion when binding
+            properties or collection items.
+            </summary>
+            <param name="modelMetadata">
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> to assign to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelMetadata"/> property.
+            </param>
+            <param name="fieldName">Name to assign to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.FieldName"/> property.</param>
+            <param name="modelName">Name to assign to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ModelName"/> property.</param>
+            <param name="model">Instance to assign to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.Model"/> property.</param>
+            <returns>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope"/> scope object which should be used in a <c>using</c> statement where
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.EnterNestedScope(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.String,System.Object)"/> is called.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.EnterNestedScope">
+            <summary>
+            Pushes a layer of state onto this context. Model binders will call this as part of recursion when binding
+            properties or collection items.
+            </summary>
+            <returns>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope"/> scope object which should be used in a <c>using</c> statement where
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.EnterNestedScope"/> is called.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.ExitNestedScope">
+            <summary>
+            Removes a layer of state pushed by calling <see cref="M:EnterNestedScope"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope">
+            <summary>
+            Return value of <see cref="M:EnterNestedScope"/>. Should be disposed
+            by caller when child binding context state should be popped off of
+            the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext)">
+            <summary>
+            Initializes the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope"/> for a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext"/>.
+            </summary>
+            <param name="context"></param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope.Dispose">
+            <summary>
+            Exits the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingContext.NestedScope"/> created by calling <see cref="M:EnterNestedScope"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult">
+            <summary>
+            Contains the result of model binding.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Failed">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> representing a failed model binding operation.
+            </summary>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> representing a failed model binding operation.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Success(System.Object)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> representing a successful model binding operation.
+            </summary>
+            <param name="model">The model value. May be <c>null.</c></param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> representing a successful model bind.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Model">
+            <summary>
+            Gets the model associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.IsModelSet">
+            <summary>
+            <para>
+            Gets a value indicating whether or not the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Model"/> value has been set.
+            </para>
+            <para>
+            This property can be used to distinguish between a model binder which does not find a value and
+            the case where a model binder sets the <c>null</c> value.
+            </para>
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.ToString">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.op_Equality(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult,Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult)">
+            <summary>
+            Compares <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> objects for equality.
+            </summary>
+            <param name="x">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/>.</param>
+            <param name="y">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/>.</param>
+            <returns><c>true</c> if the objects are equal, otherwise <c>false</c>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult.op_Inequality(Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult,Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult)">
+            <summary>
+            Compares <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/> objects for inequality.
+            </summary>
+            <param name="x">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/>.</param>
+            <param name="y">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelBindingResult"/>.</param>
+            <returns><c>true</c> if the objects are not equal, otherwise <c>false</c>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata">
+            <summary>
+            A metadata representation of a model type, property or parameter.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DefaultOrder">
+            <summary>
+            The default value of <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Order"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+            <param name="identity">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelMetadataIdentity"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ContainerType">
+            <summary>
+            Gets the type containing the property if this metadata is for a property; <see langword="null"/> otherwise.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ContainerMetadata">
+            <summary>
+            Gets the metadata for <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ContainerType"/> if this metadata is for a property;
+            <see langword="null"/> otherwise.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.MetadataKind">
+            <summary>
+            Gets a value indicating the kind of metadata element represented by the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType">
+            <summary>
+            Gets the model type represented by the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Name">
+            <summary>
+            Gets the name of the parameter or property if this metadata is for a parameter or property;
+            <see langword="null"/> otherwise i.e. if this is the metadata for a type.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ParameterName">
+            <summary>
+            Gets the name of the parameter if this metadata is for a parameter; <see langword="null"/> otherwise.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertyName">
+            <summary>
+            Gets the name of the property if this metadata is for a property; <see langword="null"/> otherwise.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Identity">
+            <summary>
+            Gets the key for the current instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.AdditionalValues">
+            <summary>
+            Gets a collection of additional information about the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Properties">
+            <summary>
+            Gets the collection of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instances for the model's properties.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.BinderModelName">
+            <summary>
+            Gets the name of a model if specified explicitly using <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelNameProvider"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.BinderType">
+            <summary>
+            Gets the <see cref="T:System.Type"/> of an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelBinder"/> of a model if specified explicitly using
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IBinderTypeProviderMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.BindingSource">
+            <summary>
+            Gets a binder metadata for this model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ConvertEmptyStringToNull">
+            <summary>
+            Gets a value indicating whether or not to convert an empty string value or one containing only whitespace
+            characters to <c>null</c> when representing a model as text.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DataTypeName">
+            <summary>
+            Gets the name of the model's datatype.  Overrides <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> in some
+            display scenarios.
+            </summary>
+            <value><c>null</c> unless set manually or through additional metadata e.g. attributes.</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Description">
+            <summary>
+            Gets the description of the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DisplayFormatString">
+            <summary>
+            Gets the format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to display the
+            model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DisplayName">
+            <summary>
+            Gets the display name of the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EditFormatString">
+            <summary>
+            Gets the format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to edit the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ElementMetadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for elements of <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> if that <see cref="T:System.Type"/>
+            implements <see cref="T:System.Collections.IEnumerable"/>.
+            </summary>
+            <value>
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for <c>T</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> implements
+            <see cref="T:System.Collections.Generic.IEnumerable`1"/>. <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for <c>object</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/>
+            implements <see cref="T:System.Collections.IEnumerable"/> but not <see cref="T:System.Collections.Generic.IEnumerable`1"/>. <c>null</c> otherwise i.e. when
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnumerableType"/> is <c>false</c>.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EnumGroupedDisplayNamesAndValues">
+            <summary>
+            Gets the ordered and grouped display names and values of all <see cref="T:System.Enum"/> values in
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/>.
+            </summary>
+            <value>
+            An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Collections.Generic.KeyValuePair`2"/> of mappings between
+            <see cref="T:System.Enum"/> field groups, names and values. <c>null</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnum"/> is <c>false</c>.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EnumNamesAndValues">
+            <summary>
+            Gets the names and values of all <see cref="T:System.Enum"/> values in <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/>.
+            </summary>
+            <value>
+            An <see cref="T:System.Collections.Generic.IReadOnlyDictionary`2"/> of mappings between <see cref="T:System.Enum"/> field names
+            and values. <c>null</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnum"/> is <c>false</c>.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.HasNonDefaultEditFormat">
+            <summary>
+            Gets a value indicating whether <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.EditFormatString"/> has a non-<c>null</c>, non-empty
+            value different from the default for the datatype.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.HtmlEncode">
+            <summary>
+            Gets a value indicating whether the value should be HTML-encoded.
+            </summary>
+            <value>If <c>true</c>, value should be HTML-encoded. Default is <c>true</c>.</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.HideSurroundingHtml">
+            <summary>
+            Gets a value indicating whether the "HiddenInput" display template should return
+            <c>string.Empty</c> (not the expression value) and whether the "HiddenInput" editor template should not
+            also return the expression value (together with the hidden &lt;input&gt; element).
+            </summary>
+            <remarks>
+            If <c>true</c>, also causes the default <see cref="T:System.Object"/> display and editor templates to return HTML
+            lacking the usual per-property &lt;div&gt; wrapper around the associated property. Thus the default
+            <see cref="T:System.Object"/> display template effectively skips the property and the default <see cref="T:System.Object"/>
+            editor template returns only the hidden &lt;input&gt; element for the property.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsBindingAllowed">
+            <summary>
+            Gets a value indicating whether or not the model value can be bound by model binding. This is only
+            applicable when the current instance represents a property.
+            </summary>
+            <remarks>
+            If <c>true</c> then the model value is considered supported by model binding and can be set
+            based on provided input in the request.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsBindingRequired">
+            <summary>
+            Gets a value indicating whether or not the model value is required by model binding. This is only
+            applicable when the current instance represents a property.
+            </summary>
+            <remarks>
+            If <c>true</c> then the model value is considered required by model binding and must have a value
+            supplied in the request to be considered valid.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnum">
+            <summary>
+            Gets a value indicating whether <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/> is for an <see cref="T:System.Enum"/>.
+            </summary>
+            <value>
+            <c>true</c> if <c>type.IsEnum</c> (<c>type.GetTypeInfo().IsEnum</c> for DNX Core 5.0) is <c>true</c> for
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/>; <c>false</c> otherwise.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsFlagsEnum">
+            <summary>
+            Gets a value indicating whether <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/> is for an <see cref="T:System.Enum"/> with an
+            associated <see cref="T:System.FlagsAttribute"/>.
+            </summary>
+            <value>
+            <c>true</c> if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnum"/> is <c>true</c> and <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType"/> has an
+            associated <see cref="T:System.FlagsAttribute"/>; <c>false</c> otherwise.
+            </value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsReadOnly">
+            <summary>
+            Gets a value indicating whether or not the model value is read-only. This is only applicable when
+            the current instance represents a property.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsRequired">
+            <summary>
+            Gets a value indicating whether or not the model value is required. This is only applicable when
+            the current instance represents a property.
+            </summary>
+            <remarks>
+            <para>
+            If <c>true</c> then the model value is considered required by validators.
+            </para>
+            <para>
+            By default an implicit <c>System.ComponentModel.DataAnnotations.RequiredAttribute</c> will be added
+            if not present when <c>true.</c>.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelBindingMessageProvider">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Metadata.ModelBindingMessageProvider"/> instance.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Order">
+            <summary>
+            Gets a value indicating where the current metadata should be ordered relative to other properties
+            in its containing type.
+            </summary>
+            <remarks>
+            <para>For example this property is used to order items in <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Properties"/>.</para>
+            <para>The default order is <c>10000</c>.</para>
+            </remarks>
+            <value>The order value of the current metadata.</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Placeholder">
+            <summary>
+            Gets the text to display as a placeholder value for an editor.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.NullDisplayText">
+            <summary>
+            Gets the text to display when the model is <c>null</c>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertyFilterProvider">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IPropertyFilterProvider"/>, which can determine which properties
+            should be model bound.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ShowForDisplay">
+            <summary>
+            Gets a value that indicates whether the property should be displayed in read-only views.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ShowForEdit">
+            <summary>
+            Gets a value that indicates whether the property should be displayed in editable views.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.SimpleDisplayProperty">
+            <summary>
+            Gets  a value which is the name of the property used to display the model.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.TemplateHint">
+            <summary>
+            Gets a string used by the templating system to discover display-templates and editor-templates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertyValidationFilter">
+            <summary>
+            Gets an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter"/> implementation that indicates whether this model should be
+            validated. If <c>null</c>, properties with this <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> are validated.
+            </summary>
+            <value>Defaults to <c>null</c>.</value>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ValidateChildren">
+            <summary>
+            Gets a value that indicates whether properties or elements of the model should be validated.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.HasValidators">
+            <summary>
+            Gets a value that indicates if the model, or one of it's properties, or elements has associatated validators.
+            </summary>
+            <remarks>
+            When <see langword="false"/>, validation can be assume that the model is valid (<see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid"/>) without
+            inspecting the object graph.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ValidatorMetadata">
+            <summary>
+            Gets a collection of metadata items for validators.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ElementType">
+            <summary>
+            Gets the <see cref="T:System.Type"/> for elements of <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> if that <see cref="T:System.Type"/>
+            implements <see cref="T:System.Collections.IEnumerable"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsComplexType">
+            <summary>
+            Gets a value indicating whether <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> is a complex type.
+            </summary>
+            <remarks>
+            A complex type is defined as a <see cref="T:System.Type"/> without a <see cref="T:System.ComponentModel.TypeConverter"/> that can convert
+            from <see cref="T:System.String"/>. Most POCO and <see cref="T:System.Collections.IEnumerable"/> types are therefore complex. Most, if
+            not all, BCL value types are simple types.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsNullableValueType">
+            <summary>
+            Gets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> is a <see cref="T:System.Nullable`1"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsCollectionType">
+            <summary>
+            Gets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> is a collection type.
+            </summary>
+            <remarks>
+            A collection type is defined as a <see cref="T:System.Type"/> which is assignable to <see cref="T:System.Collections.Generic.ICollection`1"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsEnumerableType">
+            <summary>
+            Gets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> is an enumerable type.
+            </summary>
+            <remarks>
+            An enumerable type is defined as a <see cref="T:System.Type"/> which is assignable to
+            <see cref="T:System.Collections.IEnumerable"/>, and is not a <see cref="T:System.String"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsReferenceOrNullableType">
+            <summary>
+            Gets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> allows <c>null</c> values.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.UnderlyingOrModelType">
+            <summary>
+            Gets the underlying type argument if <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> inherits from <see cref="T:System.Nullable`1"/>.
+            Otherwise gets <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/>.
+            </summary>
+            <remarks>
+            Identical to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ModelType"/> unless <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.IsNullableValueType"/> is <c>true</c>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertyGetter">
+            <summary>
+            Gets a property getter delegate to get the property value from a model object.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.PropertySetter">
+            <summary>
+            Gets a property setter delegate to set the property value on a model object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetDisplayName">
+            <summary>
+            Gets a display name for the model.
+            </summary>
+            <remarks>
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetDisplayName"/> will return the first of the following expressions which has a
+            non-<see langword="null"/> value: <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.DisplayName"/>, <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Name"/>, or <c>ModelType.Name</c>.
+            </remarks>
+            <returns>The display name.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetMetadataForType(System.Type)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.GetMetadataForProperties(System.Type)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider">
+            <summary>
+            A provider that can supply instances of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForProperties(System.Type)">
+            <summary>
+            Supplies metadata describing the properties of a <see cref="T:System.Type"/>.
+            </summary>
+            <param name="modelType">The <see cref="T:System.Type"/>.</param>
+            <returns>A set of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instances describing properties of the <see cref="T:System.Type"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForType(System.Type)">
+            <summary>
+            Supplies metadata describing a <see cref="T:System.Type"/>.
+            </summary>
+            <param name="modelType">The <see cref="T:System.Type"/>.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance describing the <see cref="T:System.Type"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForParameter(System.Reflection.ParameterInfo)">
+            <summary>
+            Supplies metadata describing a parameter.
+            </summary>
+            <param name="parameter">The <see cref="T:System.Reflection.ParameterInfo"/>.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance describing the <paramref name="parameter"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForParameter(System.Reflection.ParameterInfo,System.Type)">
+            <summary>
+            Supplies metadata describing a parameter.
+            </summary>
+            <param name="parameter">The <see cref="T:System.Reflection.ParameterInfo"/></param>
+            <param name="modelType">The actual model type.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance describing the <paramref name="parameter"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadataProvider.GetMetadataForProperty(System.Reflection.PropertyInfo,System.Type)">
+            <summary>
+            Supplies metadata describing a property.
+            </summary>
+            <param name="propertyInfo">The <see cref="T:System.Reflection.PropertyInfo"/>.</param>
+            <param name="modelType">The actual model type.</param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance describing the <paramref name="propertyInfo"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelPropertyCollection">
+            <summary>
+            A read-only collection of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> objects which represent model properties.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelPropertyCollection.#ctor(System.Collections.Generic.IEnumerable{Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelPropertyCollection"/>.
+            </summary>
+            <param name="properties">The properties.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelPropertyCollection.Item(System.String)">
+            <summary>
+            Gets a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance for the property corresponding to <paramref name="propertyName"/>.
+            </summary>
+            <param name="propertyName">
+            The property name. Property names are compared using <see cref="F:System.StringComparison.Ordinal"/>.
+            </param>
+            <returns>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> instance for the property specified by <paramref name="propertyName"/>, or
+            <c>null</c> if no match can be found.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary">
+            <summary>
+            Represents the state of an attempt to bind values from an HTTP Request to an action method, which includes
+            validation information.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.DefaultMaxAllowedErrors">
+            <summary>
+            The default value for <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors"/> of <c>200</c>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> class.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.#ctor(System.Int32)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> class.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> class by using values that are copied
+            from the specified <paramref name="dictionary"/>.
+            </summary>
+            <param name="dictionary">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> to copy values from.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Root">
+            <summary>
+            Root entry for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors">
+            <summary>
+            Gets or sets the maximum allowed model state errors in this instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            Defaults to <c>200</c>.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> tracks the number of model errors added by calls to
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.AddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/> or
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryAddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/>.
+            Once the value of <code>MaxAllowedErrors - 1</code> is reached, if another attempt is made to add an error,
+            the error message will be ignored and a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> will be added.
+            </para>
+            <para>
+            Errors added via modifying <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> directly do not count towards this limit.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.HasReachedMaxErrors">
+            <summary>
+            Gets a value indicating whether or not the maximum number of errors have been
+            recorded.
+            </summary>
+            <remarks>
+            Returns <c>true</c> if a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> has been recorded;
+            otherwise <c>false</c>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.ErrorCount">
+            <summary>
+            Gets the number of errors added to this instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> via
+            <see cref="M:AddModelError"/> or <see cref="M:TryAddModelError"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Count">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Keys">
+            <summary>
+            Gets the key sequence.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.System#Collections#Generic#IReadOnlyDictionary{System#String,Microsoft#AspNetCore#Mvc#ModelBinding#ModelStateEntry}#Keys">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Values">
+            <summary>
+            Gets the value sequence.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.System#Collections#Generic#IReadOnlyDictionary{System#String,Microsoft#AspNetCore#Mvc#ModelBinding#ModelStateEntry}#Values">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.IsValid">
+            <summary>
+            Gets a value that indicates whether any model state values in this model state dictionary is invalid or not validated.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.ValidationState">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Item(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryAddModelException(System.String,System.Exception)">
+            <summary>
+            Adds the specified <paramref name="exception"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/> instance
+            that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <remarks>
+            This method allows adding the <paramref name="exception"/> to the current <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>
+            when <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> is not available or the exact <paramref name="exception"/>
+            must be maintained for later use (even if it is for example a <see cref="T:System.FormatException"/>).
+            Where <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> is available, use <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.AddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)"/> instead.
+            </remarks>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="exception">The <see cref="T:System.Exception"/> to add.</param>
+            <returns>
+            <c>True</c> if the given error was added, <c>false</c> if the error was ignored.
+            See <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors"/>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.AddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Adds the specified <paramref name="exception"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/> instance
+            that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="exception">The <see cref="T:System.Exception"/> to add. Some exception types will be replaced with
+            a descriptive error message.</param>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with the model.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryAddModelError(System.String,System.Exception,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata)">
+            <summary>
+            Attempts to add the specified <paramref name="exception"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/>
+            instance that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="exception">The <see cref="T:System.Exception"/> to add. Some exception types will be replaced with
+            a descriptive error message.</param>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with the model.</param>
+            <returns>
+            <c>True</c> if the given error was added, <c>false</c> if the error was ignored.
+            See <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors"/>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.AddModelError(System.String,System.String)">
+            <summary>
+            Adds the specified <paramref name="errorMessage"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/> instance
+            that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="errorMessage">The error message to add.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryAddModelError(System.String,System.String)">
+            <summary>
+            Attempts to add the specified <paramref name="errorMessage"/> to the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors"/>
+            instance that is associated with the specified <paramref name="key"/>. If the maximum number of allowed
+            errors has already been recorded, ensures that a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> exception is
+            recorded instead.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to add errors to.</param>
+            <param name="errorMessage">The error message to add.</param>
+            <returns>
+            <c>True</c> if the given error was added, <c>false</c> if the error was ignored.
+            See <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MaxAllowedErrors"/>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.GetFieldValidationState(System.String)">
+            <summary>
+            Returns the aggregate <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState"/> for items starting with the
+            specified <paramref name="key"/>.
+            </summary>
+            <param name="key">The key to look up model state errors for.</param>
+            <returns>Returns <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Unvalidated"/> if no entries are found for the specified
+            key, <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Invalid"/> if at least one instance is found with one or more model
+            state errors; <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid"/> otherwise.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.GetValidationState(System.String)">
+            <summary>
+            Returns <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState"/> for the <paramref name="key"/>.
+            </summary>
+            <param name="key">The key to look up model state errors for.</param>
+            <returns>Returns <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Unvalidated"/> if no entry is found for the specified
+            key, <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Invalid"/> if an instance is found with one or more model
+            state errors; <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid"/> otherwise.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MarkFieldValid(System.String)">
+            <summary>
+            Marks the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.ValidationState"/> for the entry with the specified
+            <paramref name="key"/> as <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Valid"/>.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to mark as valid.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.MarkFieldSkipped(System.String)">
+            <summary>
+            Marks the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.ValidationState"/> for the entry with the specified <paramref name="key"/>
+            as <see cref="F:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState.Skipped"/>.
+            </summary>
+            <param name="key">The key of the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> to mark as skipped.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Merge(Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary)">
+            <summary>
+            Copies the values from the specified <paramref name="dictionary"/> into this instance, overwriting
+            existing values if keys are the same.
+            </summary>
+            <param name="dictionary">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> to copy values from.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.SetModelValue(System.String,System.Object,System.String)">
+            <summary>
+            Sets the of <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.RawValue"/> and <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.AttemptedValue"/> for
+            the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> with the specified <paramref name="key"/>.
+            </summary>
+            <param name="key">The key for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> entry.</param>
+            <param name="rawValue">The raw value for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> entry.</param>
+            <param name="attemptedValue">
+            The values of <paramref name="rawValue"/> in a comma-separated <see cref="T:System.String"/>.
+            </param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.SetModelValue(System.String,Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)">
+            <summary>
+            Sets the value for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> with the specified <paramref name="key"/>.
+            </summary>
+            <param name="key">The key for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> entry</param>
+            <param name="valueProviderResult">
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> with data for the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> entry.
+            </param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.ClearValidationState(System.String)">
+            <summary>
+            Clears <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> entries that match the key that is passed as parameter.
+            </summary>
+            <param name="key">The key of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/> to clear.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Clear">
+            <summary>
+            Removes all keys and values from this instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.ContainsKey(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Remove(System.String)">
+            <summary>
+            Removes the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> with the specified <paramref name="key"/>.
+            </summary>
+            <param name="key">The key.</param>
+            <returns><c>true</c> if the element is successfully removed; otherwise <c>false</c>. This method also
+            returns <c>false</c> if key was not found.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.TryGetValue(System.String,Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry@)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.GetEnumerator">
+            <summary>
+            Returns an enumerator that iterates through this instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+            <returns>An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.Enumerator"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{System#String,Microsoft#AspNetCore#Mvc#ModelBinding#ModelStateEntry}}#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary.System#Collections#IEnumerable#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry">
+            <summary>
+            An entry in a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.RawValue">
+            <summary>
+            Gets the raw value from the request associated with this entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.AttemptedValue">
+            <summary>
+            Gets the set of values contained in <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.RawValue"/>, joined into a comma-separated string.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Errors">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelErrorCollection"/> for this entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.ValidationState">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelValidationState"/> for this entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.IsContainerNode">
+            <summary>
+            Gets a value that determines if the current instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> is a container node.
+            Container nodes represent prefix nodes that aren't explicitly added to the
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.GetModelStateForProperty(System.String)">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> for a sub-property with the specified
+            <paramref name="propertyName"/>.
+            </summary>
+            <param name="propertyName">The property name to lookup.</param>
+            <returns>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> if a sub-property was found; otherwise <see langword="null"/>.
+            </returns>
+            <remarks>
+            This method returns any existing entry, even those with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.IsContainerNode"/> with value
+            <see langword="true"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.Children">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry"/> values for sub-properties.
+            </summary>
+            <remarks>
+            This property returns all existing entries, even those with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelStateEntry.IsContainerNode"/> with value
+            <see langword="true"/>.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException">
+            <summary>
+            The <see cref="T:System.Exception"/> that is thrown when too many model errors are encountered.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException.#ctor(System.String)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.TooManyModelErrorsException"/> with the specified
+            exception <paramref name="message"/>.
+            </summary>
+            <param name="message">The message that describes the error.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext">
+            <summary>
+            The context for client-side model validation.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider,System.Collections.Generic.IDictionary{System.String,System.String})">
+            <summary>
+            Create a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/> for validation.</param>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for validation.</param>
+            <param name="metadataProvider">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/> to be used in validation.</param>
+            <param name="attributes">The attributes dictionary for the HTML tag being rendered.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext.Attributes">
+            <summary>
+            Gets the attributes dictionary for the HTML tag being rendered.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem">
+            <summary>
+            Used to associate validators with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.ValidatorMetadata"/> instances
+            as part of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext"/>. An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidator"/> should
+            inspect <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.Results"/> and set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/> and
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.IsReusable"/> as appropriate.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.#ctor">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.#ctor(System.Object)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem"/>.
+            </summary>
+            <param name="validatorMetadata">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.ValidatorMetadata"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.ValidatorMetadata">
+            <summary>
+            Gets the metadata associated with the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidator"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.IsReusable">
+            <summary>
+            Gets or sets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/> can be reused across requests.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext">
+            <summary>
+            A context for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext"/>.
+            </summary>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for the model being validated.
+            </param>
+            <param name="items">The list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem"/>s.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.ModelMetadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.ValidatorMetadata">
+            <summary>
+            Gets the validator metadata.
+            </summary>
+            <remarks>
+            This property provides convenience access to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ValidatorMetadata"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.Results">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem"/> instances. <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider"/>
+            instances should add the appropriate <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/> properties when
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider.CreateValidators(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext)"/>
+            is called.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider">
+            <summary>
+            Provides a collection of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidator"/>s.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidatorProvider.CreateValidators(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext)">
+            <summary>
+            Creates set of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IClientModelValidator"/>s by updating
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorItem.Validator"/> in <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientValidatorProviderContext.Results"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext"/> associated with this call.</param>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator">
+            <summary>
+            Validates a model value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator.Validate(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext)">
+            <summary>
+            Validates the model value.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext"/>.</param>
+            <returns>
+            A list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationResult"/> indicating the results of validating the model value.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider">
+            <summary>
+            Provides validators for a model value.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider.CreateValidators(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext)">
+            <summary>
+            Creates the validators for <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.ModelMetadata"/>.
+            </summary>
+            <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext"/>.</param>
+            <remarks>
+            Implementations should add the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator"/> instances to the appropriate
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/> instance which should be added to
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.Results"/>.
+            </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter">
+            <summary>
+            Contract for attributes that determine whether associated properties should be validated. When the attribute is
+            applied to a property, the validation system calls <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter.ShouldValidateEntry(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry)"/> to determine whether to
+            validate that property. When applied to a type, the validation system calls <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter.ShouldValidateEntry(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry)"/>
+            for each property that type defines to determine whether to validate it.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IPropertyValidationFilter.ShouldValidateEntry(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry)">
+            <summary>
+            Gets an indication whether the <paramref name="entry"/> should be validated.
+            </summary>
+            <param name="entry"><see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/> to check.</param>
+            <param name="parentEntry"><see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/> containing <paramref name="entry"/>.</param>
+            <returns><c>true</c> if <paramref name="entry"/> should be validated; <c>false</c> otherwise.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IValidationStrategy">
+            <summary>
+            Defines a strategy for enumerating the child entries of a model object which should be validated.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IValidationStrategy.GetChildren(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.Object)">
+            <summary>
+            Gets an <see cref="T:System.Collections.Generic.IEnumerator`1"/> containing a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/> for
+            each child entry of the model object to be validated.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with <paramref name="model"/>.</param>
+            <param name="key">The model prefix associated with <paramref name="model"/>.</param>
+            <param name="model">The model object.</param>
+            <returns>An <see cref="T:System.Collections.Generic.IEnumerator`1"/>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext">
+            <summary>
+            A context object for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider,System.Object,System.Object)">
+            <summary>
+            Create a new instance of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext"/>.
+            </summary>
+            <param name="actionContext">The <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/> for validation.</param>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> for validation.</param>
+            <param name="metadataProvider">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/> to be used in validation.</param>
+            <param name="container">The model container.</param>
+            <param name="model">The model to be validated.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext.Model">
+            <summary>
+            Gets the model object.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext.Container">
+            <summary>
+            Gets the model container object.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase">
+            <summary>
+            A common base class for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContext"/> and <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ClientModelValidationContext"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.#ctor(Microsoft.AspNetCore.Mvc.ActionContext,Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider)">
+            <summary>
+            Instantiates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase"/>.
+            </summary>
+            <param name="actionContext">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.ActionContext"/> for this context.</param>
+            <param name="modelMetadata">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.ModelMetadata"/> for this model.</param>
+            <param name="metadataProvider">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/> to be used by this context.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.ActionContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ActionContext"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.ModelMetadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidationContextBase.MetadataProvider">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IModelMetadataProvider"/>.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext">
+            <summary>
+            A context for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.Collections.Generic.IList{Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext"/>.
+            </summary>
+            <param name="modelMetadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.</param>
+            <param name="items">The list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/>s.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.ModelMetadata">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.ValidatorMetadata">
+            <summary>
+            Gets the validator metadata.
+            </summary>
+            <remarks>
+            This property provides convenience access to <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata.ValidatorMetadata"/>.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.Results">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/> instances. <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider"/> instances
+            should add the appropriate <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator"/> properties when
+            <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidatorProvider.CreateValidators(Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext)"/>
+            is called.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry">
+            <summary>
+            Contains data needed for validating a child entry of a model object. See <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IValidationStrategy"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.Object)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with <paramref name="model"/>.</param>
+            <param name="key">The model prefix associated with <paramref name="model"/>.</param>
+            <param name="model">The model object.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.#ctor(Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata,System.String,System.Func{System.Object})">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry"/>.
+            </summary>
+            <param name="metadata">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.</param>
+            <param name="key">The model prefix associated with the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.</param>
+            <param name="modelAccessor">A delegate that will return the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Key">
+            <summary>
+            The model prefix associated with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Metadata">
+            <summary>
+            The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationEntry.Model">
+            <summary>
+            The model object.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary">
+            <summary>
+            Used for tracking validation state to customize validation behavior for a model object.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.#ctor">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Item(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Count">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.IsReadOnly">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Keys">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Values">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.System#Collections#Generic#IReadOnlyDictionary{System#Object,Microsoft#AspNetCore#Mvc#ModelBinding#Validation#ValidationStateEntry}#Keys">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.System#Collections#Generic#IReadOnlyDictionary{System#Object,Microsoft#AspNetCore#Mvc#ModelBinding#Validation#ValidationStateEntry}#Values">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Add(System.Collections.Generic.KeyValuePair{System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Add(System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Clear">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Contains(System.Collections.Generic.KeyValuePair{System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.ContainsKey(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.CopyTo(System.Collections.Generic.KeyValuePair{System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry}[],System.Int32)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Remove(System.Collections.Generic.KeyValuePair{System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.Remove(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.TryGetValue(System.Object,Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry@)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary.System#Collections#IEnumerable#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry">
+            <summary>
+            An entry in a <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateDictionary"/>. Records state information to override the default
+            behavior of validation for an object.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry.Key">
+            <summary>
+            Gets or sets the model prefix associated with the entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry.Metadata">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ModelMetadata"/> associated with the entry.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry.SuppressValidation">
+            <summary>
+            Gets or sets a value indicating whether the associated model object should be validated.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationStateEntry.Strategy">
+            <summary>
+            Gets or sets an <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IValidationStrategy"/> for enumerating child entries of the associated
+            model object.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem">
+            <summary>
+            Used to associate validators with <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.ValidatorMetadata"/> instances
+            as part of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext"/>. An <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator"/> should
+            inspect <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ModelValidatorProviderContext.Results"/> and set <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator"/> and
+            <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.IsReusable"/> as appropriate.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.#ctor">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.#ctor(System.Object)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem"/>.
+            </summary>
+            <param name="validatorMetadata">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.ValidatorMetadata"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.ValidatorMetadata">
+            <summary>
+            Gets the metadata associated with the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.IModelValidator"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.IsReusable">
+            <summary>
+            Gets or sets a value indicating whether or not <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidatorItem.Validator"/> can be reused across requests.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext">
+            <summary>
+            A context for <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.#ctor(Microsoft.AspNetCore.Mvc.ActionContext)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext"/>.
+            </summary>
+            <param name="context">The <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ActionContext"/>.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ActionContext">
+            <summary>
+            Gets the <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ActionContext"/> associated with this context.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderFactoryContext.ValueProviders">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> instances.
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProviderFactory"/> instances should add the appropriate
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider"/> instances to this list.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult">
+            <summary>
+            Result of an <see cref="M:Microsoft.AspNetCore.Mvc.ModelBinding.IValueProvider.GetValue(System.String)"/> operation.
+            </summary>
+            <remarks>
+            <para>
+            <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> can represent a single submitted value or multiple submitted values.
+            </para>
+            <para>
+            Use <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.FirstValue"/> to consume only a single value, regardless of whether a single value or
+            multiple values were submitted.
+            </para>
+            <para>
+            Treat <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> as an <see cref="T:System.Collections.Generic.IEnumerable`1"/> to consume all values,
+            regardless of whether a single value or multiple values were submitted.
+            </para>
+            </remarks>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.None">
+            <summary>
+            A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> that represents a lack of data.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.#ctor(Microsoft.Extensions.Primitives.StringValues)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> using <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>.
+            </summary>
+            <param name="values">The submitted values.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.#ctor(Microsoft.Extensions.Primitives.StringValues,System.Globalization.CultureInfo)">
+            <summary>
+            Creates a new <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.
+            </summary>
+            <param name="values">The submitted values.</param>
+            <param name="culture">The <see cref="T:System.Globalization.CultureInfo"/> associated with this value.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Culture">
+            <summary>
+            Gets or sets the <see cref="T:System.Globalization.CultureInfo"/> associated with the values.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Values">
+            <summary>
+            Gets or sets the values.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.FirstValue">
+            <summary>
+            Gets the first value based on the order values were provided in the request. Use <see cref="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.FirstValue"/>
+            to get a single value for processing regardless of whether a single or multiple values were provided
+            in the request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Length">
+            <summary>
+            Gets the number of submitted values.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.Equals(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.GetHashCode">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.ToString">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.GetEnumerator">
+            <summary>
+            Gets an <see cref="T:System.Collections.Generic.IEnumerator`1"/> for this <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.
+            </summary>
+            <returns>An <see cref="T:System.Collections.Generic.IEnumerator`1"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.System#Collections#IEnumerable#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.op_Explicit(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)~System.String">
+            <summary>
+            Converts the provided <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> into a comma-separated string containing all
+            submitted values.
+            </summary>
+            <param name="result">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.op_Explicit(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)~System.String[]">
+            <summary>
+            Converts the provided <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> into a an array of <see cref="T:System.String"/> containing
+            all submitted values.
+            </summary>
+            <param name="result">The <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.op_Equality(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult,Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)">
+            <summary>
+            Compares two <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> objects for equality.
+            </summary>
+            <param name="x">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+            <param name="y">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+            <returns><c>true</c> if the values are equal, otherwise <c>false</c>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult.op_Inequality(Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult,Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult)">
+            <summary>
+            Compares two <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/> objects for inequality.
+            </summary>
+            <param name="x">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+            <param name="y">A <see cref="T:Microsoft.AspNetCore.Mvc.ModelBinding.ValueProviderResult"/>.</param>
+            <returns><c>false</c> if the values are equal, otherwise <c>true</c>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo">
+            <summary>
+            Represents the routing information for an action that is attribute routed.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.Template">
+            <summary>
+            The route template. May be null if the action has no attribute routes.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.Order">
+            <summary>
+            Gets the order of the route associated with a given action. This property determines
+            the order in which routes get executed. Routes with a lower order value are tried first. In case a route
+            doesn't specify a value, it gets a default order of 0.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.Name">
+            <summary>
+            Gets the name of the route associated with a given action. This property can be used
+            to generate a link by referring to the route by name instead of attempting to match a
+            route by provided route data.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.SuppressLinkGeneration">
+            <summary>
+            Gets or sets a value that determines if the route entry associated with this model participates in link generation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.AttributeRouteInfo.SuppressPathMatching">
+            <summary>
+            Gets or sets a value that determines if the route entry associated with this model participates in path matching (inbound routing).
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext">
+            <summary>
+            Context object to be used for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> generates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Action">
+            <summary>
+            The name of the action method that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Controller">
+            <summary>
+            The name of the controller that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Values">
+            <summary>
+            The object that contains the route values that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/>
+            uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Protocol">
+            <summary>
+            The protocol for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> generates,
+            such as "http" or "https"
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Host">
+            <summary>
+            The host name for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> generates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlActionContext.Fragment">
+            <summary>
+            The fragment for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.Action(Microsoft.AspNetCore.Mvc.Routing.UrlActionContext)"/> generates.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext">
+            <summary>
+            Context object to be used for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> generates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.RouteName">
+            <summary>
+            The name of the route that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Values">
+            <summary>
+            The object that contains the route values that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/>
+            uses to generate URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Protocol">
+            <summary>
+            The protocol for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> generates,
+            such as "http" or "https"
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Host">
+            <summary>
+            The host name for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> generates.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext.Fragment">
+            <summary>
+            The fragment for the URLs that <see cref="M:Microsoft.AspNetCore.Mvc.IUrlHelper.RouteUrl(Microsoft.AspNetCore.Mvc.Routing.UrlRouteContext)"/> generates.
+            </summary>
+        </member>
+    </members>
+</doc>
diff --git a/packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/.signature.p7s b/packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/.signature.p7s
new file mode 100644
index 0000000..372a3ce
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/.signature.p7s
Binary files differ
diff --git a/packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/Microsoft.AspNetCore.Routing.Abstractions.2.2.0.nupkg b/packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/Microsoft.AspNetCore.Routing.Abstractions.2.2.0.nupkg
new file mode 100644
index 0000000..a723340
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/Microsoft.AspNetCore.Routing.Abstractions.2.2.0.nupkg
Binary files differ
diff --git a/packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.xml b/packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.xml
new file mode 100644
index 0000000..7a1211a
--- /dev/null
+++ b/packages/Microsoft.AspNetCore.Routing.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.xml
@@ -0,0 +1,847 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.AspNetCore.Routing.Abstractions</name>
+    </assembly>
+    <members>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.#ctor(System.Reflection.PropertyInfo)">
+            <summary>
+            Initializes a fast <see cref="T:Microsoft.Extensions.Internal.PropertyHelper"/>.
+            This constructor does not cache the helper. For caching, use <see cref="M:Microsoft.Extensions.Internal.PropertyHelper.GetProperties(System.Type)"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Internal.PropertyHelper.Property">
+            <summary>
+            Gets the backing <see cref="T:System.Reflection.PropertyInfo"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Internal.PropertyHelper.Name">
+            <summary>
+            Gets (or sets in derived types) the property name.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Internal.PropertyHelper.ValueGetter">
+            <summary>
+            Gets the property value getter.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Internal.PropertyHelper.ValueSetter">
+            <summary>
+            Gets the property value setter.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetValue(System.Object)">
+            <summary>
+            Returns the property value for the specified <paramref name="instance"/>.
+            </summary>
+            <param name="instance">The object whose property value will be returned.</param>
+            <returns>The property value.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.SetValue(System.Object,System.Object)">
+            <summary>
+            Sets the property value for the specified <paramref name="instance" />.
+            </summary>
+            <param name="instance">The object whose property value will be set.</param>
+            <param name="value">The property value.</param>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetProperties(System.Reflection.TypeInfo)">
+            <summary>
+            Creates and caches fast property helpers that expose getters for every public get property on the
+            underlying type.
+            </summary>
+            <param name="typeInfo">The type info to extract property accessors for.</param>
+            <returns>A cached array of all public properties of the specified type.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetProperties(System.Type)">
+            <summary>
+            Creates and caches fast property helpers that expose getters for every public get property on the
+            specified type.
+            </summary>
+            <param name="type">The type to extract property accessors for.</param>
+            <returns>A cached array of all public properties of the specified type.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetVisibleProperties(System.Reflection.TypeInfo)">
+            <summary>
+            <para>
+            Creates and caches fast property helpers that expose getters for every non-hidden get property
+            on the specified type.
+            </para>
+            <para>
+            <see cref="M:GetVisibleProperties"/> excludes properties defined on base types that have been
+            hidden by definitions using the <c>new</c> keyword.
+            </para>
+            </summary>
+            <param name="typeInfo">The type info to extract property accessors for.</param>
+            <returns>
+            A cached array of all public properties of the specified type.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.GetVisibleProperties(System.Type)">
+            <summary>
+            <para>
+            Creates and caches fast property helpers that expose getters for every non-hidden get property
+            on the specified type.
+            </para>
+            <para>
+            <see cref="M:GetVisibleProperties"/> excludes properties defined on base types that have been
+            hidden by definitions using the <c>new</c> keyword.
+            </para>
+            </summary>
+            <param name="type">The type to extract property accessors for.</param>
+            <returns>
+            A cached array of all public properties of the specified type.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.MakeFastPropertyGetter(System.Reflection.PropertyInfo)">
+            <summary>
+            Creates a single fast property getter. The result is not cached.
+            </summary>
+            <param name="propertyInfo">propertyInfo to extract the getter for.</param>
+            <returns>a fast getter.</returns>
+            <remarks>
+            This method is more memory efficient than a dynamically compiled lambda, and about the
+            same speed.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.MakeNullSafeFastPropertyGetter(System.Reflection.PropertyInfo)">
+            <summary>
+            Creates a single fast property getter which is safe for a null input object. The result is not cached.
+            </summary>
+            <param name="propertyInfo">propertyInfo to extract the getter for.</param>
+            <returns>a fast getter.</returns>
+            <remarks>
+            This method is more memory efficient than a dynamically compiled lambda, and about the
+            same speed.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.MakeFastPropertySetter(System.Reflection.PropertyInfo)">
+            <summary>
+            Creates a single fast property setter for reference types. The result is not cached.
+            </summary>
+            <param name="propertyInfo">propertyInfo to extract the setter for.</param>
+            <returns>a fast getter.</returns>
+            <remarks>
+            This method is more memory efficient than a dynamically compiled lambda, and about the
+            same speed. This only works for reference types.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Extensions.Internal.PropertyHelper.ObjectToDictionary(System.Object)">
+             <summary>
+             Given an object, adds each instance property with a public get method as a key and its
+             associated value to a dictionary.
+            
+             If the object is already an <see cref="T:System.Collections.Generic.IDictionary`2"/> instance, then a copy
+             is returned.
+             </summary>
+             <remarks>
+             The implementation of PropertyHelper will cache the property accessors per-type. This is
+             faster when the same type is used multiple times with ObjectToDictionary.
+             </remarks>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Endpoint">
+            <summary>
+            Respresents a logical endpoint in an application.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.Endpoint.#ctor(Microsoft.AspNetCore.Http.RequestDelegate,Microsoft.AspNetCore.Http.EndpointMetadataCollection,System.String)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Http.Endpoint"/>.
+            </summary>
+            <param name="requestDelegate">The delegate used to process requests for the endpoint.</param>
+            <param name="metadata">
+            The endpoint <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>. May be null.
+            </param>
+            <param name="displayName">
+            The informational display name of the endpoint. May be null.
+            </param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Endpoint.DisplayName">
+            <summary>
+            Gets the informational display name of this endpoint.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Endpoint.Metadata">
+            <summary>
+            Gets the collection of metadata associated with this endpoint.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Endpoint.RequestDelegate">
+            <summary>
+            Gets the delegate used to process requests for the endpoint.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection">
+            <summary>
+            A collection of arbitrary metadata associated with an endpoint.
+            </summary>
+            <remarks>
+            <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/> instances contain a list of metadata items
+            of arbitrary types. The metadata items are stored as an ordered collection with
+            items arranged in ascending order of precedence.
+            </remarks>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Empty">
+            <summary>
+            An empty <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.#ctor(System.Collections.Generic.IEnumerable{System.Object})">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>.
+            </summary>
+            <param name="items">The metadata items.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.#ctor(System.Object[])">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>.
+            </summary>
+            <param name="items">The metadata items.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Item(System.Int32)">
+            <summary>
+            Gets the item at <paramref name="index"/>.
+            </summary>
+            <param name="index">The index of the item to retrieve.</param>
+            <returns>The item at <paramref name="index"/>.</returns>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Count">
+            <summary>
+            Gets the count of metadata items.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.GetMetadata``1">
+            <summary>
+            Gets the most significant metadata item of type <typeparamref name="T"/>.
+            </summary>
+            <typeparam name="T">The type of metadata to retrieve.</typeparam>
+            <returns>
+            The most significant metadata of type <typeparamref name="T"/> or <c>null</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.GetOrderedMetadata``1">
+            <summary>
+            Gets the metadata items of type <typeparamref name="T"/> in ascending
+            order of precedence.
+            </summary>
+            <typeparam name="T">The type of metadata.</typeparam>
+            <returns>A sequence of metadata items of <typeparamref name="T"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.GetEnumerator">
+            <summary>
+            Gets an <see cref="T:System.Collections.IEnumerator"/> of all metadata items.
+            </summary>
+            <returns>An <see cref="T:System.Collections.IEnumerator"/> of all metadata items.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.System#Collections#Generic#IEnumerable{System#Object}#GetEnumerator">
+            <summary>
+            Gets an <see cref="T:System.Collections.Generic.IEnumerator`1"/> of all metadata items.
+            </summary>
+            <returns>An <see cref="T:System.Collections.Generic.IEnumerator`1"/> of all metadata items.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.System#Collections#IEnumerable#GetEnumerator">
+            <summary>
+            Gets an <see cref="T:System.Collections.IEnumerator"/> of all metadata items.
+            </summary>
+            <returns>An <see cref="T:System.Collections.IEnumerator"/> of all metadata items.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator">
+            <summary>
+            Enumerates the elements of an <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator.Current">
+            <summary>
+            Gets the element at the current position of the enumerator
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator.Dispose">
+            <summary>
+            Releases all resources used by the <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator.MoveNext">
+            <summary>
+            Advances the enumerator to the next element of the <see cref="T:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator"/>.
+            </summary>
+            <returns>
+            <c>true</c> if the enumerator was successfully advanced to the next element;
+            <c>false</c> if the enumerator has passed the end of the collection.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Http.EndpointMetadataCollection.Enumerator.Reset">
+            <summary>
+            Sets the enumerator to its initial position, which is before the first element in the collection.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Http.Features.IEndpointFeature">
+            <summary>
+            A feature interface for endpoint routing. Use <see cref="P:Microsoft.AspNetCore.Http.HttpContext.Features"/>
+            to access an instance associated with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IEndpointFeature.Endpoint">
+            <summary>
+            Gets or sets the selected <see cref="T:Microsoft.AspNetCore.Http.Endpoint"/> for the current
+            request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Http.Features.IRouteValuesFeature.RouteValues">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> associated with the currrent
+            request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IOutboundParameterTransformer">
+            <summary>
+            Defines the contract that a class must implement to transform route values while building
+            a URI.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.IOutboundParameterTransformer.TransformOutbound(System.Object)">
+            <summary>
+            Transforms the specified route value to a string for inclusion in a URI.
+            </summary>
+            <param name="value">The route value to transform.</param>
+            <returns>The transformed value.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IParameterPolicy">
+            <summary>
+            A marker interface for types that are associated with route parameters.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IRouteConstraint">
+            <summary>
+            Defines the contract that a class must implement in order to check whether a URL parameter
+            value is valid for a constraint.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.IRouteConstraint.Match(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.IRouter,System.String,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteDirection)">
+            <summary>
+            Determines whether the URL parameter contains a valid value for this constraint.
+            </summary>
+            <param name="httpContext">An object that encapsulates information about the HTTP request.</param>
+            <param name="route">The router that this constraint belongs to.</param>
+            <param name="routeKey">The name of the parameter that is being checked.</param>
+            <param name="values">A dictionary that contains the parameters for the URL.</param>
+            <param name="routeDirection">
+            An object that indicates whether the constraint check is being performed
+            when an incoming request is being handled or when a URL is being generated.
+            </param>
+            <returns><c>true</c> if the URL parameter contains a valid value; otherwise, <c>false</c>.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IRouteHandler">
+            <summary>
+            Defines a contract for a handler of a route. 
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.IRouteHandler.GetRequestHandler(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteData)">
+            <summary>
+            Gets a <see cref="T:Microsoft.AspNetCore.Http.RequestDelegate"/> to handle the request, based on the provided
+            <paramref name="routeData"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="routeData">The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> associated with the current routing match.</param>
+            <returns>
+            A <see cref="T:Microsoft.AspNetCore.Http.RequestDelegate"/>, or <c>null</c> if the handler cannot handle this request.
+            </returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.IRoutingFeature">
+            <summary>
+            A feature interface for routing functionality.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.IRoutingFeature.RouteData">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> associated with the current request.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.LinkGenerator">
+            <summary>
+            Defines a contract to generate absolute and related URIs based on endpoint routing.
+            </summary>
+            <remarks>
+            <para>
+            Generating URIs in endpoint routing occurs in two phases. First, an address is bound to a list of
+            endpoints that match the address. Secondly, each endpoint's <c>RoutePattern</c> is evaluated, until 
+            a route pattern that matches the supplied values is found. The resulting output is combined with
+            the other URI parts supplied to the link generator and returned.
+            </para>
+            <para>
+            The methods provided by the <see cref="T:Microsoft.AspNetCore.Routing.LinkGenerator"/> type are general infrastructure, and support
+            the standard link generator functionality for any type of address. The most convenient way to use 
+            <see cref="T:Microsoft.AspNetCore.Routing.LinkGenerator"/> is through extension methods that perform operations for a specific
+            address type.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.LinkGenerator.GetPathByAddress``1(Microsoft.AspNetCore.Http.HttpContext,``0,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.Nullable{Microsoft.AspNetCore.Http.PathString},Microsoft.AspNetCore.Http.FragmentString,Microsoft.AspNetCore.Routing.LinkOptions)">
+            <summary>
+            Generates a URI with an absolute path based on the provided values and <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.
+            </summary>
+            <typeparam name="TAddress">The address type.</typeparam>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="address">The address value. Used to resolve endpoints.</param>
+            <param name="values">The route values. Used to expand parameters in the route template. Optional.</param>
+            <param name="ambientValues">The values associated with the current request. Optional.</param>
+            <param name="pathBase">
+            An optional URI path base. Prepended to the path in the resulting URI. If not provided, the value of <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.PathBase"/> will be used.
+            </param>
+            <param name="fragment">An optional URI fragment. Appended to the resulting URI.</param>
+            <param name="options">
+            An optional <see cref="T:Microsoft.AspNetCore.Routing.LinkOptions"/>. Settings on provided object override the settings with matching
+            names from <c>RouteOptions</c>.
+            </param>
+            <returns>A URI with an absolute path, or <c>null</c>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.LinkGenerator.GetPathByAddress``1(``0,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.FragmentString,Microsoft.AspNetCore.Routing.LinkOptions)">
+            <summary>
+            Generates a URI with an absolute path based on the provided values.
+            </summary>
+            <typeparam name="TAddress">The address type.</typeparam>
+            <param name="address">The address value. Used to resolve endpoints.</param>
+            <param name="values">The route values. Used to expand parameters in the route template. Optional.</param>
+            <param name="pathBase">An optional URI path base. Prepended to the path in the resulting URI.</param>
+            <param name="fragment">An optional URI fragment. Appended to the resulting URI.</param>
+            <param name="options">
+            An optional <see cref="T:Microsoft.AspNetCore.Routing.LinkOptions"/>. Settings on provided object override the settings with matching
+            names from <c>RouteOptions</c>.
+            </param>
+            <returns>A URI with an absolute path, or <c>null</c>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.LinkGenerator.GetUriByAddress``1(Microsoft.AspNetCore.Http.HttpContext,``0,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.String,System.Nullable{Microsoft.AspNetCore.Http.HostString},System.Nullable{Microsoft.AspNetCore.Http.PathString},Microsoft.AspNetCore.Http.FragmentString,Microsoft.AspNetCore.Routing.LinkOptions)">
+            <summary>
+            Generates an absolute URI based on the provided values and <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.
+            </summary>
+            <typeparam name="TAddress">The address type.</typeparam>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="address">The address value. Used to resolve endpoints.</param>
+            <param name="values">The route values. Used to expand parameters in the route template. Optional.</param>
+            <param name="ambientValues">The values associated with the current request. Optional.</param>
+            <param name="scheme">
+            The URI scheme, applied to the resulting URI. Optional. If not provided, the value of <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.Scheme"/> will be used.
+            </param>
+            <param name="host">
+            The URI host/authority, applied to the resulting URI. Optional. If not provided, the value <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.Host"/> will be used.
+            See the remarks section for details about the security implications of the <paramref name="host"/>.
+            </param>
+            <param name="pathBase">
+            An optional URI path base. Prepended to the path in the resulting URI. If not provided, the value of <see cref="P:Microsoft.AspNetCore.Http.HttpRequest.PathBase"/> will be used.
+            </param>
+            <param name="fragment">An optional URI fragment. Appended to the resulting URI.</param>
+            <param name="options">
+            An optional <see cref="T:Microsoft.AspNetCore.Routing.LinkOptions"/>. Settings on provided object override the settings with matching
+            names from <c>RouteOptions</c>.
+            </param>
+            <returns>A URI with an absolute path, or <c>null</c>.</returns>
+            <remarks>
+            <para>
+            The value of <paramref name="host" /> should be a trusted value. Relying on the value of the current request
+            can allow untrusted input to influence the resulting URI unless the <c>Host</c> header has been validated.
+            See the deployment documentation for instructions on how to properly validate the <c>Host</c> header in
+            your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.LinkGenerator.GetUriByAddress``1(``0,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.String,Microsoft.AspNetCore.Http.HostString,Microsoft.AspNetCore.Http.PathString,Microsoft.AspNetCore.Http.FragmentString,Microsoft.AspNetCore.Routing.LinkOptions)">
+            <summary>
+            Generates an absolute URI based on the provided values.
+            </summary>
+            <typeparam name="TAddress">The address type.</typeparam>
+            <param name="address">The address value. Used to resolve endpoints.</param>
+            <param name="values">The route values. Used to expand parameters in the route template. Optional.</param>
+            <param name="scheme">The URI scheme, applied to the resulting URI.</param>
+            <param name="host">
+            The URI host/authority, applied to the resulting URI.
+            See the remarks section for details about the security implications of the <paramref name="host"/>.
+            </param>
+            <param name="pathBase">An optional URI path base. Prepended to the path in the resulting URI.</param>
+            <param name="fragment">An optional URI fragment. Appended to the resulting URI.</param>
+            <param name="options">
+            An optional <see cref="T:Microsoft.AspNetCore.Routing.LinkOptions"/>. Settings on provided object override the settings with matching
+            names from <c>RouteOptions</c>.
+            </param>
+            <returns>An absolute URI, or <c>null</c>.</returns>
+            <remarks>
+            <para>
+            The value of <paramref name="host" /> should be a trusted value. Relying on the value of the current request
+            can allow untrusted input to influence the resulting URI unless the <c>Host</c> header has been validated.
+            See the deployment documentation for instructions on how to properly validate the <c>Host</c> header in
+            your deployment environment.
+            </para>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.LinkOptions.LowercaseUrls">
+            <summary>
+            Gets or sets a value indicating whether all generated paths URLs are lower-case.
+            Use <see cref="P:Microsoft.AspNetCore.Routing.LinkOptions.LowercaseQueryStrings" /> to configure the behavior for query strings.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.LinkOptions.LowercaseQueryStrings">
+            <summary>
+            Gets or sets a value indicating whether a generated query strings are lower-case.
+            This property will be unless <see cref="P:Microsoft.AspNetCore.Routing.LinkOptions.LowercaseUrls" /> is also <c>true</c>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.LinkOptions.AppendTrailingSlash">
+            <summary>
+            Gets or sets a value indicating whether a trailing slash should be appended to the generated URLs.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.Abstractions.Resources.RouteValueDictionary_DuplicateKey">
+            <summary>
+            An element with the key '{0}' already exists in the {1}.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.Abstractions.Resources.FormatRouteValueDictionary_DuplicateKey(System.Object,System.Object)">
+            <summary>
+            An element with the key '{0}' already exists in the {1}.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.Abstractions.Resources.RouteValueDictionary_DuplicatePropertyName">
+            <summary>
+            The type '{0}' defines properties '{1}' and '{2}' which differ only by casing. This is not supported by {3} which uses case-insensitive comparisons.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.Abstractions.Resources.FormatRouteValueDictionary_DuplicatePropertyName(System.Object,System.Object,System.Object,System.Object)">
+            <summary>
+            The type '{0}' defines properties '{1}' and '{2}' which differ only by casing. This is not supported by {3} which uses case-insensitive comparisons.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteContext">
+            <summary>
+            A context object for <see cref="M:Microsoft.AspNetCore.Routing.IRouter.RouteAsync(Microsoft.AspNetCore.Routing.RouteContext)"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteContext.#ctor(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteContext"/> for the provided <paramref name="httpContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteContext.Handler">
+            <summary>
+            Gets or sets the handler for the request. An <see cref="T:Microsoft.AspNetCore.Routing.IRouter"/> should set <see cref="P:Microsoft.AspNetCore.Routing.RouteContext.Handler"/>
+            when it matches.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteContext.HttpContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteContext.RouteData">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> associated with the current context.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteData">
+            <summary>
+            Information about the current routing path.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.#ctor">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.#ctor(Microsoft.AspNetCore.Routing.RouteData)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance with values copied from <paramref name="other"/>.
+            </summary>
+            <param name="other">The other <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance to copy.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.#ctor(Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance with the specified values.
+            </summary>
+            <param name="values">The <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> values.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteData.DataTokens">
+            <summary>
+            Gets the data tokens produced by routes on the current routing path.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteData.Routers">
+            <summary>
+            Gets the list of <see cref="T:Microsoft.AspNetCore.Routing.IRouter"/> instances on the current routing path.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteData.Values">
+            <summary>
+            Gets the values produced by routes on the current routing path.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.PushState(Microsoft.AspNetCore.Routing.IRouter,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+            <para>
+            Creates a snapshot of the current state of the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> before appending
+            <paramref name="router"/> to <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Routers"/>, merging <paramref name="values"/> into
+            <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Values"/>, and merging <paramref name="dataTokens"/> into <see cref="P:Microsoft.AspNetCore.Routing.RouteData.DataTokens"/>.
+            </para>
+            <para>
+            Call <see cref="M:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot.Restore"/> to restore the state of this <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/>
+            to the state at the time of calling
+            <see cref="M:Microsoft.AspNetCore.Routing.RouteData.PushState(Microsoft.AspNetCore.Routing.IRouter,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary)"/>.
+            </para>
+            </summary>
+            <param name="router">
+            An <see cref="T:Microsoft.AspNetCore.Routing.IRouter"/> to append to <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Routers"/>. If <c>null</c>, then <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Routers"/>
+            will not be changed.
+            </param>
+            <param name="values">
+            A <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> to merge into <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Values"/>. If <c>null</c>, then
+            <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Values"/> will not be changed.
+            </param>
+            <param name="dataTokens">
+            A <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> to merge into <see cref="P:Microsoft.AspNetCore.Routing.RouteData.DataTokens"/>. If <c>null</c>, then
+            <see cref="P:Microsoft.AspNetCore.Routing.RouteData.DataTokens"/> will not be changed.
+            </param>
+            <returns>A <see cref="T:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot"/> that captures the current state.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot">
+            <summary>
+            A snapshot of the state of a <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> instance.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot.#ctor(Microsoft.AspNetCore.Routing.RouteData,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.Collections.Generic.IList{Microsoft.AspNetCore.Routing.IRouter},Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot"/> for <paramref name="routeData"/>.
+            </summary>
+            <param name="routeData">The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/>.</param>
+            <param name="dataTokens">The data tokens.</param>
+            <param name="routers">The routers.</param>
+            <param name="values">The route values.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteData.RouteDataSnapshot.Restore">
+            <summary>
+            Restores the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> to the captured state.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteDirection">
+            <summary>
+            Indicates whether ASP.NET routing is processing a URL from an HTTP request or generating a URL.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Routing.RouteDirection.IncomingRequest">
+            <summary>
+            A URL from a client is being processed.
+            </summary>
+        </member>
+        <member name="F:Microsoft.AspNetCore.Routing.RouteDirection.UrlGeneration">
+            <summary>
+            A URL is being created based on the route definition.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RouteValueDictionary">
+            <summary>
+            An <see cref="T:System.Collections.Generic.IDictionary`2"/> type for route values.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.FromArray(System.Collections.Generic.KeyValuePair{System.String,System.Object}[])">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> from the provided array.
+            The new instance will take ownership of the array, and may mutate it.
+            </summary>
+            <param name="items">The items array.</param>
+            <returns>A new <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/>.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.#ctor">
+            <summary>
+            Creates an empty <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.#ctor(System.Object)">
+            <summary>
+            Creates a <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/> initialized with the specified <paramref name="values"/>.
+            </summary>
+            <param name="values">An object to initialize the dictionary. The value can be of type
+            <see cref="T:System.Collections.Generic.IDictionary`2"/> or <see cref="T:System.Collections.Generic.IReadOnlyDictionary`2"/>
+            or an object with public properties as key-value pairs.
+            </param>
+            <remarks>
+            If the value is a dictionary or other <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Collections.Generic.KeyValuePair`2"/>,
+            then its entries are copied. Otherwise the object is interpreted as a set of key-value pairs where the
+            property names are keys, and property values are the values, and copied into the dictionary.
+            Only public instance non-index properties are considered.
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Item(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Comparer">
+            <summary>
+            Gets the comparer for this dictionary.
+            </summary>
+            <remarks>
+            This will always be a reference to <see cref="P:System.StringComparer.OrdinalIgnoreCase"/>
+            </remarks>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Count">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#IsReadOnly">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Keys">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.RouteValueDictionary.Values">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#Add(System.Collections.Generic.KeyValuePair{System.String,System.Object})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.Add(System.String,System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.Clear">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#Contains(System.Collections.Generic.KeyValuePair{System.String,System.Object})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.ContainsKey(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#CopyTo(System.Collections.Generic.KeyValuePair{System.String,System.Object}[],System.Int32)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#IEnumerable#GetEnumerator">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,System#Object}}#Remove(System.Collections.Generic.KeyValuePair{System.String,System.Object})">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.Remove(System.String)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.Remove(System.String,System.Object@)">
+            <summary>
+            Attempts to remove and return the value that has the specified key from the <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/>.
+            </summary>
+            <param name="key">The key of the element to remove and return.</param>
+            <param name="value">When this method returns, contains the object removed from the <see cref="T:Microsoft.AspNetCore.Routing.RouteValueDictionary"/>, or <c>null</c> if key does not exist.</param>
+            <returns>
+            <c>true</c> if the object was removed successfully; otherwise, <c>false</c>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.TryAdd(System.String,System.Object)">
+            <summary>
+            Attempts to the add the provided <paramref name="key"/> and <paramref name="value"/> to the dictionary.
+            </summary>
+            <param name="key">The key.</param>
+            <param name="value">The value.</param>
+            <returns>Returns <c>true</c> if the value was added. Returns <c>false</c> if the key was already present.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RouteValueDictionary.TryGetValue(System.String,System.Object@)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.RoutingHttpContextExtensions">
+            <summary>
+            Extension methods for <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> related to routing.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RoutingHttpContextExtensions.GetRouteData(Microsoft.AspNetCore.Http.HttpContext)">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/> associated with the provided <paramref name="httpContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <returns>The <see cref="T:Microsoft.AspNetCore.Routing.RouteData"/>, or null.</returns>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.RoutingHttpContextExtensions.GetRouteValue(Microsoft.AspNetCore.Http.HttpContext,System.String)">
+            <summary>
+            Gets a route value from <see cref="P:Microsoft.AspNetCore.Routing.RouteData.Values"/> associated with the provided
+            <paramref name="httpContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="key">The key of the route value.</param>
+            <returns>The corresponding route value, or null.</returns>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.VirtualPathContext">
+            <summary>
+            A context for virtual path generation operations.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.VirtualPathContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.VirtualPathContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="ambientValues">The set of route values associated with the current request.</param>
+            <param name="values">The set of new values provided for virtual path generation.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.VirtualPathContext.#ctor(Microsoft.AspNetCore.Http.HttpContext,Microsoft.AspNetCore.Routing.RouteValueDictionary,Microsoft.AspNetCore.Routing.RouteValueDictionary,System.String)">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.AspNetCore.Routing.VirtualPathContext"/>.
+            </summary>
+            <param name="httpContext">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.</param>
+            <param name="ambientValues">The set of route values associated with the current request.</param>
+            <param name="values">The set of new values provided for virtual path generation.</param>
+            <param name="routeName">The name of the route to use for virtual path generation.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathContext.AmbientValues">
+            <summary>
+            Gets the set of route values associated with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathContext.HttpContext">
+            <summary>
+            Gets the <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/> associated with the current request.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathContext.RouteName">
+            <summary>
+            Gets the name of the route to use for virtual path generation.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathContext.Values">
+            <summary>
+            Gets or sets the set of new values provided for virtual path generation.
+            </summary>
+        </member>
+        <member name="T:Microsoft.AspNetCore.Routing.VirtualPathData">
+            <summary>
+            Represents information about the route and virtual path that are the result of
+            generating a URL with the ASP.NET routing middleware.
+            </summary>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.VirtualPathData.#ctor(Microsoft.AspNetCore.Routing.IRouter,System.String)">
+            <summary>
+             Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Routing.VirtualPathData"/> class.
+            </summary>
+            <param name="router">The object that is used to generate the URL.</param>
+            <param name="virtualPath">The generated URL.</param>
+        </member>
+        <member name="M:Microsoft.AspNetCore.Routing.VirtualPathData.#ctor(Microsoft.AspNetCore.Routing.IRouter,System.String,Microsoft.AspNetCore.Routing.RouteValueDictionary)">
+            <summary>
+             Initializes a new instance of the <see cref="T:Microsoft.AspNetCore.Routing.VirtualPathData"/> class.
+            </summary>
+            <param name="router">The object that is used to generate the URL.</param>
+            <param name="virtualPath">The generated URL.</param>
+            <param name="dataTokens">The collection of custom values.</param>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathData.DataTokens">
+            <summary>
+            Gets the collection of custom values for the <see cref="P:Microsoft.AspNetCore.Routing.VirtualPathData.Router"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathData.Router">
+            <summary>
+            Gets or sets the <see cref="T:Microsoft.AspNetCore.Routing.IRouter"/> that was used to generate the URL.
+            </summary>
+        </member>
+        <member name="P:Microsoft.AspNetCore.Routing.VirtualPathData.VirtualPath">
+            <summary>
+            Gets or sets the URL that was generated from the <see cref="P:Microsoft.AspNetCore.Routing.VirtualPathData.Router"/>.
+            </summary>
+        </member>
+    </members>
+</doc>
diff --git a/packages/Microsoft.Extensions.Primitives.2.2.0/.signature.p7s b/packages/Microsoft.Extensions.Primitives.2.2.0/.signature.p7s
new file mode 100644
index 0000000..ff0526c
--- /dev/null
+++ b/packages/Microsoft.Extensions.Primitives.2.2.0/.signature.p7s
Binary files differ
diff --git a/packages/Microsoft.Extensions.Primitives.2.2.0/Microsoft.Extensions.Primitives.2.2.0.nupkg b/packages/Microsoft.Extensions.Primitives.2.2.0/Microsoft.Extensions.Primitives.2.2.0.nupkg
new file mode 100644
index 0000000..d7d8d86
--- /dev/null
+++ b/packages/Microsoft.Extensions.Primitives.2.2.0/Microsoft.Extensions.Primitives.2.2.0.nupkg
Binary files differ
diff --git a/packages/Microsoft.Extensions.Primitives.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Primitives.xml b/packages/Microsoft.Extensions.Primitives.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Primitives.xml
new file mode 100644
index 0000000..c65cc31
--- /dev/null
+++ b/packages/Microsoft.Extensions.Primitives.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Primitives.xml
@@ -0,0 +1,484 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.Extensions.Primitives</name>
+    </assembly>
+    <members>
+        <member name="T:Microsoft.Extensions.Primitives.CancellationChangeToken">
+            <summary>
+            A <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> implementation using <see cref="T:System.Threading.CancellationToken"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.CancellationChangeToken.#ctor(System.Threading.CancellationToken)">
+            <summary>
+            Initializes a new instance of <see cref="T:Microsoft.Extensions.Primitives.CancellationChangeToken"/>.
+            </summary>
+            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/>.</param>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CancellationChangeToken.ActiveChangeCallbacks">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CancellationChangeToken.HasChanged">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.CancellationChangeToken.RegisterChangeCallback(System.Action{System.Object},System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.ChangeToken">
+            <summary>
+            Propagates notifications that a change has occurred.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.ChangeToken.OnChange(System.Func{Microsoft.Extensions.Primitives.IChangeToken},System.Action)">
+            <summary>
+            Registers the <paramref name="changeTokenConsumer"/> action to be called whenever the token produced changes.
+            </summary>
+            <param name="changeTokenProducer">Produces the change token.</param>
+            <param name="changeTokenConsumer">Action called when the token changes.</param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.ChangeToken.OnChange``1(System.Func{Microsoft.Extensions.Primitives.IChangeToken},System.Action{``0},``0)">
+            <summary>
+            Registers the <paramref name="changeTokenConsumer"/> action to be called whenever the token produced changes.
+            </summary>
+            <param name="changeTokenProducer">Produces the change token.</param>
+            <param name="changeTokenConsumer">Action called when the token changes.</param>
+            <param name="state">state for the consumer.</param>
+            <returns></returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.CompositeChangeToken">
+            <summary>
+            An <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> which represents one or more <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> instances.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.CompositeChangeToken.#ctor(System.Collections.Generic.IReadOnlyList{Microsoft.Extensions.Primitives.IChangeToken})">
+            <summary>
+            Creates a new instance of <see cref="T:Microsoft.Extensions.Primitives.CompositeChangeToken"/>.
+            </summary>
+            <param name="changeTokens">The list of <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> to compose.</param>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CompositeChangeToken.ChangeTokens">
+            <summary>
+            Returns the list of <see cref="T:Microsoft.Extensions.Primitives.IChangeToken"/> which compose the current <see cref="T:Microsoft.Extensions.Primitives.CompositeChangeToken"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.CompositeChangeToken.RegisterChangeCallback(System.Action{System.Object},System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CompositeChangeToken.HasChanged">
+            <inheritdoc />
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.CompositeChangeToken.ActiveChangeCallbacks">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.Extensions.Append(System.Text.StringBuilder,Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Add the given <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to the <see cref="T:System.Text.StringBuilder"/>.
+            </summary>
+            <param name="builder">The <see cref="T:System.Text.StringBuilder"/> to add to.</param>
+            <param name="segment">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to add.</param>
+            <returns>The original <see cref="T:System.Text.StringBuilder"/>.</returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.IChangeToken">
+            <summary>
+            Propagates notifications that a change has occurred.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.IChangeToken.HasChanged">
+            <summary>
+            Gets a value that indicates if a change has occurred.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.IChangeToken.ActiveChangeCallbacks">
+            <summary>
+            Indicates if this token will pro-actively raise callbacks. If <c>false</c>, the token consumer must
+            poll <see cref="P:Microsoft.Extensions.Primitives.IChangeToken.HasChanged" /> to detect changes.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.IChangeToken.RegisterChangeCallback(System.Action{System.Object},System.Object)">
+            <summary>
+            Registers for a callback that will be invoked when the entry has changed.
+            <see cref="P:Microsoft.Extensions.Primitives.IChangeToken.HasChanged"/> MUST be set before the callback is invoked.
+            </summary>
+            <param name="callback">The <see cref="T:System.Action`1"/> to invoke.</param>
+            <param name="state">State to be passed into the callback.</param>
+            <returns>An <see cref="T:System.IDisposable"/> that is used to unregister the callback.</returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.Resources">
+            <summary>
+               A strongly-typed resource class, for looking up localized strings, etc.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.Resources.ResourceManager">
+            <summary>
+               Returns the cached ResourceManager instance used by this class.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.Resources.Culture">
+            <summary>
+               Overrides the current thread's CurrentUICulture property for all
+               resource lookups using this strongly typed resource class.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.Resources.Argument_InvalidOffsetLength">
+            <summary>
+               Looks up a localized string similar to Offset and length are out of bounds for the string or length is greater than the number of characters from index to the end of the string..
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.Resources.Capacity_CannotChangeAfterWriteStarted">
+            <summary>
+               Looks up a localized string similar to Cannot change capacity after write started..
+            </summary>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.StringSegment">
+            <summary>
+            An optimized representation of a substring.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Extensions.Primitives.StringSegment.Empty">
+            <summary>
+            A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> for <see cref="F:System.String.Empty"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.#ctor(System.String)">
+            <summary>
+            Initializes an instance of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> struct.
+            </summary>
+            <param name="buffer">
+            The original <see cref="T:System.String"/>. The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> includes the whole <see cref="T:System.String"/>.
+            </param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.#ctor(System.String,System.Int32,System.Int32)">
+            <summary>
+            Initializes an instance of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> struct.
+            </summary>
+            <param name="buffer">The original <see cref="T:System.String"/> used as buffer.</param>
+            <param name="offset">The offset of the segment within the <paramref name="buffer"/>.</param>
+            <param name="length">The length of the segment.</param>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Buffer">
+            <summary>
+            Gets the <see cref="T:System.String"/> buffer for this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Offset">
+            <summary>
+            Gets the offset within the buffer for this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Length">
+            <summary>
+            Gets the length of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Value">
+            <summary>
+            Gets the value of this segment as a <see cref="T:System.String"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.HasValue">
+            <summary>
+            Gets whether or not this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> contains a valid value.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Extensions.Primitives.StringSegment.Item(System.Int32)">
+            <summary>
+            Gets the <see cref="T:System.Char"/> at a specified position in the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="index">The offset into the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></param>
+            <returns>The <see cref="T:System.Char"/> at a specified position.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.AsSpan">
+            <summary>
+            Gets a <see cref="T:System.ReadOnlySpan`1"/> from the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <returns>The <see cref="T:System.ReadOnlySpan`1"/> from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.AsMemory">
+            <summary>
+            Gets a <see cref="T:System.ReadOnlyMemory`1"/> from the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <returns>The <see cref="T:System.ReadOnlyMemory`1"/> from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Compare(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment,System.StringComparison)">
+            <summary>
+            Compares substrings of two specified <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> objects using the specified rules,
+            and returns an integer that indicates their relative position in the sort order.
+            </summary>
+            <param name="a">The first StringSegment to compare.</param>
+            <param name="b">The second StringSegment to compare.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules for the comparison.</param>
+            <returns>
+            A 32-bit signed integer indicating the lexical relationship between the two comparands.
+            The value is negative if <paramref name="a"/> is less than <paramref name="b"/>, 0 if the two comparands are equal,
+            and positive if <paramref name="a"/> is greater than <paramref name="b"/>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(System.Object)">
+            <inheritdoc />
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Indicates whether the current object is equal to another object of the same type.
+            </summary>
+            <param name="other">An object to compare with this object.</param>
+            <returns><code>true</code> if the current object is equal to the other parameter; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(Microsoft.Extensions.Primitives.StringSegment,System.StringComparison)">
+            <summary>
+            Indicates whether the current object is equal to another object of the same type.
+            </summary>
+            <param name="other">An object to compare with this object.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules to use in the comparison.</param>
+            <returns><code>true</code> if the current object is equal to the other parameter; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment,System.StringComparison)">
+            <summary>
+            Determines whether two specified StringSegment objects have the same value. A parameter specifies the culture, case, and
+            sort rules used in the comparison.
+            </summary>
+            <param name="a">The first StringSegment to compare.</param>
+            <param name="b">The second StringSegment to compare.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules for the comparison.</param>
+            <returns><code>true</code> if the objects are equal; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(System.String)">
+            <summary>
+            Checks if the specified <see cref="T:System.String"/> is equal to the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="text">The <see cref="T:System.String"/> to compare with the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <returns><code>true</code> if the specified <see cref="T:System.String"/> is equal to the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Equals(System.String,System.StringComparison)">
+            <summary>
+            Checks if the specified <see cref="T:System.String"/> is equal to the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="text">The <see cref="T:System.String"/> to compare with the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules to use in the comparison.</param>
+            <returns><code>true</code> if the specified <see cref="T:System.String"/> is equal to the current <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.GetHashCode">
+            <inheritdoc />
+            <remarks>
+            This GetHashCode is expensive since it allocates on every call.
+            However this is required to ensure we retain any behavior (such as hash code randomization) that
+            string.GetHashCode has.
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Equality(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Checks if two specified <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> have the same value.
+            </summary>
+            <param name="left">The first <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to compare, or <code>null</code>.</param>
+            <param name="right">The second <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to compare, or <code>null</code>.</param>
+            <returns><code>true</code> if the value of <paramref name="left"/> is the same as the value of <paramref name="right"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Inequality(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Checks if two specified <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> have different values.
+            </summary>
+            <param name="left">The first <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to compare, or <code>null</code>.</param>
+            <param name="right">The second <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to compare, or <code>null</code>.</param>
+            <returns><code>true</code> if the value of <paramref name="left"/> is different from the value of <paramref name="right"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Implicit(System.String)~Microsoft.Extensions.Primitives.StringSegment">
+            <summary>
+            Creates a new <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> from the given <see cref="T:System.String"/>.
+            </summary>
+            <param name="value">The <see cref="T:System.String"/> to convert to a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Implicit(Microsoft.Extensions.Primitives.StringSegment)~System.ReadOnlySpan{System.Char}">
+            <summary>
+            Creates a see <see cref="T:System.ReadOnlySpan`1"/> from the given <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="segment">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to convert to a <see cref="T:System.ReadOnlySpan`1"/>.</param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.op_Implicit(Microsoft.Extensions.Primitives.StringSegment)~System.ReadOnlyMemory{System.Char}">
+            <summary>
+            Creates a see <see cref="T:System.ReadOnlyMemory`1"/> from the given <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="segment">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> to convert to a <see cref="T:System.ReadOnlyMemory`1"/>.</param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.StartsWith(System.String,System.StringComparison)">
+            <summary>
+            Checks if the beginning of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> matches the specified <see cref="T:System.String"/> when compared using the specified <paramref name="comparisonType"/>.
+            </summary>
+            <param name="text">The <see cref="T:System.String"/>to compare.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules to use in the comparison.</param>
+            <returns><code>true</code> if <paramref name="text"/> matches the beginning of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.EndsWith(System.String,System.StringComparison)">
+            <summary>
+            Checks if the end of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> matches the specified <see cref="T:System.String"/> when compared using the specified <paramref name="comparisonType"/>.
+            </summary>
+            <param name="text">The <see cref="T:System.String"/>to compare.</param>
+            <param name="comparisonType">One of the enumeration values that specifies the rules to use in the comparison.</param>
+            <returns><code>true</code> if <paramref name="text"/> matches the end of this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Substring(System.Int32)">
+            <summary>
+            Retrieves a substring from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The substring starts at the position specified by <paramref name="offset"/> and has the remaining length.
+            </summary>
+            <param name="offset">The zero-based starting character position of a substring in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <returns>A <see cref="T:System.String"/> that is equivalent to the substring of remaining length that begins at
+            <paramref name="offset"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Substring(System.Int32,System.Int32)">
+            <summary>
+            Retrieves a substring from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The substring starts at the position specified by <paramref name="offset"/> and has the specified <paramref name="length"/>.
+            </summary>
+            <param name="offset">The zero-based starting character position of a substring in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <param name="length">The number of characters in the substring.</param>
+            <returns>A <see cref="T:System.String"/> that is equivalent to the substring of length <paramref name="length"/> that begins at
+            <paramref name="offset"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Subsegment(System.Int32)">
+            <summary>
+            Retrieves a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> that represents a substring from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> starts at the position specified by <paramref name="offset"/>.
+            </summary>
+            <param name="offset">The zero-based starting character position of a substring in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <returns>A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> that begins at <paramref name="offset"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>
+            whose length is the remainder.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Subsegment(System.Int32,System.Int32)">
+            <summary>
+            Retrieves a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> that represents a substring from this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> starts at the position specified by <paramref name="offset"/> and has the specified <paramref name="length"/>.
+            </summary>
+            <param name="offset">The zero-based starting character position of a substring in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</param>
+            <param name="length">The number of characters in the substring.</param>
+            <returns>A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> that is equivalent to the substring of length <paramref name="length"/> that begins at <paramref name="offset"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOf(System.Char,System.Int32,System.Int32)">
+            <summary>
+            Gets the zero-based index of the first occurrence of the character <paramref name="c"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The search starts at <paramref name="start"/> and examines a specified number of <paramref name="count"/> character positions.
+            </summary>
+            <param name="c">The Unicode character to seek.</param>
+            <param name="start">The zero-based index position at which the search starts. </param>
+            <param name="count">The number of characters to examine.</param>
+            <returns>The zero-based index position of <paramref name="c"/> from the beginning of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> if that character is found, or -1 if it is not.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOf(System.Char,System.Int32)">
+            <summary>
+            Gets the zero-based index of the first occurrence of the character <paramref name="c"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            The search starts at <paramref name="start"/>.
+            </summary>
+            <param name="c">The Unicode character to seek.</param>
+            <param name="start">The zero-based index position at which the search starts. </param>
+            <returns>The zero-based index position of <paramref name="c"/> from the beginning of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> if that character is found, or -1 if it is not.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOf(System.Char)">
+            <summary>
+            Gets the zero-based index of the first occurrence of the character <paramref name="c"/> in this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.
+            </summary>
+            <param name="c">The Unicode character to seek.</param>
+            <returns>The zero-based index position of <paramref name="c"/> from the beginning of the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> if that character is found, or -1 if it is not.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOfAny(System.Char[],System.Int32,System.Int32)">
+            <summary>
+            Reports the zero-based index of the first occurrence in this instance of any character in a specified array
+            of Unicode characters. The search starts at a specified character position and examines a specified number
+            of character positions.
+            </summary>
+            <param name="anyOf">A Unicode character array containing one or more characters to seek.</param>
+            <param name="startIndex">The search starting position.</param>
+            <param name="count">The number of character positions to examine.</param>
+            <returns>The zero-based index position of the first occurrence in this instance where any character in anyOf
+            was found; -1 if no character in anyOf was found.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOfAny(System.Char[],System.Int32)">
+            <summary>
+            Reports the zero-based index of the first occurrence in this instance of any character in a specified array
+            of Unicode characters. The search starts at a specified character position.
+            </summary>
+            <param name="anyOf">A Unicode character array containing one or more characters to seek.</param>
+            <param name="startIndex">The search starting position.</param>
+            <returns>The zero-based index position of the first occurrence in this instance where any character in anyOf
+            was found; -1 if no character in anyOf was found.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IndexOfAny(System.Char[])">
+            <summary>
+            Reports the zero-based index of the first occurrence in this instance of any character in a specified array
+            of Unicode characters.
+            </summary>
+            <param name="anyOf">A Unicode character array containing one or more characters to seek.</param>
+            <returns>The zero-based index position of the first occurrence in this instance where any character in anyOf
+            was found; -1 if no character in anyOf was found.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.LastIndexOf(System.Char)">
+            <summary>
+            Reports the zero-based index position of the last occurrence of a specified Unicode character within this instance.
+            </summary>
+            <param name="value">The Unicode character to seek.</param>
+            <returns>The zero-based index position of value if that character is found, or -1 if it is not.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Trim">
+            <summary>
+            Removes all leading and trailing whitespaces.
+            </summary>
+            <returns>The trimmed <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.TrimStart">
+            <summary>
+            Removes all leading whitespaces.
+            </summary>
+            <returns>The trimmed <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.TrimEnd">
+            <summary>
+            Removes all trailing whitespaces.
+            </summary>
+            <returns>The trimmed <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.Split(System.Char[])">
+            <summary>
+            Splits a string into StringSegments that are based on the characters in an array.
+            </summary>
+            <param name="chars">A character array that delimits the substrings in this string, an empty array that
+            contains no delimiters, or null.</param>
+            <returns>An <see cref="T:Microsoft.Extensions.Primitives.StringTokenizer"/> whose elements contain the StringSegmeents from this instance
+            that are delimited by one or more characters in separator.</returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.IsNullOrEmpty(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Indicates whether the specified StringSegment is null or an Empty string.
+            </summary>
+            <param name="value">The StringSegment to test.</param>
+            <returns></returns>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringSegment.ToString">
+            <summary>
+            Returns the <see cref="T:System.String"/> represented by this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> or <code>String.Empty</code> if the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> does not contain a value.
+            </summary>
+            <returns>The <see cref="T:System.String"/> represented by this <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> or <code>String.Empty</code> if the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> does not contain a value.</returns>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.StringTokenizer">
+            <summary>
+            Tokenizes a <c>string</c> into <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/>s.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringTokenizer.#ctor(System.String,System.Char[])">
+            <summary>
+            Initializes a new instance of <see cref="T:Microsoft.Extensions.Primitives.StringTokenizer"/>.
+            </summary>
+            <param name="value">The <c>string</c> to tokenize.</param>
+            <param name="separators">The characters to tokenize by.</param>
+        </member>
+        <member name="M:Microsoft.Extensions.Primitives.StringTokenizer.#ctor(Microsoft.Extensions.Primitives.StringSegment,System.Char[])">
+            <summary>
+            Initializes a new instance of <see cref="T:Microsoft.Extensions.Primitives.StringTokenizer"/>.
+            </summary>
+            <param name="value">The <c>StringSegment</c> to tokenize.</param>
+            <param name="separators">The characters to tokenize by.</param>
+        </member>
+        <member name="T:Microsoft.Extensions.Primitives.StringValues">
+            <summary>
+            Represents zero/null, one, or many strings in an efficient way.
+            </summary>
+        </member>
+    </members>
+</doc>
diff --git a/packages/Microsoft.Net.Http.Headers.2.2.0/.signature.p7s b/packages/Microsoft.Net.Http.Headers.2.2.0/.signature.p7s
new file mode 100644
index 0000000..620b98f
--- /dev/null
+++ b/packages/Microsoft.Net.Http.Headers.2.2.0/.signature.p7s
Binary files differ
diff --git a/packages/Microsoft.Net.Http.Headers.2.2.0/Microsoft.Net.Http.Headers.2.2.0.nupkg b/packages/Microsoft.Net.Http.Headers.2.2.0/Microsoft.Net.Http.Headers.2.2.0.nupkg
new file mode 100644
index 0000000..0348e59
--- /dev/null
+++ b/packages/Microsoft.Net.Http.Headers.2.2.0/Microsoft.Net.Http.Headers.2.2.0.nupkg
Binary files differ
diff --git a/packages/Microsoft.Net.Http.Headers.2.2.0/lib/netstandard2.0/Microsoft.Net.Http.Headers.xml b/packages/Microsoft.Net.Http.Headers.2.2.0/lib/netstandard2.0/Microsoft.Net.Http.Headers.xml
new file mode 100644
index 0000000..1ecc2b8
--- /dev/null
+++ b/packages/Microsoft.Net.Http.Headers.2.2.0/lib/netstandard2.0/Microsoft.Net.Http.Headers.xml
@@ -0,0 +1,454 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>Microsoft.Net.Http.Headers</name>
+    </assembly>
+    <members>
+        <member name="M:Microsoft.Net.Http.Headers.ContentDispositionHeaderValue.SetHttpFileName(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Sets both FileName and FileNameStar using encodings appropriate for HTTP headers.
+            </summary>
+            <param name="fileName"></param>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.ContentDispositionHeaderValue.SetMimeFileName(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Sets the FileName parameter using encodings appropriate for MIME headers.
+            The FileNameStar parameter is removed.
+            </summary>
+            <param name="fileName"></param>
+        </member>
+        <member name="T:Microsoft.Net.Http.Headers.ContentDispositionHeaderValueIdentityExtensions">
+            <summary>
+            Various extension methods for <see cref="T:Microsoft.Net.Http.Headers.ContentDispositionHeaderValue"/> for identifying the type of the disposition header
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.ContentDispositionHeaderValueIdentityExtensions.IsFileDisposition(Microsoft.Net.Http.Headers.ContentDispositionHeaderValue)">
+            <summary>
+            Checks if the content disposition header is a file disposition
+            </summary>
+            <param name="header">The header to check</param>
+            <returns>True if the header is file disposition, false otherwise</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.ContentDispositionHeaderValueIdentityExtensions.IsFormDisposition(Microsoft.Net.Http.Headers.ContentDispositionHeaderValue)">
+            <summary>
+            Checks if the content disposition header is a form disposition
+            </summary>
+            <param name="header">The header to check</param>
+            <returns>True if the header is form disposition, false otherwise</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.EntityTagHeaderValue.Equals(System.Object)">
+            <summary>
+            Check against another <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/> for equality.
+            This equality check should not be used to determine if two values match under the RFC specifications (https://tools.ietf.org/html/rfc7232#section-2.3.2).
+            </summary>
+            <param name="obj">The other value to check against for equality.</param>
+            <returns>
+            <c>true</c> if the strength and tag of the two values match,
+            <c>false</c> if the other value is null, is not an <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/>, or if there is a mismatch of strength or tag between the two values.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.EntityTagHeaderValue.Compare(Microsoft.Net.Http.Headers.EntityTagHeaderValue,System.Boolean)">
+            <summary>
+            Compares against another <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/> to see if they match under the RFC specifications (https://tools.ietf.org/html/rfc7232#section-2.3.2).
+            </summary>
+            <param name="other">The other <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/> to compare against.</param>
+            <param name="useStrongComparison"><c>true</c> to use a strong comparison, <c>false</c> to use a weak comparison</param>
+            <returns>
+            <c>true</c> if the <see cref="T:Microsoft.Net.Http.Headers.EntityTagHeaderValue"/> match for the given comparison type,
+            <c>false</c> if the other value is null or the comparison failed.
+            </returns>
+        </member>
+        <member name="F:Microsoft.Net.Http.Headers.HeaderQuality.Match">
+            <summary>
+            Quality factor to indicate a perfect match.
+            </summary>
+        </member>
+        <member name="F:Microsoft.Net.Http.Headers.HeaderQuality.NoMatch">
+            <summary>
+            Quality factor to indicate no match.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.TryParseSeconds(Microsoft.Extensions.Primitives.StringValues,System.String,System.Nullable{System.TimeSpan}@)">
+            <summary>
+            Try to find a target header value among the set of given header values and parse it as a
+            <see cref="T:System.TimeSpan"/>.
+            </summary>
+            <param name="headerValues">
+            The <see cref="T:Microsoft.Extensions.Primitives.StringValues"/> containing the set of header values to search.
+            </param>
+            <param name="targetValue">
+            The target header value to look for.
+            </param>
+            <param name="value">
+            When this method returns, contains the parsed <see cref="T:System.TimeSpan"/>, if the parsing succeeded, or
+            null if the parsing failed. The conversion fails if the <paramref name="targetValue"/> was not
+            found or could not be parsed as a <see cref="T:System.TimeSpan"/>. This parameter is passed uninitialized;
+            any value originally supplied in result will be overwritten.
+            </param>
+            <returns>
+            <code>true</code> if <paramref name="targetValue"/> is found and successfully parsed; otherwise,
+            <code>false</code>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.ContainsCacheDirective(Microsoft.Extensions.Primitives.StringValues,System.String)">
+            <summary>
+            Check if a target directive exists among the set of given cache control directives.
+            </summary>
+            <param name="cacheControlDirectives">
+            The <see cref="T:Microsoft.Extensions.Primitives.StringValues"/> containing the set of cache control directives.
+            </param>
+            <param name="targetDirectives">
+            The target cache control directives to look for.
+            </param>
+            <returns>
+            <code>true</code> if <paramref name="targetDirectives"/> is contained in <paramref name="cacheControlDirectives"/>;
+            otherwise, <code>false</code>.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.TryParseNonNegativeInt32(Microsoft.Extensions.Primitives.StringSegment,System.Int32@)">
+            <summary>
+            Try to convert a string representation of a positive number to its 64-bit signed integer equivalent.
+            A return value indicates whether the conversion succeeded or failed.
+            </summary>
+            <param name="value">
+            A string containing a number to convert.
+            </param>
+            <param name="result">
+            When this method returns, contains the 64-bit signed integer value equivalent of the number contained
+            in the string, if the conversion succeeded, or zero if the conversion failed. The conversion fails if
+            the string is null or String.Empty, is not of the correct format, is negative, or represents a number
+            greater than Int64.MaxValue. This parameter is passed uninitialized; any value originally supplied in
+            result will be overwritten.
+            </param>
+            <returns><code>true</code> if parsing succeeded; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.TryParseNonNegativeInt64(Microsoft.Extensions.Primitives.StringSegment,System.Int64@)">
+            <summary>
+            Try to convert a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> representation of a positive number to its 64-bit signed
+            integer equivalent. A return value indicates whether the conversion succeeded or failed.
+            </summary>
+            <param name="value">
+            A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> containing a number to convert.
+            </param>
+            <param name="result">
+            When this method returns, contains the 64-bit signed integer value equivalent of the number contained
+            in the string, if the conversion succeeded, or zero if the conversion failed. The conversion fails if
+            the <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> is null or String.Empty, is not of the correct format, is negative, or
+            represents a number greater than Int64.MaxValue. This parameter is passed uninitialized; any value
+            originally supplied in result will be overwritten.
+            </param>
+            <returns><code>true</code> if parsing succeeded; otherwise, <code>false</code>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.FormatNonNegativeInt64(System.Int64)">
+            <summary>
+            Converts the non-negative 64-bit numeric value to its equivalent string representation.
+            </summary>
+            <param name="value">
+            The number to convert.
+            </param>
+            <returns>
+            The string representation of the value of this instance, consisting of a sequence of digits ranging from 0 to 9 with no leading zeroes.
+            </returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.UnescapeAsQuotedString(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Given a quoted-string as defined by <see href="https://tools.ietf.org/html/rfc7230#section-3.2.6">the RFC specification</see>,
+            removes quotes and unescapes backslashes and quotes. This assumes that the input is a valid quoted-string.
+            </summary>
+            <param name="input">The quoted-string to be unescaped.</param>
+            <returns>An unescaped version of the quoted-string.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.HeaderUtilities.EscapeAsQuotedString(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Escapes a <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> as a quoted-string, which is defined by
+            <see href="https://tools.ietf.org/html/rfc7230#section-3.2.6">the RFC specification</see>.
+            </summary>
+            <remarks>
+            This will add a backslash before each backslash and quote and add quotes
+            around the input. Assumes that the input does not have quotes around it,
+            as this method will add them. Throws if the input contains any invalid escape characters,
+            as defined by rfc7230.
+            </remarks>
+            <param name="input">The input to be escaped.</param>
+            <returns>An escaped version of the quoted-string.</returns>
+        </member>
+        <member name="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue">
+            <summary>
+            Representation of the media type header. See <see href="https://tools.ietf.org/html/rfc6838"/>.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.#ctor(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Initializes a <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> instance.
+            </summary>
+            <param name="mediaType">A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> representation of a media type.
+            The text provided must be a single media type without parameters. </param>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.#ctor(Microsoft.Extensions.Primitives.StringSegment,System.Double)">
+            <summary>
+            Initializes a <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> instance.
+            </summary>
+            <param name="mediaType">A <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> representation of a media type.
+            The text provided must be a single media type without parameters. </param>
+            <param name="quality">The <see cref="T:System.Double"/> with the quality of the media type.</param>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Charset">
+            <summary>
+            Gets or sets the value of the charset parameter. Returns <see cref="F:Microsoft.Extensions.Primitives.StringSegment.Empty"/>
+            if there is no charset.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Encoding">
+            <summary>
+            Gets or sets the value of the Encoding parameter. Setting the Encoding will set
+            the <see cref="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Charset"/> to <see cref="P:System.Text.Encoding.WebName"/>.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Boundary">
+            <summary>
+            Gets or sets the value of the boundary parameter. Returns <see cref="F:Microsoft.Extensions.Primitives.StringSegment.Empty"/>
+            if there is no boundary.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Parameters">
+            <summary>
+            Gets or sets the media type's parameters. Returns an empty <see cref="T:System.Collections.Generic.IList`1"/>
+            if there are no parameters.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Quality">
+            <summary>
+            Gets or sets the value of the quality parameter. Returns null
+            if there is no quality.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.MediaType">
+            <summary>
+            Gets or sets the value of the media type. Returns <see cref="F:Microsoft.Extensions.Primitives.StringSegment.Empty"/>
+            if there is no media type.
+            </summary>
+            <example>
+            For the media type <c>"application/json"</c>, the property gives the value
+            <c>"application/json"</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Type">
+            <summary>
+            Gets the type of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.
+            </summary>
+            <example>
+            For the media type <c>"application/json"</c>, the property gives the value <c>"application"</c>.
+            </example>
+            <remarks>See <see href="https://tools.ietf.org/html/rfc6838#section-4.2"/> for more details on the type.</remarks>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.SubType">
+            <summary>
+            Gets the subtype of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.
+            </summary>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, the property gives the value
+            <c>"vnd.example+json"</c>.
+            </example>
+            <remarks>See <see href="https://tools.ietf.org/html/rfc6838#section-4.2"/> for more details on the subtype.</remarks>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.SubTypeWithoutSuffix">
+            <summary>
+            Gets subtype of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>, excluding any structured syntax suffix. Returns <see cref="F:Microsoft.Extensions.Primitives.StringSegment.Empty"/>
+            if there is no subtype without suffix.
+            </summary>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, the property gives the value
+            <c>"vnd.example"</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Suffix">
+            <summary>
+            Gets the structured syntax suffix of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> if it has one.
+            See <see href="https://tools.ietf.org/html/rfc6838#section-4.8">The RFC documentation on structured syntaxes.</see>
+            </summary>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, the property gives the value
+            <c>"json"</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Facets">
+            <summary>
+            Get a <see cref="T:System.Collections.Generic.IList`1"/> of facets of the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>. Facets are a
+            period separated list of StringSegments in the <see cref="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.SubTypeWithoutSuffix"/>.
+            See <see href="https://tools.ietf.org/html/rfc6838#section-3">The RFC documentation on facets.</see>
+            </summary>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, the property gives the value:
+            <c>{"vnd", "example"}</c>
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.MatchesAllTypes">
+            <summary>
+            Gets whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> matches all types.
+            </summary>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.MatchesAllSubTypes">
+            <summary>
+            Gets whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> matches all subtypes.
+            </summary>
+            <example>
+            For the media type <c>"application/*"</c>, this property is <c>true</c>.
+            </example>
+            <example>
+            For the media type <c>"application/json"</c>, this property is <c>false</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.MatchesAllSubTypesWithoutSuffix">
+            <summary>
+            Gets whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> matches all subtypes, ignoring any structured syntax suffix.
+            </summary>
+            <example>
+            For the media type <c>"application/*+json"</c>, this property is <c>true</c>.
+            </example>
+            <example>
+            For the media type <c>"application/vnd.example+json"</c>, this property is <c>false</c>.
+            </example>
+        </member>
+        <member name="P:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.IsReadOnly">
+            <summary>
+            Gets whether the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> is readonly.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.IsSubsetOf(Microsoft.Net.Http.Headers.MediaTypeHeaderValue)">
+            <summary>
+            Gets a value indicating whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> is a subset of
+            <paramref name="otherMediaType"/>. A "subset" is defined as the same or a more specific media type
+            according to the precedence described in https://www.ietf.org/rfc/rfc2068.txt section 14.1, Accept.
+            </summary>
+            <param name="otherMediaType">The <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> to compare.</param>
+            <returns>
+            A value indicating whether this <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> is a subset of
+            <paramref name="otherMediaType"/>.
+            </returns>
+            <remarks>
+            For example "multipart/mixed; boundary=1234" is a subset of "multipart/mixed; boundary=1234",
+            "multipart/mixed", "multipart/*", and "*/*" but not "multipart/mixed; boundary=2345" or
+            "multipart/message; boundary=1234".
+            </remarks>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Copy">
+            <summary>
+            Performs a deep copy of this object and all of it's NameValueHeaderValue sub components,
+            while avoiding the cost of re-validating the components.
+            </summary>
+            <returns>A deep copy.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.CopyAsReadOnly">
+            <summary>
+            Performs a deep copy of this object and all of it's NameValueHeaderValue sub components,
+            while avoiding the cost of re-validating the components. This copy is read-only.
+            </summary>
+            <returns>A deep, read-only, copy.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Parse(Microsoft.Extensions.Primitives.StringSegment)">
+            <summary>
+            Takes a media type and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue" /> and its associated parameters.
+            </summary>
+            <param name="input">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> with the media type.</param>
+            <returns>The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.TryParse(Microsoft.Extensions.Primitives.StringSegment,Microsoft.Net.Http.Headers.MediaTypeHeaderValue@)">
+            <summary>
+            Takes a media type, which can include parameters, and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue" /> and its associated parameters.
+            </summary>
+            <param name="input">The <see cref="T:Microsoft.Extensions.Primitives.StringSegment"/> with the media type. The media type constructed here must not have an y</param>
+            <param name="parsedValue">The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/></param>
+            <returns>True if the value was successfully parsed.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.ParseList(System.Collections.Generic.IList{System.String})">
+            <summary>
+            Takes an <see cref="T:System.Collections.Generic.IList`1"/> of <see cref="T:System.String"/> and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"></see> and its associated parameters.
+            </summary>
+            <param name="inputs">A list of media types</param>
+            <returns>The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.ParseStrictList(System.Collections.Generic.IList{System.String})">
+            <summary>
+            Takes an <see cref="T:System.Collections.Generic.IList`1"/> of <see cref="T:System.String"/> and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"></see> and its associated parameters.
+            Throws if there is invalid data in a string.
+            </summary>
+            <param name="inputs">A list of media types</param>
+            <returns>The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.TryParseList(System.Collections.Generic.IList{System.String},System.Collections.Generic.IList{Microsoft.Net.Http.Headers.MediaTypeHeaderValue}@)">
+            <summary>
+            Takes an <see cref="T:System.Collections.Generic.IList`1"/> of <see cref="T:System.String"/> and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"></see> and its associated parameters.
+            </summary>
+            <param name="inputs">A list of media types</param>
+            <param name="parsedValues">The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</param>
+            <returns>True if the value was successfully parsed.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValue.TryParseStrictList(System.Collections.Generic.IList{System.String},System.Collections.Generic.IList{Microsoft.Net.Http.Headers.MediaTypeHeaderValue}@)">
+            <summary>
+            Takes an <see cref="T:System.Collections.Generic.IList`1"/> of <see cref="T:System.String"/> and parses it into the <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"></see> and its associated parameters.
+            </summary>
+            <param name="inputs">A list of media types</param>
+            <param name="parsedValues">The parsed <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/>.</param>
+            <returns>True if the value was successfully parsed.</returns>
+        </member>
+        <member name="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValueComparer">
+            <summary>
+            Implementation of <see cref="T:System.Collections.Generic.IComparer`1"/> that can compare accept media type header fields
+            based on their quality values (a.k.a q-values).
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.MediaTypeHeaderValueComparer.Compare(Microsoft.Net.Http.Headers.MediaTypeHeaderValue,Microsoft.Net.Http.Headers.MediaTypeHeaderValue)">
+            <inheritdoc />
+            <remarks>
+            Performs comparisons based on the arguments' quality values
+            (aka their "q-value"). Values with identical q-values are considered equal (i.e. the result is 0)
+            with the exception that suffixed subtype wildcards are considered less than subtype wildcards, subtype wildcards
+            are considered less than specific media types and full wildcards are considered less than
+            subtype wildcards. This allows callers to sort a sequence of <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValue"/> following
+            their q-values in the order of specific media types, subtype wildcards, and last any full wildcards.
+            </remarks>
+            <example>
+            If we had a list of media types (comma separated): { text/*;q=0.8, text/*+json;q=0.8, */*;q=1, */*;q=0.8, text/plain;q=0.8 }
+            Sorting them using Compare would return: { */*;q=0.8, text/*;q=0.8, text/*+json;q=0.8, text/plain;q=0.8, */*;q=1 }
+            </example>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.NameValueHeaderValue.Copy">
+            <summary>
+            Provides a copy of this object without the cost of re-validating the values.
+            </summary>
+            <returns>A copy.</returns>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.SetCookieHeaderValue.AppendToStringBuilder(System.Text.StringBuilder)">
+            <summary>
+            Append string representation of this <see cref="T:Microsoft.Net.Http.Headers.SetCookieHeaderValue"/> to given
+            <paramref name="builder"/>.
+            </summary>
+            <param name="builder">
+            The <see cref="T:System.Text.StringBuilder"/> to receive the string representation of this
+            <see cref="T:Microsoft.Net.Http.Headers.SetCookieHeaderValue"/>.
+            </param>
+        </member>
+        <member name="T:Microsoft.Net.Http.Headers.StringWithQualityHeaderValueComparer">
+            <summary>
+            Implementation of <see cref="T:System.Collections.Generic.IComparer`1"/> that can compare content negotiation header fields
+            based on their quality values (a.k.a q-values). This applies to values used in accept-charset,
+            accept-encoding, accept-language and related header fields with similar syntax rules. See
+            <see cref="T:Microsoft.Net.Http.Headers.MediaTypeHeaderValueComparer"/> for a comparer for media type
+            q-values.
+            </summary>
+        </member>
+        <member name="M:Microsoft.Net.Http.Headers.StringWithQualityHeaderValueComparer.Compare(Microsoft.Net.Http.Headers.StringWithQualityHeaderValue,Microsoft.Net.Http.Headers.StringWithQualityHeaderValue)">
+            <summary>
+            Compares two <see cref="T:Microsoft.Net.Http.Headers.StringWithQualityHeaderValue"/> based on their quality value
+            (a.k.a their "q-value").
+            Values with identical q-values are considered equal (i.e the result is 0) with the exception of wild-card
+            values (i.e. a value of "*") which are considered less than non-wild-card values. This allows to sort
+            a sequence of <see cref="T:Microsoft.Net.Http.Headers.StringWithQualityHeaderValue"/> following their q-values ending up with any
+            wild-cards at the end.
+            </summary>
+            <param name="stringWithQuality1">The first value to compare.</param>
+            <param name="stringWithQuality2">The second value to compare</param>
+            <returns>The result of the comparison.</returns>
+        </member>
+    </members>
+</doc>
diff --git a/packages/System.CodeDom.6.0.0/.signature.p7s b/packages/System.CodeDom.6.0.0/.signature.p7s
new file mode 100644
index 0000000..0f50b43
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/.signature.p7s
Binary files differ
diff --git a/packages/System.CodeDom.6.0.0/Icon.png b/packages/System.CodeDom.6.0.0/Icon.png
new file mode 100644
index 0000000..a0f1fdb
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/Icon.png
Binary files differ
diff --git a/packages/System.CodeDom.6.0.0/LICENSE.TXT b/packages/System.CodeDom.6.0.0/LICENSE.TXT
new file mode 100644
index 0000000..984713a
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/LICENSE.TXT
@@ -0,0 +1,23 @@
+The MIT License (MIT)
+
+Copyright (c) .NET Foundation and Contributors
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/packages/System.CodeDom.6.0.0/System.CodeDom.6.0.0.nupkg b/packages/System.CodeDom.6.0.0/System.CodeDom.6.0.0.nupkg
new file mode 100644
index 0000000..42b1b83
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/System.CodeDom.6.0.0.nupkg
Binary files differ
diff --git a/packages/System.CodeDom.6.0.0/THIRD-PARTY-NOTICES.TXT b/packages/System.CodeDom.6.0.0/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 0000000..89c59b2
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,939 @@
+.NET Runtime uses third-party libraries or other resources that may be
+distributed under licenses different than the .NET Runtime software.
+
+In the event that we accidentally failed to list a required notice, please
+bring it to our attention. Post an issue or email us:
+
+           dotnet@microsoft.com
+
+The attached notices are provided for information only.
+
+License notice for ASP.NET
+-------------------------------
+
+Copyright (c) .NET Foundation. All rights reserved.
+Licensed under the Apache License, Version 2.0.
+
+Available at
+https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt
+
+License notice for Slicing-by-8
+-------------------------------
+
+http://sourceforge.net/projects/slicing-by-8/
+
+Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+
+This software program is licensed subject to the BSD License,  available at
+http://www.opensource.org/licenses/bsd-license.html.
+
+
+License notice for Unicode data
+-------------------------------
+
+https://www.unicode.org/license.html
+
+Copyright 漏 1991-2020 Unicode, Inc. All rights reserved.
+Distributed under the Terms of Use in https://www.unicode.org/copyright.html.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Unicode data files and any associated documentation
+(the "Data Files") or Unicode software and any associated documentation
+(the "Software") to deal in the Data Files or Software
+without restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, and/or sell copies of
+the Data Files or Software, and to permit persons to whom the Data Files
+or Software are furnished to do so, provided that either
+(a) this copyright and permission notice appear with all copies
+of the Data Files or Software, or
+(b) this copyright and permission notice appear in associated
+Documentation.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT OF THIRD PARTY RIGHTS.
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
+NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
+DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THE DATA FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder
+shall not be used in advertising or otherwise to promote the sale,
+use or other dealings in these Data Files or Software without prior
+written authorization of the copyright holder.
+
+License notice for Zlib
+-----------------------
+
+https://github.com/madler/zlib
+http://zlib.net/zlib_license.html
+
+/* zlib.h -- interface of the 'zlib' general purpose compression library
+  version 1.2.11, January 15th, 2017
+
+  Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  Jean-loup Gailly        Mark Adler
+  jloup@gzip.org          madler@alumni.caltech.edu
+
+*/
+
+License notice for Mono
+-------------------------------
+
+http://www.mono-project.com/docs/about-mono/
+
+Copyright (c) .NET Foundation Contributors
+
+MIT License
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software  and associated documentation files (the Software), to deal
+in the Software without restriction,  including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense,  and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so,  subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for International Organization for Standardization
+-----------------------------------------------------------------
+
+Portions (C) International Organization for Standardization 1986:
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+
+License notice for Intel
+------------------------
+
+"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+this list of conditions and the following disclaimer in the documentation
+and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Xamarin and Novell
+-------------------------------------
+
+Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Copyright (c) 2011 Novell, Inc (http://www.novell.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Third party notice for W3C
+--------------------------
+
+"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE
+Status: This license takes effect 13 May, 2015.
+This work is being provided by the copyright holders under the following license.
+License
+By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
+Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications:
+The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
+Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included.
+Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright 漏 [YEAR] W3C庐 (MIT, ERCIM, Keio, Beihang)."
+Disclaimers
+THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
+The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders."
+
+License notice for Bit Twiddling Hacks
+--------------------------------------
+
+Bit Twiddling Hacks
+
+By Sean Eron Anderson
+seander@cs.stanford.edu
+
+Individually, the code snippets here are in the public domain (unless otherwise
+noted) 鈥� feel free to use them however you please. The aggregate collection and
+descriptions are 漏 1997-2005 Sean Eron Anderson. The code and descriptions are
+distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and
+without even the implied warranty of merchantability or fitness for a particular
+purpose.
+
+License notice for Brotli
+--------------------------------------
+
+Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+compress_fragment.c:
+Copyright (c) 2011, Google Inc.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+    * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+    * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+decode_fuzzer.c:
+Copyright (c) 2015 The Chromium Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+   * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+   * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+   * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+
+License notice for Json.NET
+-------------------------------
+
+https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md
+
+The MIT License (MIT)
+
+Copyright (c) 2007 James Newton-King
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized base64 encoding / decoding
+--------------------------------------------------------
+
+Copyright (c) 2005-2007, Nick Galbreath
+Copyright (c) 2013-2017, Alfred Klomp
+Copyright (c) 2015-2017, Wojciech Mula
+Copyright (c) 2016-2017, Matthieu Darbois
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+- Redistributions of source code must retain the above copyright notice,
+  this list of conditions and the following disclaimer.
+
+- Redistributions in binary form must reproduce the above copyright
+  notice, this list of conditions and the following disclaimer in the
+  documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for RFC 3492
+---------------------------
+
+The punycode implementation is based on the sample code in RFC 3492
+
+Copyright (C) The Internet Society (2003).  All Rights Reserved.
+
+This document and translations of it may be copied and furnished to
+others, and derivative works that comment on or otherwise explain it
+or assist in its implementation may be prepared, copied, published
+and distributed, in whole or in part, without restriction of any
+kind, provided that the above copyright notice and this paragraph are
+included on all such copies and derivative works.  However, this
+document itself may not be modified in any way, such as by removing
+the copyright notice or references to the Internet Society or other
+Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for
+copyrights defined in the Internet Standards process must be
+followed, or as required to translate it into languages other than
+English.
+
+The limited permissions granted above are perpetual and will not be
+revoked by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an
+"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
+TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
+BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
+HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+
+License notice for Algorithm from Internet Draft document "UUIDs and GUIDs"
+---------------------------------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, or Digital Equipment Corporation be used in advertising
+or publicity pertaining to distribution of the software without
+specific, written prior permission.  Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital Equipment
+Corporation makes any representations about the suitability of
+this software for any purpose.
+
+Copyright(C) The Internet Society 1997. All Rights Reserved.
+
+This document and translations of it may be copied and furnished to others,
+and derivative works that comment on or otherwise explain it or assist in
+its implementation may be prepared, copied, published and distributed, in
+whole or in part, without restriction of any kind, provided that the above
+copyright notice and this paragraph are included on all such copies and
+derivative works.However, this document itself may not be modified in any
+way, such as by removing the copyright notice or references to the Internet
+Society or other Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for copyrights
+defined in the Internet Standards process must be followed, or as required
+to translate it into languages other than English.
+
+The limited permissions granted above are perpetual and will not be revoked
+by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an "AS IS"
+basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE
+DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
+ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY
+RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
+PARTICULAR PURPOSE.
+
+License notice for Algorithm from RFC 4122 -
+A Universally Unique IDentifier (UUID) URN Namespace
+----------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+Copyright (c) 1998 Microsoft.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, Microsoft, or Digital Equipment Corporation be used in
+advertising or publicity pertaining to distribution of the software
+without specific, written prior permission. Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital
+Equipment Corporation makes any representations about the
+suitability of this software for any purpose."
+
+License notice for The LLVM Compiler Infrastructure
+---------------------------------------------------
+
+Developed by:
+
+    LLVM Team
+
+    University of Illinois at Urbana-Champaign
+
+    http://llvm.org
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal with
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimers.
+
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimers in the
+      documentation and/or other materials provided with the distribution.
+
+    * Neither the names of the LLVM Team, University of Illinois at
+      Urbana-Champaign, nor the names of its contributors may be used to
+      endorse or promote products derived from this Software without specific
+      prior written permission.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+SOFTWARE.
+
+License notice for Bob Jenkins
+------------------------------
+
+By Bob Jenkins, 1996.  bob_jenkins@burtleburtle.net.  You may use this
+code any way you wish, private, educational, or commercial.  It's free.
+
+License notice for Greg Parker
+------------------------------
+
+Greg Parker     gparker@cs.stanford.edu     December 2000
+This code is in the public domain and may be copied or modified without
+permission.
+
+License notice for libunwind based code
+----------------------------------------
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for Printing Floating-Point Numbers (Dragon4)
+------------------------------------------------------------
+
+/******************************************************************************
+  Copyright (c) 2014 Ryan Juckett
+  http://www.ryanjuckett.com/
+
+  This software is provided 'as-is', without any express or implied
+  warranty. In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+
+  3. This notice may not be removed or altered from any source
+     distribution.
+******************************************************************************/
+
+License notice for Printing Floating-point Numbers (Grisu3)
+-----------------------------------------------------------
+
+Copyright 2012 the V8 project authors. All rights reserved.
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above
+      copyright notice, this list of conditions and the following
+      disclaimer in the documentation and/or other materials provided
+      with the distribution.
+    * Neither the name of Google Inc. nor the names of its
+      contributors may be used to endorse or promote products derived
+      from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for xxHash
+-------------------------
+
+xxHash Library
+Copyright (c) 2012-2014, Yann Collet
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Berkeley SoftFloat Release 3e
+------------------------------------------------
+
+https://github.com/ucb-bar/berkeley-softfloat-3
+https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt
+
+License for Berkeley SoftFloat Release 3e
+
+John R. Hauser
+2018 January 20
+
+The following applies to the whole of SoftFloat Release 3e as well as to
+each source file individually.
+
+Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the
+University of California.  All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+    this list of conditions, and the following disclaimer.
+
+ 2. Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions, and the following disclaimer in the
+    documentation and/or other materials provided with the distribution.
+
+ 3. Neither the name of the University nor the names of its contributors
+    may be used to endorse or promote products derived from this software
+    without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE
+DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for xoshiro RNGs
+--------------------------------
+
+Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org)
+
+To the extent possible under law, the author has dedicated all copyright
+and related and neighboring rights to this software to the public domain
+worldwide. This software is distributed without any warranty.
+
+See <http://creativecommons.org/publicdomain/zero/1.0/>.
+
+License for fastmod (https://github.com/lemire/fastmod) and ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data)
+--------------------------------------
+
+   Copyright 2018 Daniel Lemire
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+
+License notice for The C++ REST SDK
+-----------------------------------
+
+C++ REST SDK
+
+The MIT License (MIT)
+
+Copyright (c) Microsoft Corporation
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for MessagePack-CSharp
+-------------------------------------
+
+MessagePack for C#
+
+MIT License
+
+Copyright (c) 2017 Yoshifumi Kawai
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for lz4net
+-------------------------------------
+
+lz4net
+
+Copyright (c) 2013-2017, Milosz Krajewski
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+
+Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Nerdbank.Streams
+-----------------------------------
+
+The MIT License (MIT)
+
+Copyright (c) Andrew Arnott
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for RapidJSON
+----------------------------
+
+Tencent is pleased to support the open source community by making RapidJSON available.
+
+Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved.
+
+Licensed under the MIT License (the "License"); you may not use this file except
+in compliance with the License. You may obtain a copy of the License at
+
+http://opensource.org/licenses/MIT
+
+Unless required by applicable law or agreed to in writing, software distributed
+under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, either express or implied. See the License for the
+specific language governing permissions and limitations under the License.
+
+License notice for DirectX Math Library
+---------------------------------------
+
+https://github.com/microsoft/DirectXMath/blob/master/LICENSE
+
+                               The MIT License (MIT)
+
+Copyright (c) 2011-2020 Microsoft Corp
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this
+software and associated documentation files (the "Software"), to deal in the Software
+without restriction, including without limitation the rights to use, copy, modify,
+merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be included in all copies
+or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
+INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
+PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
+OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for ldap4net
+---------------------------
+
+The MIT License (MIT)
+
+Copyright (c) 2018 Alexander Chermyanin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized sorting code
+------------------------------------------
+
+MIT License
+
+Copyright (c) 2020 Dan Shechter
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for musl
+-----------------------
+
+musl as a whole is licensed under the following standard MIT license:
+
+Copyright 漏 2005-2020 Rich Felker, et al.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
+License notice for "Faster Unsigned Division by Constants"
+------------------------------
+
+Reference implementations of computing and using the "magic number" approach to dividing
+by constants, including codegen instructions. The unsigned division incorporates the
+"round down" optimization per ridiculous_fish.
+
+This is free and unencumbered software. Any copyright is dedicated to the Public Domain.
+
+
+License notice for mimalloc
+-----------------------------------
+
+MIT License
+
+Copyright (c) 2019 Microsoft Corporation, Daan Leijen
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/packages/System.CodeDom.6.0.0/buildTransitive/netcoreapp2.0/System.CodeDom.targets b/packages/System.CodeDom.6.0.0/buildTransitive/netcoreapp2.0/System.CodeDom.targets
new file mode 100644
index 0000000..f2a8d09
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/buildTransitive/netcoreapp2.0/System.CodeDom.targets
@@ -0,0 +1,6 @@
+<Project InitialTargets="NETStandardCompatError_System_CodeDom_netcoreapp3_1">
+  <Target Name="NETStandardCompatError_System_CodeDom_netcoreapp3_1"
+          Condition="'$(SuppressTfmSupportBuildWarnings)' == ''">
+    <Error Text="System.CodeDom doesn't support $(TargetFramework). Consider updating your TargetFramework to netcoreapp3.1 or later." />
+  </Target>
+</Project>
diff --git a/packages/System.CodeDom.6.0.0/buildTransitive/netcoreapp3.1/_._ b/packages/System.CodeDom.6.0.0/buildTransitive/netcoreapp3.1/_._
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/buildTransitive/netcoreapp3.1/_._
diff --git a/packages/System.CodeDom.6.0.0/lib/net461/System.CodeDom.xml b/packages/System.CodeDom.6.0.0/lib/net461/System.CodeDom.xml
new file mode 100644
index 0000000..d8924bc
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/lib/net461/System.CodeDom.xml
@@ -0,0 +1,129 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>System.CodeDom</name>
+    </assembly>
+    <members>
+        <member name="P:System.SR.CodeDomProvider_NotDefined">
+            <summary>There is no CodeDom provider defined for the language.</summary>
+        </member>
+        <member name="P:System.SR.NotSupported_CodeDomAPI">
+            <summary>This CodeDomProvider does not support this method.</summary>
+        </member>
+        <member name="P:System.SR.CodeGenOutputWriter">
+            <summary>The output writer for code generation and the writer supplied don't match and cannot be used. This is generally caused by a bad implementation of a CodeGenerator derived class.</summary>
+        </member>
+        <member name="P:System.SR.CodeGenReentrance">
+            <summary>This code generation API cannot be called while the generator is being used to generate something else.</summary>
+        </member>
+        <member name="P:System.SR.InvalidElementType">
+            <summary>Element type {0} is not supported.</summary>
+        </member>
+        <member name="P:System.SR.Argument_NullComment">
+            <summary>The 'Comment' property of the CodeCommentStatement '{0}' cannot be null.</summary>
+        </member>
+        <member name="P:System.SR.InvalidPrimitiveType">
+            <summary>Invalid Primitive Type: {0}. Consider using CodeObjectCreateExpression.</summary>
+        </member>
+        <member name="P:System.SR.InvalidIdentifier">
+            <summary>Identifier '{0}' is not valid.</summary>
+        </member>
+        <member name="P:System.SR.ArityDoesntMatch">
+            <summary>The total arity specified in '{0}' does not match the number of TypeArguments supplied.  There were '{1}' TypeArguments supplied.</summary>
+        </member>
+        <member name="P:System.SR.InvalidNullEmptyArgument">
+            <summary>Argument {0} cannot be null or zero-length.</summary>
+        </member>
+        <member name="P:System.SR.DuplicateFileName">
+            <summary>The file name '{0}' was already in the collection.</summary>
+        </member>
+        <member name="P:System.SR.InvalidTypeName">
+            <summary>The type name:"{0}" on the property:"{1}" of type:"{2}" is not a valid language-independent type name.</summary>
+        </member>
+        <member name="P:System.SR.InvalidRegion">
+            <summary>The region directive '{0}' contains invalid characters.  RegionText cannot contain any new line characters.</summary>
+        </member>
+        <member name="P:System.SR.InvalidPathCharsInChecksum">
+            <summary>The CodeChecksumPragma file name '{0}' contains invalid path characters.</summary>
+        </member>
+        <member name="P:System.SR.ExecTimeout">
+            <summary>Timed out waiting for a program to execute. The command being executed was {0}.</summary>
+        </member>
+        <member name="P:System.SR.Provider_does_not_support_options">
+            <summary>This CodeDomProvider type does not have a constructor that takes providerOptions - "{0}".</summary>
+        </member>
+        <member name="P:System.SR.InvalidLanguageIdentifier">
+            <summary>The identifier:"{0}" on the property:"{1}" of type:"{2}" is not a valid language-independent identifier name. Check to see if CodeGenerator.IsValidLanguageIndependentIdentifier allows the identifier name.</summary>
+        </member>
+        <member name="P:System.SR.toStringUnknown">
+            <summary>{unknown}</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line1">
+            <summary>auto-generated&gt;</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line2">
+            <summary>This code was generated by a tool.</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line4">
+            <summary>Changes to this file may cause incorrect behavior and will be lost if</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line5">
+            <summary>the code is regenerated.</summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.OSPlatformAttribute">
+            <summary>
+            Base type for all platform-specific API attributes.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.TargetPlatformAttribute">
+            <summary>
+            Records the platform that the project targeted.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformAttribute">
+             <summary>
+             Records the operating system (and minimum version) that supports an API. Multiple attributes can be
+             applied to indicate support on multiple operating systems.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformAttribute" />
+             or use guards to prevent calls to APIs on unsupported operating systems.
+            
+             A given platform should only be specified once.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformAttribute">
+            <summary>
+            Marks APIs that were removed in a given operating system version.
+            </summary>
+            <remarks>
+            Primarily used by OS bindings to indicate APIs that are only available in
+            earlier versions.
+            </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates a custom guard field, property or method with a supported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple supported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that field, property or method in a conditional or assert statements in order to safely call platform specific APIs.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates the custom guard field, property or method with an unsupported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple unsupported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that  field, property or method in a conditional or assert statements as a guard to safely call APIs unsupported on those platforms.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+    </members>
+</doc>
diff --git a/packages/System.CodeDom.6.0.0/lib/net6.0/System.CodeDom.xml b/packages/System.CodeDom.6.0.0/lib/net6.0/System.CodeDom.xml
new file mode 100644
index 0000000..07c2158
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/lib/net6.0/System.CodeDom.xml
@@ -0,0 +1,105 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>System.CodeDom</name>
+    </assembly>
+    <members>
+        <member name="P:Microsoft.VisualBasic.VBCodeGenerator.IsCurrentModule">
+            <summary>Tells whether or not the current class should be generated as a module</summary>
+        </member>
+        <member name="P:System.CodeDom.Compiler.CompilerParameters.CoreAssemblyFileName">
+            <summary>
+            The "core" or "standard" assembly that contains basic types such as <code>Object</code>, <code>Int32</code> and the like
+            that is to be used for the compilation.<br />
+            If the value of this property is an empty string (or <code>null</code>), the default core assembly will be used by the
+            compiler (depending on the compiler version this may be <code>mscorlib.dll</code> or <code>System.Runtime.dll</code> in
+            a Framework or reference assembly directory).<br />
+            If the value of this property is not empty, CodeDom will emit compiler options to not reference <em>any</em> assemblies
+            implicitly during compilation. It will also explicitly reference the assembly file specified in this property.<br />
+            For compilers that only implicitly reference the "core" or "standard" assembly by default, this option can be used on its own.
+            For compilers that implicitly reference more assemblies on top of the "core" / "standard" assembly, using this option may require
+            specifying additional entries in the <code>System.CodeDom.Compiler.<bold>ReferencedAssemblies</bold></code> collection.<br />
+            Note: An <code>ICodeCompiler</code> / <code>CoodeDomProvider</code> implementation may choose to ignore this property.
+            </summary>
+        </member>
+        <member name="T:System.CSharpHelpers">
+            <devdoc>
+               <para>Provides a base class for code generators.</para>
+            </devdoc>
+        </member>
+        <member name="M:System.CSharpHelpers.IsValidLanguageIndependentIdentifier(System.String)">
+            <devdoc>
+               <para>
+                  Gets a value indicating whether the specified value is a valid language
+                  independent identifier.
+               </para>
+            </devdoc>
+        </member>
+        <member name="P:System.SR.CodeDomProvider_NotDefined">
+            <summary>There is no CodeDom provider defined for the language.</summary>
+        </member>
+        <member name="P:System.SR.NotSupported_CodeDomAPI">
+            <summary>This CodeDomProvider does not support this method.</summary>
+        </member>
+        <member name="P:System.SR.CodeGenOutputWriter">
+            <summary>The output writer for code generation and the writer supplied don't match and cannot be used. This is generally caused by a bad implementation of a CodeGenerator derived class.</summary>
+        </member>
+        <member name="P:System.SR.CodeGenReentrance">
+            <summary>This code generation API cannot be called while the generator is being used to generate something else.</summary>
+        </member>
+        <member name="P:System.SR.InvalidElementType">
+            <summary>Element type {0} is not supported.</summary>
+        </member>
+        <member name="P:System.SR.Argument_NullComment">
+            <summary>The 'Comment' property of the CodeCommentStatement '{0}' cannot be null.</summary>
+        </member>
+        <member name="P:System.SR.InvalidPrimitiveType">
+            <summary>Invalid Primitive Type: {0}. Consider using CodeObjectCreateExpression.</summary>
+        </member>
+        <member name="P:System.SR.InvalidIdentifier">
+            <summary>Identifier '{0}' is not valid.</summary>
+        </member>
+        <member name="P:System.SR.ArityDoesntMatch">
+            <summary>The total arity specified in '{0}' does not match the number of TypeArguments supplied.  There were '{1}' TypeArguments supplied.</summary>
+        </member>
+        <member name="P:System.SR.InvalidNullEmptyArgument">
+            <summary>Argument {0} cannot be null or zero-length.</summary>
+        </member>
+        <member name="P:System.SR.DuplicateFileName">
+            <summary>The file name '{0}' was already in the collection.</summary>
+        </member>
+        <member name="P:System.SR.InvalidTypeName">
+            <summary>The type name:"{0}" on the property:"{1}" of type:"{2}" is not a valid language-independent type name.</summary>
+        </member>
+        <member name="P:System.SR.InvalidRegion">
+            <summary>The region directive '{0}' contains invalid characters.  RegionText cannot contain any new line characters.</summary>
+        </member>
+        <member name="P:System.SR.InvalidPathCharsInChecksum">
+            <summary>The CodeChecksumPragma file name '{0}' contains invalid path characters.</summary>
+        </member>
+        <member name="P:System.SR.ExecTimeout">
+            <summary>Timed out waiting for a program to execute. The command being executed was {0}.</summary>
+        </member>
+        <member name="P:System.SR.Provider_does_not_support_options">
+            <summary>This CodeDomProvider type does not have a constructor that takes providerOptions - "{0}".</summary>
+        </member>
+        <member name="P:System.SR.InvalidLanguageIdentifier">
+            <summary>The identifier:"{0}" on the property:"{1}" of type:"{2}" is not a valid language-independent identifier name. Check to see if CodeGenerator.IsValidLanguageIndependentIdentifier allows the identifier name.</summary>
+        </member>
+        <member name="P:System.SR.toStringUnknown">
+            <summary>{unknown}</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line1">
+            <summary>auto-generated&gt;</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line2">
+            <summary>This code was generated by a tool.</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line4">
+            <summary>Changes to this file may cause incorrect behavior and will be lost if</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line5">
+            <summary>the code is regenerated.</summary>
+        </member>
+    </members>
+</doc>
diff --git a/packages/System.CodeDom.6.0.0/lib/netstandard2.0/System.CodeDom.xml b/packages/System.CodeDom.6.0.0/lib/netstandard2.0/System.CodeDom.xml
new file mode 100644
index 0000000..ddee2ed
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/lib/netstandard2.0/System.CodeDom.xml
@@ -0,0 +1,160 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>System.CodeDom</name>
+    </assembly>
+    <members>
+        <member name="P:Microsoft.VisualBasic.VBCodeGenerator.IsCurrentModule">
+            <summary>Tells whether or not the current class should be generated as a module</summary>
+        </member>
+        <member name="P:System.CodeDom.Compiler.CompilerParameters.CoreAssemblyFileName">
+            <summary>
+            The "core" or "standard" assembly that contains basic types such as <code>Object</code>, <code>Int32</code> and the like
+            that is to be used for the compilation.<br />
+            If the value of this property is an empty string (or <code>null</code>), the default core assembly will be used by the
+            compiler (depending on the compiler version this may be <code>mscorlib.dll</code> or <code>System.Runtime.dll</code> in
+            a Framework or reference assembly directory).<br />
+            If the value of this property is not empty, CodeDom will emit compiler options to not reference <em>any</em> assemblies
+            implicitly during compilation. It will also explicitly reference the assembly file specified in this property.<br />
+            For compilers that only implicitly reference the "core" or "standard" assembly by default, this option can be used on its own.
+            For compilers that implicitly reference more assemblies on top of the "core" / "standard" assembly, using this option may require
+            specifying additional entries in the <code>System.CodeDom.Compiler.<bold>ReferencedAssemblies</bold></code> collection.<br />
+            Note: An <code>ICodeCompiler</code> / <code>CoodeDomProvider</code> implementation may choose to ignore this property.
+            </summary>
+        </member>
+        <member name="T:System.CSharpHelpers">
+            <devdoc>
+               <para>Provides a base class for code generators.</para>
+            </devdoc>
+        </member>
+        <member name="M:System.CSharpHelpers.IsValidLanguageIndependentIdentifier(System.String)">
+            <devdoc>
+               <para>
+                  Gets a value indicating whether the specified value is a valid language
+                  independent identifier.
+               </para>
+            </devdoc>
+        </member>
+        <member name="P:System.SR.CodeDomProvider_NotDefined">
+            <summary>There is no CodeDom provider defined for the language.</summary>
+        </member>
+        <member name="P:System.SR.NotSupported_CodeDomAPI">
+            <summary>This CodeDomProvider does not support this method.</summary>
+        </member>
+        <member name="P:System.SR.CodeGenOutputWriter">
+            <summary>The output writer for code generation and the writer supplied don't match and cannot be used. This is generally caused by a bad implementation of a CodeGenerator derived class.</summary>
+        </member>
+        <member name="P:System.SR.CodeGenReentrance">
+            <summary>This code generation API cannot be called while the generator is being used to generate something else.</summary>
+        </member>
+        <member name="P:System.SR.InvalidElementType">
+            <summary>Element type {0} is not supported.</summary>
+        </member>
+        <member name="P:System.SR.Argument_NullComment">
+            <summary>The 'Comment' property of the CodeCommentStatement '{0}' cannot be null.</summary>
+        </member>
+        <member name="P:System.SR.InvalidPrimitiveType">
+            <summary>Invalid Primitive Type: {0}. Consider using CodeObjectCreateExpression.</summary>
+        </member>
+        <member name="P:System.SR.InvalidIdentifier">
+            <summary>Identifier '{0}' is not valid.</summary>
+        </member>
+        <member name="P:System.SR.ArityDoesntMatch">
+            <summary>The total arity specified in '{0}' does not match the number of TypeArguments supplied.  There were '{1}' TypeArguments supplied.</summary>
+        </member>
+        <member name="P:System.SR.InvalidNullEmptyArgument">
+            <summary>Argument {0} cannot be null or zero-length.</summary>
+        </member>
+        <member name="P:System.SR.DuplicateFileName">
+            <summary>The file name '{0}' was already in the collection.</summary>
+        </member>
+        <member name="P:System.SR.InvalidTypeName">
+            <summary>The type name:"{0}" on the property:"{1}" of type:"{2}" is not a valid language-independent type name.</summary>
+        </member>
+        <member name="P:System.SR.InvalidRegion">
+            <summary>The region directive '{0}' contains invalid characters.  RegionText cannot contain any new line characters.</summary>
+        </member>
+        <member name="P:System.SR.InvalidPathCharsInChecksum">
+            <summary>The CodeChecksumPragma file name '{0}' contains invalid path characters.</summary>
+        </member>
+        <member name="P:System.SR.ExecTimeout">
+            <summary>Timed out waiting for a program to execute. The command being executed was {0}.</summary>
+        </member>
+        <member name="P:System.SR.Provider_does_not_support_options">
+            <summary>This CodeDomProvider type does not have a constructor that takes providerOptions - "{0}".</summary>
+        </member>
+        <member name="P:System.SR.InvalidLanguageIdentifier">
+            <summary>The identifier:"{0}" on the property:"{1}" of type:"{2}" is not a valid language-independent identifier name. Check to see if CodeGenerator.IsValidLanguageIndependentIdentifier allows the identifier name.</summary>
+        </member>
+        <member name="P:System.SR.toStringUnknown">
+            <summary>{unknown}</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line1">
+            <summary>auto-generated&gt;</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line2">
+            <summary>This code was generated by a tool.</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line4">
+            <summary>Changes to this file may cause incorrect behavior and will be lost if</summary>
+        </member>
+        <member name="P:System.SR.AutoGen_Comment_Line5">
+            <summary>the code is regenerated.</summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.OSPlatformAttribute">
+            <summary>
+            Base type for all platform-specific API attributes.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.TargetPlatformAttribute">
+            <summary>
+            Records the platform that the project targeted.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformAttribute">
+             <summary>
+             Records the operating system (and minimum version) that supports an API. Multiple attributes can be
+             applied to indicate support on multiple operating systems.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformAttribute" />
+             or use guards to prevent calls to APIs on unsupported operating systems.
+            
+             A given platform should only be specified once.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformAttribute">
+            <summary>
+            Marks APIs that were removed in a given operating system version.
+            </summary>
+            <remarks>
+            Primarily used by OS bindings to indicate APIs that are only available in
+            earlier versions.
+            </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates a custom guard field, property or method with a supported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple supported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that field, property or method in a conditional or assert statements in order to safely call platform specific APIs.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates the custom guard field, property or method with an unsupported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple unsupported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that  field, property or method in a conditional or assert statements as a guard to safely call APIs unsupported on those platforms.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+    </members>
+</doc>
diff --git a/packages/System.CodeDom.6.0.0/useSharedDesignerContext.txt b/packages/System.CodeDom.6.0.0/useSharedDesignerContext.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/System.CodeDom.6.0.0/useSharedDesignerContext.txt
diff --git a/packages/System.Management.6.0.0/.signature.p7s b/packages/System.Management.6.0.0/.signature.p7s
new file mode 100644
index 0000000..3f16b44
--- /dev/null
+++ b/packages/System.Management.6.0.0/.signature.p7s
Binary files differ
diff --git a/packages/System.Management.6.0.0/Icon.png b/packages/System.Management.6.0.0/Icon.png
new file mode 100644
index 0000000..a0f1fdb
--- /dev/null
+++ b/packages/System.Management.6.0.0/Icon.png
Binary files differ
diff --git a/packages/System.Management.6.0.0/LICENSE.TXT b/packages/System.Management.6.0.0/LICENSE.TXT
new file mode 100644
index 0000000..984713a
--- /dev/null
+++ b/packages/System.Management.6.0.0/LICENSE.TXT
@@ -0,0 +1,23 @@
+The MIT License (MIT)
+
+Copyright (c) .NET Foundation and Contributors
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/packages/System.Management.6.0.0/System.Management.6.0.0.nupkg b/packages/System.Management.6.0.0/System.Management.6.0.0.nupkg
new file mode 100644
index 0000000..8ef502f
--- /dev/null
+++ b/packages/System.Management.6.0.0/System.Management.6.0.0.nupkg
Binary files differ
diff --git a/packages/System.Management.6.0.0/THIRD-PARTY-NOTICES.TXT b/packages/System.Management.6.0.0/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 0000000..89c59b2
--- /dev/null
+++ b/packages/System.Management.6.0.0/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,939 @@
+.NET Runtime uses third-party libraries or other resources that may be
+distributed under licenses different than the .NET Runtime software.
+
+In the event that we accidentally failed to list a required notice, please
+bring it to our attention. Post an issue or email us:
+
+           dotnet@microsoft.com
+
+The attached notices are provided for information only.
+
+License notice for ASP.NET
+-------------------------------
+
+Copyright (c) .NET Foundation. All rights reserved.
+Licensed under the Apache License, Version 2.0.
+
+Available at
+https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt
+
+License notice for Slicing-by-8
+-------------------------------
+
+http://sourceforge.net/projects/slicing-by-8/
+
+Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+
+This software program is licensed subject to the BSD License,  available at
+http://www.opensource.org/licenses/bsd-license.html.
+
+
+License notice for Unicode data
+-------------------------------
+
+https://www.unicode.org/license.html
+
+Copyright 漏 1991-2020 Unicode, Inc. All rights reserved.
+Distributed under the Terms of Use in https://www.unicode.org/copyright.html.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Unicode data files and any associated documentation
+(the "Data Files") or Unicode software and any associated documentation
+(the "Software") to deal in the Data Files or Software
+without restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, and/or sell copies of
+the Data Files or Software, and to permit persons to whom the Data Files
+or Software are furnished to do so, provided that either
+(a) this copyright and permission notice appear with all copies
+of the Data Files or Software, or
+(b) this copyright and permission notice appear in associated
+Documentation.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT OF THIRD PARTY RIGHTS.
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
+NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
+DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THE DATA FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder
+shall not be used in advertising or otherwise to promote the sale,
+use or other dealings in these Data Files or Software without prior
+written authorization of the copyright holder.
+
+License notice for Zlib
+-----------------------
+
+https://github.com/madler/zlib
+http://zlib.net/zlib_license.html
+
+/* zlib.h -- interface of the 'zlib' general purpose compression library
+  version 1.2.11, January 15th, 2017
+
+  Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  Jean-loup Gailly        Mark Adler
+  jloup@gzip.org          madler@alumni.caltech.edu
+
+*/
+
+License notice for Mono
+-------------------------------
+
+http://www.mono-project.com/docs/about-mono/
+
+Copyright (c) .NET Foundation Contributors
+
+MIT License
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software  and associated documentation files (the Software), to deal
+in the Software without restriction,  including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense,  and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so,  subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for International Organization for Standardization
+-----------------------------------------------------------------
+
+Portions (C) International Organization for Standardization 1986:
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+
+License notice for Intel
+------------------------
+
+"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+this list of conditions and the following disclaimer in the documentation
+and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Xamarin and Novell
+-------------------------------------
+
+Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Copyright (c) 2011 Novell, Inc (http://www.novell.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Third party notice for W3C
+--------------------------
+
+"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE
+Status: This license takes effect 13 May, 2015.
+This work is being provided by the copyright holders under the following license.
+License
+By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
+Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications:
+The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
+Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included.
+Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright 漏 [YEAR] W3C庐 (MIT, ERCIM, Keio, Beihang)."
+Disclaimers
+THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
+The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders."
+
+License notice for Bit Twiddling Hacks
+--------------------------------------
+
+Bit Twiddling Hacks
+
+By Sean Eron Anderson
+seander@cs.stanford.edu
+
+Individually, the code snippets here are in the public domain (unless otherwise
+noted) 鈥� feel free to use them however you please. The aggregate collection and
+descriptions are 漏 1997-2005 Sean Eron Anderson. The code and descriptions are
+distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and
+without even the implied warranty of merchantability or fitness for a particular
+purpose.
+
+License notice for Brotli
+--------------------------------------
+
+Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+compress_fragment.c:
+Copyright (c) 2011, Google Inc.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+    * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+    * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+decode_fuzzer.c:
+Copyright (c) 2015 The Chromium Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+   * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+   * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+   * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+
+License notice for Json.NET
+-------------------------------
+
+https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md
+
+The MIT License (MIT)
+
+Copyright (c) 2007 James Newton-King
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized base64 encoding / decoding
+--------------------------------------------------------
+
+Copyright (c) 2005-2007, Nick Galbreath
+Copyright (c) 2013-2017, Alfred Klomp
+Copyright (c) 2015-2017, Wojciech Mula
+Copyright (c) 2016-2017, Matthieu Darbois
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+- Redistributions of source code must retain the above copyright notice,
+  this list of conditions and the following disclaimer.
+
+- Redistributions in binary form must reproduce the above copyright
+  notice, this list of conditions and the following disclaimer in the
+  documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for RFC 3492
+---------------------------
+
+The punycode implementation is based on the sample code in RFC 3492
+
+Copyright (C) The Internet Society (2003).  All Rights Reserved.
+
+This document and translations of it may be copied and furnished to
+others, and derivative works that comment on or otherwise explain it
+or assist in its implementation may be prepared, copied, published
+and distributed, in whole or in part, without restriction of any
+kind, provided that the above copyright notice and this paragraph are
+included on all such copies and derivative works.  However, this
+document itself may not be modified in any way, such as by removing
+the copyright notice or references to the Internet Society or other
+Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for
+copyrights defined in the Internet Standards process must be
+followed, or as required to translate it into languages other than
+English.
+
+The limited permissions granted above are perpetual and will not be
+revoked by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an
+"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
+TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
+BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
+HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+
+License notice for Algorithm from Internet Draft document "UUIDs and GUIDs"
+---------------------------------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, or Digital Equipment Corporation be used in advertising
+or publicity pertaining to distribution of the software without
+specific, written prior permission.  Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital Equipment
+Corporation makes any representations about the suitability of
+this software for any purpose.
+
+Copyright(C) The Internet Society 1997. All Rights Reserved.
+
+This document and translations of it may be copied and furnished to others,
+and derivative works that comment on or otherwise explain it or assist in
+its implementation may be prepared, copied, published and distributed, in
+whole or in part, without restriction of any kind, provided that the above
+copyright notice and this paragraph are included on all such copies and
+derivative works.However, this document itself may not be modified in any
+way, such as by removing the copyright notice or references to the Internet
+Society or other Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for copyrights
+defined in the Internet Standards process must be followed, or as required
+to translate it into languages other than English.
+
+The limited permissions granted above are perpetual and will not be revoked
+by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an "AS IS"
+basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE
+DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
+ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY
+RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
+PARTICULAR PURPOSE.
+
+License notice for Algorithm from RFC 4122 -
+A Universally Unique IDentifier (UUID) URN Namespace
+----------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+Copyright (c) 1998 Microsoft.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, Microsoft, or Digital Equipment Corporation be used in
+advertising or publicity pertaining to distribution of the software
+without specific, written prior permission. Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital
+Equipment Corporation makes any representations about the
+suitability of this software for any purpose."
+
+License notice for The LLVM Compiler Infrastructure
+---------------------------------------------------
+
+Developed by:
+
+    LLVM Team
+
+    University of Illinois at Urbana-Champaign
+
+    http://llvm.org
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal with
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimers.
+
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimers in the
+      documentation and/or other materials provided with the distribution.
+
+    * Neither the names of the LLVM Team, University of Illinois at
+      Urbana-Champaign, nor the names of its contributors may be used to
+      endorse or promote products derived from this Software without specific
+      prior written permission.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+SOFTWARE.
+
+License notice for Bob Jenkins
+------------------------------
+
+By Bob Jenkins, 1996.  bob_jenkins@burtleburtle.net.  You may use this
+code any way you wish, private, educational, or commercial.  It's free.
+
+License notice for Greg Parker
+------------------------------
+
+Greg Parker     gparker@cs.stanford.edu     December 2000
+This code is in the public domain and may be copied or modified without
+permission.
+
+License notice for libunwind based code
+----------------------------------------
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for Printing Floating-Point Numbers (Dragon4)
+------------------------------------------------------------
+
+/******************************************************************************
+  Copyright (c) 2014 Ryan Juckett
+  http://www.ryanjuckett.com/
+
+  This software is provided 'as-is', without any express or implied
+  warranty. In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+
+  3. This notice may not be removed or altered from any source
+     distribution.
+******************************************************************************/
+
+License notice for Printing Floating-point Numbers (Grisu3)
+-----------------------------------------------------------
+
+Copyright 2012 the V8 project authors. All rights reserved.
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above
+      copyright notice, this list of conditions and the following
+      disclaimer in the documentation and/or other materials provided
+      with the distribution.
+    * Neither the name of Google Inc. nor the names of its
+      contributors may be used to endorse or promote products derived
+      from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for xxHash
+-------------------------
+
+xxHash Library
+Copyright (c) 2012-2014, Yann Collet
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Berkeley SoftFloat Release 3e
+------------------------------------------------
+
+https://github.com/ucb-bar/berkeley-softfloat-3
+https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt
+
+License for Berkeley SoftFloat Release 3e
+
+John R. Hauser
+2018 January 20
+
+The following applies to the whole of SoftFloat Release 3e as well as to
+each source file individually.
+
+Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the
+University of California.  All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+    this list of conditions, and the following disclaimer.
+
+ 2. Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions, and the following disclaimer in the
+    documentation and/or other materials provided with the distribution.
+
+ 3. Neither the name of the University nor the names of its contributors
+    may be used to endorse or promote products derived from this software
+    without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE
+DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for xoshiro RNGs
+--------------------------------
+
+Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org)
+
+To the extent possible under law, the author has dedicated all copyright
+and related and neighboring rights to this software to the public domain
+worldwide. This software is distributed without any warranty.
+
+See <http://creativecommons.org/publicdomain/zero/1.0/>.
+
+License for fastmod (https://github.com/lemire/fastmod) and ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data)
+--------------------------------------
+
+   Copyright 2018 Daniel Lemire
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+
+License notice for The C++ REST SDK
+-----------------------------------
+
+C++ REST SDK
+
+The MIT License (MIT)
+
+Copyright (c) Microsoft Corporation
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for MessagePack-CSharp
+-------------------------------------
+
+MessagePack for C#
+
+MIT License
+
+Copyright (c) 2017 Yoshifumi Kawai
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for lz4net
+-------------------------------------
+
+lz4net
+
+Copyright (c) 2013-2017, Milosz Krajewski
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+
+Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Nerdbank.Streams
+-----------------------------------
+
+The MIT License (MIT)
+
+Copyright (c) Andrew Arnott
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for RapidJSON
+----------------------------
+
+Tencent is pleased to support the open source community by making RapidJSON available.
+
+Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved.
+
+Licensed under the MIT License (the "License"); you may not use this file except
+in compliance with the License. You may obtain a copy of the License at
+
+http://opensource.org/licenses/MIT
+
+Unless required by applicable law or agreed to in writing, software distributed
+under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, either express or implied. See the License for the
+specific language governing permissions and limitations under the License.
+
+License notice for DirectX Math Library
+---------------------------------------
+
+https://github.com/microsoft/DirectXMath/blob/master/LICENSE
+
+                               The MIT License (MIT)
+
+Copyright (c) 2011-2020 Microsoft Corp
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this
+software and associated documentation files (the "Software"), to deal in the Software
+without restriction, including without limitation the rights to use, copy, modify,
+merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be included in all copies
+or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
+INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
+PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
+OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for ldap4net
+---------------------------
+
+The MIT License (MIT)
+
+Copyright (c) 2018 Alexander Chermyanin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized sorting code
+------------------------------------------
+
+MIT License
+
+Copyright (c) 2020 Dan Shechter
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for musl
+-----------------------
+
+musl as a whole is licensed under the following standard MIT license:
+
+Copyright 漏 2005-2020 Rich Felker, et al.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
+License notice for "Faster Unsigned Division by Constants"
+------------------------------
+
+Reference implementations of computing and using the "magic number" approach to dividing
+by constants, including codegen instructions. The unsigned division incorporates the
+"round down" optimization per ridiculous_fish.
+
+This is free and unencumbered software. Any copyright is dedicated to the Public Domain.
+
+
+License notice for mimalloc
+-----------------------------------
+
+MIT License
+
+Copyright (c) 2019 Microsoft Corporation, Daan Leijen
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/packages/System.Management.6.0.0/buildTransitive/netcoreapp2.0/System.Management.targets b/packages/System.Management.6.0.0/buildTransitive/netcoreapp2.0/System.Management.targets
new file mode 100644
index 0000000..dcbe000
--- /dev/null
+++ b/packages/System.Management.6.0.0/buildTransitive/netcoreapp2.0/System.Management.targets
@@ -0,0 +1,6 @@
+<Project InitialTargets="NETStandardCompatError_System_Management_netcoreapp3_1">
+  <Target Name="NETStandardCompatError_System_Management_netcoreapp3_1"
+          Condition="'$(SuppressTfmSupportBuildWarnings)' == ''">
+    <Error Text="System.Management doesn't support $(TargetFramework). Consider updating your TargetFramework to netcoreapp3.1 or later." />
+  </Target>
+</Project>
diff --git a/packages/System.Management.6.0.0/buildTransitive/netcoreapp3.1/_._ b/packages/System.Management.6.0.0/buildTransitive/netcoreapp3.1/_._
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/System.Management.6.0.0/buildTransitive/netcoreapp3.1/_._
diff --git a/packages/System.Management.6.0.0/lib/net461/_._ b/packages/System.Management.6.0.0/lib/net461/_._
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/System.Management.6.0.0/lib/net461/_._
diff --git a/packages/System.Management.6.0.0/lib/net6.0/System.Management.xml b/packages/System.Management.6.0.0/lib/net6.0/System.Management.xml
new file mode 100644
index 0000000..2119ba1
--- /dev/null
+++ b/packages/System.Management.6.0.0/lib/net6.0/System.Management.xml
@@ -0,0 +1,245 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>System.Management</name>
+    </assembly>
+    <members>
+        <member name="P:System.SR.InvalidQuery">
+            <summary>The Query string supplied was invalid or improperly formed</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryDuplicatedToken">
+            <summary>The Query string supplied was invalid because it contains a duplicate token</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryNullToken">
+            <summary>The Query string supplied was invalid because a supplied token was null</summary>
+        </member>
+        <member name="P:System.SR.WorkerThreadWakeupFailed">
+            <summary>Unable to wakeup the worker thread to create an object in MTA</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotInitializedException">
+            <summary>ClassName not initialized.</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotFoundException">
+            <summary>Class name does not match.</summary>
+        </member>
+        <member name="P:System.SR.CommentAttributeProperty">
+            <summary>Every property added to the class for WMI property has attributes set to define its behavior in Visual Studio designer and also to define a TypeConverter to be used.</summary>
+        </member>
+        <member name="P:System.SR.CommentAutoCommitProperty">
+            <summary>Property to show the commit behavior for the WMI object. If true, WMI object will be automatically saved after each property modification.(ie. Put() is called after modification of a property).</summary>
+        </member>
+        <member name="P:System.SR.CommentClassBegin">
+            <summary>An Early Bound class generated for the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentConstructors">
+            <summary>Below are different overloads of constructors to initialize an instance of the class with a WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedClass">
+            <summary>Private property to hold the name of WMI class which created this class.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedWmiNamespace">
+            <summary>Private property to hold the WMI namespace in which the class resides.</summary>
+        </member>
+        <member name="P:System.SR.CommentCurrentObject">
+            <summary>The current WMI object used</summary>
+        </member>
+        <member name="P:System.SR.CommentDateConversionFunction">
+            <summary>Datetime conversion functions ToDateTime and ToDmtfDateTime are added to the class to convert DMTF datetime to System.DateTime and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentEmbeddedObject">
+            <summary>Private variable to hold the embedded property representing the instance.</summary>
+        </member>
+        <member name="P:System.SR.CommentEnumeratorImplementation">
+            <summary>Enumerator implementation for enumerating instances of the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentFlagForEmbedded">
+            <summary>Flag to indicate if the instance is an embedded object.</summary>
+        </member>
+        <member name="P:System.SR.CommentGetInstances">
+            <summary>Different overloads of GetInstances() help in enumerating instances of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentIsPropNull">
+            <summary>Functions Is&lt;PropertyName&gt;Null() are used to check if a property is NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundObject">
+            <summary>Underlying lateBound WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundProperty">
+            <summary>Property returning the underlying lateBound object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementPath">
+            <summary>The ManagementPath of the underlying WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementScope">
+            <summary>ManagementScope of the object.</summary>
+        </member>
+        <member name="P:System.SR.CommentOriginNamespace">
+            <summary>Property returns the namespace of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrivateAutoCommit">
+            <summary>Member variable to store the 'automatic commit' behavior for the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrototypeConverter">
+            <summary>TypeConverter to handle null values for ValueType properties</summary>
+        </member>
+        <member name="P:System.SR.CommentResetProperty">
+            <summary>Functions Reset&lt;PropertyName&gt; are added for Nullable Read/Write properties. These functions are used by VS designer in property browser to set a property to NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentShouldSerialize">
+            <summary>Functions ShouldSerialize&lt;PropertyName&gt; are functions used by VS property browser to check if a particular property has to be serialized. These functions are added for all ValueType properties ( properties of type Int32, BOOL etc.. which cannot be set to n ...</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticManagementScope">
+            <summary>Private member variable to hold the ManagementScope which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticScopeProperty">
+            <summary>Public static scope property which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemObject">
+            <summary>Property pointing to an embedded object to get System properties of the WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemPropertiesClass">
+            <summary>Embedded class to represent WMI system Properties.</summary>
+        </member>
+        <member name="P:System.SR.CommentTimeSpanConvertionFunction">
+            <summary>Time interval functions  ToTimeSpan and ToDmtfTimeInterval are added to the class to convert DMTF Time Interval to  System.TimeSpan and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDateTime">
+            <summary>Converts a given datetime in DMTF format to System.DateTime object.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfDateTime">
+            <summary>Converts a given System.DateTime object to DMTF datetime format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfTimeInterval">
+            <summary>Converts a given System.TimeSpan object to DMTF Time interval format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToTimeSpan">
+            <summary>Converts a given time interval in DMTF format to System.TimeSpan object.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment">
+            <summary>If the embedded property is strongly typed then, to strongly type the property to the type of</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment2">
+            <summary>the embedded object, you have to do the following things.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment3">
+            <summary>\t1. Generate Managed class for the WMI class of the embedded property. This can be done with MgmtClassGen.exe tool or from Server Explorer.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment4">
+            <summary>\t2. Include the namespace of the generated class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment5">
+            <summary>\t3. Change the property get/set functions so as return the instance of the Managed class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment6">
+            <summary>Below is a sample code.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment7">
+            <summary>VB Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment8">
+            <summary>C# Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment1">
+            <summary>public &lt;ManagedClassName of Embedded property&gt; &lt;PropertyName&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment10">
+            <summary>\t\tIf (AutoCommitProp == true &amp;&amp; isEmbedded == false)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment11">
+            <summary>\t\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment12">
+            <summary>\t\t\tPrivateLateBoundObject.Put();</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment13">
+            <summary>\t\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment14">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment15">
+            <summary>}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment2">
+            <summary>{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment3">
+            <summary>\tget</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment4">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment5">
+            <summary>\t\treturn new &lt;ManagedClassName of Embedded property&gt;((System.Management.ManagementBaseObject)(curObj["&lt;PropertyName&gt;"]));</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment6">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment7">
+            <summary>\tset</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment8">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment9">
+            <summary>\t\tcurObj["&lt;PropertyName&gt;"] = value.LateBoundObject;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment1">
+            <summary>Public Property &lt;PropertyName&gt;() As &lt;ManagedClassName of Embedded property&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment10">
+            <summary>\tEnd Set</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment2">
+            <summary>\tGet</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment3">
+            <summary>\t\tReturn New &lt;ManagedClassName of Embedded Property&gt;(CType(curObj("&lt;PropertyName&gt;"),System.Management.ManagementBaseObject))</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment4">
+            <summary>\tEnd Get</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment5">
+            <summary>\tSet(ByVal Value As &lt;ManagedClassName of Embedded property&gt;)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment6">
+            <summary>\t\tcurObj("EObject")=Value.LateBoundObject</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment7">
+            <summary>\t\tIf (AutoCommitProp = True And isEmbedded = False) Then</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment8">
+            <summary>\t\t\tPrivateLateBoundObject.Put()</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment9">
+            <summary>\t\tEnd If</summary>
+        </member>
+        <member name="P:System.SR.EmptyFilePathException">
+            <summary>FilePath cannot be empty.</summary>
+        </member>
+        <member name="P:System.SR.NamespaceNotInitializedException">
+            <summary>Namespace not initialized.</summary>
+        </member>
+        <member name="P:System.SR.NullFilePathException">
+            <summary>FilePath or code generator object is null.</summary>
+        </member>
+        <member name="P:System.SR.UnableToCreateCodeGeneratorException">
+            <summary>Unable to create code generator for '{0}'</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_SystemManagement">
+            <summary>System.Management currently is only supported for Windows desktop applications.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FullFrameworkRequired">
+            <summary>Could not find an installation of .NET Framework v4.0.30319. System.Management requires native modules from the .NET Framework to operate.</summary>
+        </member>
+        <member name="P:System.SR.LoadLibraryFailed">
+            <summary>Failed to load required native library '{0}'.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FrameworkUpdatedRequired">
+            <summary>The native library '{0}' does not have all required functions. Please, update the .NET Framework.</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryTokenExpected">
+            <summary>The Query string supplied was invalid or improperly formed. Token `{0}` is expected</summary>
+        </member>
+    </members>
+</doc>
diff --git a/packages/System.Management.6.0.0/lib/netcoreapp3.1/System.Management.xml b/packages/System.Management.6.0.0/lib/netcoreapp3.1/System.Management.xml
new file mode 100644
index 0000000..005e630
--- /dev/null
+++ b/packages/System.Management.6.0.0/lib/netcoreapp3.1/System.Management.xml
@@ -0,0 +1,300 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>System.Management</name>
+    </assembly>
+    <members>
+        <member name="P:System.SR.InvalidQuery">
+            <summary>The Query string supplied was invalid or improperly formed</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryDuplicatedToken">
+            <summary>The Query string supplied was invalid because it contains a duplicate token</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryNullToken">
+            <summary>The Query string supplied was invalid because a supplied token was null</summary>
+        </member>
+        <member name="P:System.SR.WorkerThreadWakeupFailed">
+            <summary>Unable to wakeup the worker thread to create an object in MTA</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotInitializedException">
+            <summary>ClassName not initialized.</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotFoundException">
+            <summary>Class name does not match.</summary>
+        </member>
+        <member name="P:System.SR.CommentAttributeProperty">
+            <summary>Every property added to the class for WMI property has attributes set to define its behavior in Visual Studio designer and also to define a TypeConverter to be used.</summary>
+        </member>
+        <member name="P:System.SR.CommentAutoCommitProperty">
+            <summary>Property to show the commit behavior for the WMI object. If true, WMI object will be automatically saved after each property modification.(ie. Put() is called after modification of a property).</summary>
+        </member>
+        <member name="P:System.SR.CommentClassBegin">
+            <summary>An Early Bound class generated for the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentConstructors">
+            <summary>Below are different overloads of constructors to initialize an instance of the class with a WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedClass">
+            <summary>Private property to hold the name of WMI class which created this class.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedWmiNamespace">
+            <summary>Private property to hold the WMI namespace in which the class resides.</summary>
+        </member>
+        <member name="P:System.SR.CommentCurrentObject">
+            <summary>The current WMI object used</summary>
+        </member>
+        <member name="P:System.SR.CommentDateConversionFunction">
+            <summary>Datetime conversion functions ToDateTime and ToDmtfDateTime are added to the class to convert DMTF datetime to System.DateTime and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentEmbeddedObject">
+            <summary>Private variable to hold the embedded property representing the instance.</summary>
+        </member>
+        <member name="P:System.SR.CommentEnumeratorImplementation">
+            <summary>Enumerator implementation for enumerating instances of the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentFlagForEmbedded">
+            <summary>Flag to indicate if the instance is an embedded object.</summary>
+        </member>
+        <member name="P:System.SR.CommentGetInstances">
+            <summary>Different overloads of GetInstances() help in enumerating instances of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentIsPropNull">
+            <summary>Functions Is&lt;PropertyName&gt;Null() are used to check if a property is NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundObject">
+            <summary>Underlying lateBound WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundProperty">
+            <summary>Property returning the underlying lateBound object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementPath">
+            <summary>The ManagementPath of the underlying WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementScope">
+            <summary>ManagementScope of the object.</summary>
+        </member>
+        <member name="P:System.SR.CommentOriginNamespace">
+            <summary>Property returns the namespace of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrivateAutoCommit">
+            <summary>Member variable to store the 'automatic commit' behavior for the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrototypeConverter">
+            <summary>TypeConverter to handle null values for ValueType properties</summary>
+        </member>
+        <member name="P:System.SR.CommentResetProperty">
+            <summary>Functions Reset&lt;PropertyName&gt; are added for Nullable Read/Write properties. These functions are used by VS designer in property browser to set a property to NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentShouldSerialize">
+            <summary>Functions ShouldSerialize&lt;PropertyName&gt; are functions used by VS property browser to check if a particular property has to be serialized. These functions are added for all ValueType properties ( properties of type Int32, BOOL etc.. which cannot be set to n ...</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticManagementScope">
+            <summary>Private member variable to hold the ManagementScope which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticScopeProperty">
+            <summary>Public static scope property which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemObject">
+            <summary>Property pointing to an embedded object to get System properties of the WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemPropertiesClass">
+            <summary>Embedded class to represent WMI system Properties.</summary>
+        </member>
+        <member name="P:System.SR.CommentTimeSpanConvertionFunction">
+            <summary>Time interval functions  ToTimeSpan and ToDmtfTimeInterval are added to the class to convert DMTF Time Interval to  System.TimeSpan and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDateTime">
+            <summary>Converts a given datetime in DMTF format to System.DateTime object.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfDateTime">
+            <summary>Converts a given System.DateTime object to DMTF datetime format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfTimeInterval">
+            <summary>Converts a given System.TimeSpan object to DMTF Time interval format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToTimeSpan">
+            <summary>Converts a given time interval in DMTF format to System.TimeSpan object.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment">
+            <summary>If the embedded property is strongly typed then, to strongly type the property to the type of</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment2">
+            <summary>the embedded object, you have to do the following things.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment3">
+            <summary>\t1. Generate Managed class for the WMI class of the embedded property. This can be done with MgmtClassGen.exe tool or from Server Explorer.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment4">
+            <summary>\t2. Include the namespace of the generated class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment5">
+            <summary>\t3. Change the property get/set functions so as return the instance of the Managed class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment6">
+            <summary>Below is a sample code.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment7">
+            <summary>VB Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment8">
+            <summary>C# Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment1">
+            <summary>public &lt;ManagedClassName of Embedded property&gt; &lt;PropertyName&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment10">
+            <summary>\t\tIf (AutoCommitProp == true &amp;&amp; isEmbedded == false)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment11">
+            <summary>\t\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment12">
+            <summary>\t\t\tPrivateLateBoundObject.Put();</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment13">
+            <summary>\t\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment14">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment15">
+            <summary>}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment2">
+            <summary>{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment3">
+            <summary>\tget</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment4">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment5">
+            <summary>\t\treturn new &lt;ManagedClassName of Embedded property&gt;((System.Management.ManagementBaseObject)(curObj["&lt;PropertyName&gt;"]));</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment6">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment7">
+            <summary>\tset</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment8">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment9">
+            <summary>\t\tcurObj["&lt;PropertyName&gt;"] = value.LateBoundObject;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment1">
+            <summary>Public Property &lt;PropertyName&gt;() As &lt;ManagedClassName of Embedded property&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment10">
+            <summary>\tEnd Set</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment2">
+            <summary>\tGet</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment3">
+            <summary>\t\tReturn New &lt;ManagedClassName of Embedded Property&gt;(CType(curObj("&lt;PropertyName&gt;"),System.Management.ManagementBaseObject))</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment4">
+            <summary>\tEnd Get</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment5">
+            <summary>\tSet(ByVal Value As &lt;ManagedClassName of Embedded property&gt;)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment6">
+            <summary>\t\tcurObj("EObject")=Value.LateBoundObject</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment7">
+            <summary>\t\tIf (AutoCommitProp = True And isEmbedded = False) Then</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment8">
+            <summary>\t\t\tPrivateLateBoundObject.Put()</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment9">
+            <summary>\t\tEnd If</summary>
+        </member>
+        <member name="P:System.SR.EmptyFilePathException">
+            <summary>FilePath cannot be empty.</summary>
+        </member>
+        <member name="P:System.SR.NamespaceNotInitializedException">
+            <summary>Namespace not initialized.</summary>
+        </member>
+        <member name="P:System.SR.NullFilePathException">
+            <summary>FilePath or code generator object is null.</summary>
+        </member>
+        <member name="P:System.SR.UnableToCreateCodeGeneratorException">
+            <summary>Unable to create code generator for '{0}'</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_SystemManagement">
+            <summary>System.Management currently is only supported for Windows desktop applications.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FullFrameworkRequired">
+            <summary>Could not find an installation of .NET Framework v4.0.30319. System.Management requires native modules from the .NET Framework to operate.</summary>
+        </member>
+        <member name="P:System.SR.LoadLibraryFailed">
+            <summary>Failed to load required native library '{0}'.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FrameworkUpdatedRequired">
+            <summary>The native library '{0}' does not have all required functions. Please, update the .NET Framework.</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryTokenExpected">
+            <summary>The Query string supplied was invalid or improperly formed. Token `{0}` is expected</summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.OSPlatformAttribute">
+            <summary>
+            Base type for all platform-specific API attributes.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.TargetPlatformAttribute">
+            <summary>
+            Records the platform that the project targeted.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformAttribute">
+             <summary>
+             Records the operating system (and minimum version) that supports an API. Multiple attributes can be
+             applied to indicate support on multiple operating systems.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformAttribute" />
+             or use guards to prevent calls to APIs on unsupported operating systems.
+            
+             A given platform should only be specified once.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformAttribute">
+            <summary>
+            Marks APIs that were removed in a given operating system version.
+            </summary>
+            <remarks>
+            Primarily used by OS bindings to indicate APIs that are only available in
+            earlier versions.
+            </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates a custom guard field, property or method with a supported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple supported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that field, property or method in a conditional or assert statements in order to safely call platform specific APIs.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates the custom guard field, property or method with an unsupported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple unsupported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that  field, property or method in a conditional or assert statements as a guard to safely call APIs unsupported on those platforms.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+    </members>
+</doc>
diff --git a/packages/System.Management.6.0.0/lib/netstandard2.0/System.Management.xml b/packages/System.Management.6.0.0/lib/netstandard2.0/System.Management.xml
new file mode 100644
index 0000000..005e630
--- /dev/null
+++ b/packages/System.Management.6.0.0/lib/netstandard2.0/System.Management.xml
@@ -0,0 +1,300 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>System.Management</name>
+    </assembly>
+    <members>
+        <member name="P:System.SR.InvalidQuery">
+            <summary>The Query string supplied was invalid or improperly formed</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryDuplicatedToken">
+            <summary>The Query string supplied was invalid because it contains a duplicate token</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryNullToken">
+            <summary>The Query string supplied was invalid because a supplied token was null</summary>
+        </member>
+        <member name="P:System.SR.WorkerThreadWakeupFailed">
+            <summary>Unable to wakeup the worker thread to create an object in MTA</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotInitializedException">
+            <summary>ClassName not initialized.</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotFoundException">
+            <summary>Class name does not match.</summary>
+        </member>
+        <member name="P:System.SR.CommentAttributeProperty">
+            <summary>Every property added to the class for WMI property has attributes set to define its behavior in Visual Studio designer and also to define a TypeConverter to be used.</summary>
+        </member>
+        <member name="P:System.SR.CommentAutoCommitProperty">
+            <summary>Property to show the commit behavior for the WMI object. If true, WMI object will be automatically saved after each property modification.(ie. Put() is called after modification of a property).</summary>
+        </member>
+        <member name="P:System.SR.CommentClassBegin">
+            <summary>An Early Bound class generated for the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentConstructors">
+            <summary>Below are different overloads of constructors to initialize an instance of the class with a WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedClass">
+            <summary>Private property to hold the name of WMI class which created this class.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedWmiNamespace">
+            <summary>Private property to hold the WMI namespace in which the class resides.</summary>
+        </member>
+        <member name="P:System.SR.CommentCurrentObject">
+            <summary>The current WMI object used</summary>
+        </member>
+        <member name="P:System.SR.CommentDateConversionFunction">
+            <summary>Datetime conversion functions ToDateTime and ToDmtfDateTime are added to the class to convert DMTF datetime to System.DateTime and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentEmbeddedObject">
+            <summary>Private variable to hold the embedded property representing the instance.</summary>
+        </member>
+        <member name="P:System.SR.CommentEnumeratorImplementation">
+            <summary>Enumerator implementation for enumerating instances of the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentFlagForEmbedded">
+            <summary>Flag to indicate if the instance is an embedded object.</summary>
+        </member>
+        <member name="P:System.SR.CommentGetInstances">
+            <summary>Different overloads of GetInstances() help in enumerating instances of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentIsPropNull">
+            <summary>Functions Is&lt;PropertyName&gt;Null() are used to check if a property is NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundObject">
+            <summary>Underlying lateBound WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundProperty">
+            <summary>Property returning the underlying lateBound object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementPath">
+            <summary>The ManagementPath of the underlying WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementScope">
+            <summary>ManagementScope of the object.</summary>
+        </member>
+        <member name="P:System.SR.CommentOriginNamespace">
+            <summary>Property returns the namespace of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrivateAutoCommit">
+            <summary>Member variable to store the 'automatic commit' behavior for the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrototypeConverter">
+            <summary>TypeConverter to handle null values for ValueType properties</summary>
+        </member>
+        <member name="P:System.SR.CommentResetProperty">
+            <summary>Functions Reset&lt;PropertyName&gt; are added for Nullable Read/Write properties. These functions are used by VS designer in property browser to set a property to NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentShouldSerialize">
+            <summary>Functions ShouldSerialize&lt;PropertyName&gt; are functions used by VS property browser to check if a particular property has to be serialized. These functions are added for all ValueType properties ( properties of type Int32, BOOL etc.. which cannot be set to n ...</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticManagementScope">
+            <summary>Private member variable to hold the ManagementScope which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticScopeProperty">
+            <summary>Public static scope property which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemObject">
+            <summary>Property pointing to an embedded object to get System properties of the WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemPropertiesClass">
+            <summary>Embedded class to represent WMI system Properties.</summary>
+        </member>
+        <member name="P:System.SR.CommentTimeSpanConvertionFunction">
+            <summary>Time interval functions  ToTimeSpan and ToDmtfTimeInterval are added to the class to convert DMTF Time Interval to  System.TimeSpan and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDateTime">
+            <summary>Converts a given datetime in DMTF format to System.DateTime object.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfDateTime">
+            <summary>Converts a given System.DateTime object to DMTF datetime format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfTimeInterval">
+            <summary>Converts a given System.TimeSpan object to DMTF Time interval format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToTimeSpan">
+            <summary>Converts a given time interval in DMTF format to System.TimeSpan object.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment">
+            <summary>If the embedded property is strongly typed then, to strongly type the property to the type of</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment2">
+            <summary>the embedded object, you have to do the following things.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment3">
+            <summary>\t1. Generate Managed class for the WMI class of the embedded property. This can be done with MgmtClassGen.exe tool or from Server Explorer.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment4">
+            <summary>\t2. Include the namespace of the generated class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment5">
+            <summary>\t3. Change the property get/set functions so as return the instance of the Managed class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment6">
+            <summary>Below is a sample code.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment7">
+            <summary>VB Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment8">
+            <summary>C# Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment1">
+            <summary>public &lt;ManagedClassName of Embedded property&gt; &lt;PropertyName&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment10">
+            <summary>\t\tIf (AutoCommitProp == true &amp;&amp; isEmbedded == false)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment11">
+            <summary>\t\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment12">
+            <summary>\t\t\tPrivateLateBoundObject.Put();</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment13">
+            <summary>\t\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment14">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment15">
+            <summary>}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment2">
+            <summary>{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment3">
+            <summary>\tget</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment4">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment5">
+            <summary>\t\treturn new &lt;ManagedClassName of Embedded property&gt;((System.Management.ManagementBaseObject)(curObj["&lt;PropertyName&gt;"]));</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment6">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment7">
+            <summary>\tset</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment8">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment9">
+            <summary>\t\tcurObj["&lt;PropertyName&gt;"] = value.LateBoundObject;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment1">
+            <summary>Public Property &lt;PropertyName&gt;() As &lt;ManagedClassName of Embedded property&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment10">
+            <summary>\tEnd Set</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment2">
+            <summary>\tGet</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment3">
+            <summary>\t\tReturn New &lt;ManagedClassName of Embedded Property&gt;(CType(curObj("&lt;PropertyName&gt;"),System.Management.ManagementBaseObject))</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment4">
+            <summary>\tEnd Get</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment5">
+            <summary>\tSet(ByVal Value As &lt;ManagedClassName of Embedded property&gt;)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment6">
+            <summary>\t\tcurObj("EObject")=Value.LateBoundObject</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment7">
+            <summary>\t\tIf (AutoCommitProp = True And isEmbedded = False) Then</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment8">
+            <summary>\t\t\tPrivateLateBoundObject.Put()</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment9">
+            <summary>\t\tEnd If</summary>
+        </member>
+        <member name="P:System.SR.EmptyFilePathException">
+            <summary>FilePath cannot be empty.</summary>
+        </member>
+        <member name="P:System.SR.NamespaceNotInitializedException">
+            <summary>Namespace not initialized.</summary>
+        </member>
+        <member name="P:System.SR.NullFilePathException">
+            <summary>FilePath or code generator object is null.</summary>
+        </member>
+        <member name="P:System.SR.UnableToCreateCodeGeneratorException">
+            <summary>Unable to create code generator for '{0}'</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_SystemManagement">
+            <summary>System.Management currently is only supported for Windows desktop applications.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FullFrameworkRequired">
+            <summary>Could not find an installation of .NET Framework v4.0.30319. System.Management requires native modules from the .NET Framework to operate.</summary>
+        </member>
+        <member name="P:System.SR.LoadLibraryFailed">
+            <summary>Failed to load required native library '{0}'.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FrameworkUpdatedRequired">
+            <summary>The native library '{0}' does not have all required functions. Please, update the .NET Framework.</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryTokenExpected">
+            <summary>The Query string supplied was invalid or improperly formed. Token `{0}` is expected</summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.OSPlatformAttribute">
+            <summary>
+            Base type for all platform-specific API attributes.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.TargetPlatformAttribute">
+            <summary>
+            Records the platform that the project targeted.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformAttribute">
+             <summary>
+             Records the operating system (and minimum version) that supports an API. Multiple attributes can be
+             applied to indicate support on multiple operating systems.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformAttribute" />
+             or use guards to prevent calls to APIs on unsupported operating systems.
+            
+             A given platform should only be specified once.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformAttribute">
+            <summary>
+            Marks APIs that were removed in a given operating system version.
+            </summary>
+            <remarks>
+            Primarily used by OS bindings to indicate APIs that are only available in
+            earlier versions.
+            </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates a custom guard field, property or method with a supported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple supported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that field, property or method in a conditional or assert statements in order to safely call platform specific APIs.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates the custom guard field, property or method with an unsupported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple unsupported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that  field, property or method in a conditional or assert statements as a guard to safely call APIs unsupported on those platforms.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+    </members>
+</doc>
diff --git a/packages/System.Management.6.0.0/runtimes/win/lib/net6.0/System.Management.xml b/packages/System.Management.6.0.0/runtimes/win/lib/net6.0/System.Management.xml
new file mode 100644
index 0000000..69fd654
--- /dev/null
+++ b/packages/System.Management.6.0.0/runtimes/win/lib/net6.0/System.Management.xml
@@ -0,0 +1,9700 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>System.Management</name>
+    </assembly>
+    <members>
+        <member name="T:System.Management.TextFormat">
+            <summary>
+            <para>Describes the possible text formats that can be used with <see cref='M:System.Management.ManagementBaseObject.GetText(System.Management.TextFormat)'/>.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.TextFormat.Mof">
+            <summary>
+            Managed Object Format
+            </summary>
+        </member>
+        <member name="F:System.Management.TextFormat.CimDtd20">
+            <summary>
+            XML DTD that corresponds to CIM DTD version 2.0
+            </summary>
+        </member>
+        <member name="F:System.Management.TextFormat.WmiDtd20">
+            <summary>
+            XML WMI DTD that corresponds to CIM DTD version 2.0.
+            Using this value enables a few WMI-specific extensions, like embedded objects.
+            </summary>
+        </member>
+        <member name="T:System.Management.CimType">
+            <summary>
+               <para>Describes the possible CIM types for properties, qualifiers, or method parameters.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.None">
+            <summary>
+               <para>Invalid Type</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.SInt8">
+            <summary>
+               <para>A signed 8-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.UInt8">
+            <summary>
+               <para>An unsigned 8-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.SInt16">
+            <summary>
+               <para>A signed 16-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.UInt16">
+            <summary>
+               <para>An unsigned 16-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.SInt32">
+            <summary>
+               <para>A signed 32-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.UInt32">
+            <summary>
+               <para>An unsigned 32-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.SInt64">
+            <summary>
+               <para>A signed 64-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.UInt64">
+            <summary>
+               <para>An unsigned 64-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Real32">
+            <summary>
+               <para>A floating-point 32-bit number.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Real64">
+            <summary>
+               <para>A floating point 64-bit number.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Boolean">
+            <summary>
+               <para> A boolean.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.String">
+            <summary>
+               <para>A string.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.DateTime">
+            <summary>
+               <para> A date or time value, represented in a string in DMTF
+                  date/time format: yyyymmddHHMMSS.mmmmmmsUUU</para>
+               <para>where:</para>
+               <para>yyyymmdd - is the date in year/month/day</para>
+               <para>HHMMSS - is the time in hours/minutes/seconds</para>
+               <para>mmmmmm - is the number of microseconds in 6 digits</para>
+               <para>sUUU - is a sign (+ or -) and a 3-digit UTC offset</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Reference">
+            <summary>
+               <para>A reference to another object. This is represented by a
+                  string containing the path to the referenced object</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Char16">
+            <summary>
+               <para> A 16-bit character.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Object">
+            <summary>
+               <para>An embedded object.</para>
+               <para>Note that embedded objects differ from references in that the embedded object
+                  doesn't have a path and its lifetime is identical to the lifetime of the
+                  containing object.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ComparisonSettings">
+            <summary>
+            <para>Describes the object comparison modes that can be used with <see cref='M:System.Management.ManagementBaseObject.CompareTo(System.Management.ManagementBaseObject,System.Management.ComparisonSettings)'/>.
+               Note that these values may be combined.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IncludeAll">
+            <summary>
+               <para>A mode that compares all elements of the compared objects.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreQualifiers">
+            <summary>
+               <para>A mode that compares the objects, ignoring qualifiers.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreObjectSource">
+            <summary>
+               <para> A mode that ignores the source of the objects, namely the server
+                  and the namespace they came from, in comparison to other objects.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreDefaultValues">
+            <summary>
+               <para> A mode that ignores the default values of properties.
+                  This value is only meaningful when comparing classes.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreClass">
+            <summary>
+               <para>A mode that assumes that the objects being compared are instances of
+                  the same class. Consequently, this value causes comparison
+                  of instance-related information only. Use this flag to optimize
+                  performance. If the objects are not of the same class, the results are undefined.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreCase">
+            <summary>
+               <para> A mode that compares string values in a case-insensitive
+                  manner. This applies to strings and to qualifier values. Property and qualifier
+                  names are always compared in a case-insensitive manner whether this flag is
+                  specified or not.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreFlavor">
+            <summary>
+               <para>A mode that ignores qualifier flavors. This flag still takes
+                  qualifier values into account, but ignores flavor distinctions such as
+                  propagation rules and override restrictions.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementBaseObject">
+            <summary>
+               <para> Contains the basic elements of a management
+                  object. It serves as a base class to more specific management object classes.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementBaseObject'/> class that is serializable.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.op_Explicit(System.Management.ManagementBaseObject)~System.IntPtr">
+            <summary>
+               <para>Provides the internal WMI object represented by a ManagementObject.</para>
+               <para>See remarks with regard to usage.</para>
+            </summary>
+            <param name='managementObject'>The <see cref='T:System.Management.ManagementBaseObject'/> that references the requested WMI object. </param>
+            <returns>
+            <para>An <see cref='T:System.IntPtr'/> representing the internal WMI object.</para>
+            </returns>
+            <remarks>
+               <para>This operator is used internally by instrumentation code. It is not intended
+                  for direct use by regular client or instrumented applications.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetBaseObject(System.Management.IWbemClassObjectFreeThreaded,System.Management.ManagementScope)">
+            <summary>
+            Factory for various types of base object
+            </summary>
+            <param name="wbemObject"> IWbemClassObject </param>
+            <param name="scope"> The scope</param>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The new cloned object.</para>
+            </returns>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.Properties">
+            <summary>
+            <para>Gets or sets a collection of <see cref='T:System.Management.PropertyData'/> objects describing the properties of the
+               management object.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.PropertyDataCollection'/> that represents the
+               properties of the management object.</para>
+            </value>
+            <seealso cref='T:System.Management.PropertyData'/>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.SystemProperties">
+            <summary>
+               <para>Gets or sets the collection of WMI system properties of the management object (for example, the
+                  class name, server, and namespace). WMI system property names begin with
+                  "__".</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.PropertyDataCollection'/> that represents the system properties of the management object.</para>
+            </value>
+            <seealso cref='T:System.Management.PropertyData'/>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.Qualifiers">
+            <summary>
+            <para>Gets or sets the collection of <see cref='T:System.Management.QualifierData'/> objects defined on the management object.
+               Each element in the collection holds information such as the qualifier name,
+               value, and flavor.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.QualifierDataCollection'/> that represents the qualifiers
+               defined on the management object.</para>
+            </value>
+            <seealso cref='T:System.Management.QualifierData'/>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.ClassPath">
+            <summary>
+               <para>Gets or sets the path to the management object's class.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementPath'/> that represents the path to the management object's class.</para>
+            </value>
+            <example>
+               <para>For example, for the \\MyBox\root\cimv2:Win32_LogicalDisk=
+                  'C:' object, the class path is \\MyBox\root\cimv2:Win32_LogicalDisk
+                  .</para>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.Item(System.String)">
+            <summary>
+               <para> Gets access to property values through [] notation.</para>
+            </summary>
+            <param name='propertyName'>The name of the property of interest. </param>
+            <value>
+               An <see cref='T:System.Object'/> containing the
+               value of the requested property.
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetPropertyValue(System.String)">
+            <summary>
+               <para>Gets an equivalent accessor to a property's value.</para>
+            </summary>
+            <param name='propertyName'>The name of the property of interest. </param>
+            <returns>
+               <para>The value of the specified property.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetQualifierValue(System.String)">
+            <summary>
+               <para>Gets the value of the specified qualifier.</para>
+            </summary>
+            <param name='qualifierName'>The name of the qualifier of interest. </param>
+            <returns>
+               <para>The value of the specified qualifier.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.SetQualifierValue(System.String,System.Object)">
+            <summary>
+               <para>Sets the value of the named qualifier.</para>
+            </summary>
+            <param name='qualifierName'>The name of the qualifier to set. This parameter cannot be null.</param>
+            <param name='qualifierValue'>The value to set.</param>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetPropertyQualifierValue(System.String,System.String)">
+            <summary>
+               <para>Returns the value of the specified property qualifier.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to which the qualifier belongs. </param>
+            <param name='qualifierName'>The name of the property qualifier of interest. </param>
+            <returns>
+               <para>The value of the specified qualifier.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.SetPropertyQualifierValue(System.String,System.String,System.Object)">
+            <summary>
+               <para>Sets the value of the specified property qualifier.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to which the qualifier belongs.</param>
+            <param name='qualifierName'>The name of the property qualifier of interest.</param>
+            <param name='qualifierValue'>The new value for the qualifier.</param>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetText(System.Management.TextFormat)">
+            <summary>
+               <para>Returns a textual representation of the object in the specified format.</para>
+            </summary>
+            <param name='format'>The requested textual format. </param>
+            <returns>
+               <para>The textual representation of the
+                  object in the specified format.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.Equals(System.Object)">
+            <summary>
+               <para>Compares two management objects.</para>
+            </summary>
+            <param name='obj'>An object to compare with this instance.</param>
+            <returns>
+            <see langword='true'/> if
+            <paramref name="obj"/> is an instance of <see cref='T:System.Management.ManagementBaseObject'/> and represents
+               the same object as this instance; otherwise, <see langword='false'/>.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetHashCode">
+            <summary>
+                <para>Serves as a hash function for a particular type, suitable for use in hashing algorithms and data structures like a hash table.</para>
+                   <para>The hash code for ManagementBaseObjects is based on the MOF for the WbemObject that this instance is based on.  Two different ManagementBaseObject instances pointing to the same WbemObject in WMI will have the same mof and thus the same hash code.  Changing a property value of an object will change the hash code. </para>
+            </summary>
+            <returns>
+                <para>A hash code for the current object. </para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.CompareTo(System.Management.ManagementBaseObject,System.Management.ComparisonSettings)">
+            <summary>
+               <para>Compares this object to another, based on specified options.</para>
+            </summary>
+            <param name='otherObject'>The object to which to compare this object. </param>
+            <param name='settings'>Options on how to compare the objects. </param>
+            <returns>
+            <para><see langword='true'/> if the objects compared are equal
+               according to the given options; otherwise, <see langword='false'/>
+               .</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.SetPropertyValue(System.String,System.Object)">
+            <summary>
+               <para>Sets the value of the named property.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to be changed.</param>
+            <param name='propertyValue'>The new value for this property.</param>
+        </member>
+        <member name="T:System.Management.ManagementClass">
+             <summary>
+                <para> Represents a CIM management class from WMI. CIM (Common Information Model) classes
+                        represent management information including hardware, software, processes, etc.
+                        For more information about the CIM classes available in Windows search for "win32 classes".</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates getting information about a class using the ManagementClass object
+             class Sample_ManagementClass
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     diskClass.Get();
+                     Console.WriteLine("Logical Disk class has " + diskClass.Properties.Count + " properties");
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates getting information about a class using the ManagementClass object
+             Class Sample_ManagementClass
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                     diskClass.Get()
+                     Console.WriteLine(("Logical Disk class has " &amp; _
+                                        diskClass.Properties.Count.ToString() &amp; _
+                                        " properties"))
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetManagementClass(System.Management.IWbemClassObjectFreeThreaded,System.Management.ManagementClass)">
+            <summary>
+            Internal factory for classes, used when deriving a class
+            or cloning a class. For these purposes we always mark
+            the class as "bound".
+            </summary>
+            <param name="wbemObject">The underlying WMI object</param>
+            <param name="mgObj">Seed class from which we will get initialization info</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.ManagementClass'/> class.
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class. This is the
+               default constructor.</para>
+            </summary>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass();
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass()
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.Management.ManagementPath)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class initialized to the
+               given path.</para>
+            </summary>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> specifying which WMI class to bind to.</param>
+            <remarks>
+            <para>The <paramref name="path"/> parameter must specify a WMI class
+               path.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass(
+                new ManagementPath("Win32_LogicalDisk"));
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass( _
+                New ManagementPath("Win32_LogicalDisk"))
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class initialized to the given path.</para>
+            </summary>
+            <param name='path'>The path to the WMI class.</param>
+            <example>
+               <code lang='C#'>ManagementClass c = new
+                  ManagementClass("Win32_LogicalDisk");
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("Win32_LogicalDisk")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.Management.ManagementPath,System.Management.ObjectGetOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class initialized to the
+               given WMI class path using the specified options.</para>
+            </summary>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> representing the WMI class path.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> representing the options to use when retrieving this class.</param>
+            <example>
+               <code lang='C#'>ManagementPath p = new ManagementPath("Win32_Process");
+            //Options specify that amended qualifiers are to be retrieved along with the class
+            ObjectGetOptions o = new ObjectGetOptions(null, true);
+            ManagementClass c = new ManagementClass(p,o);
+               </code>
+               <code lang='VB'>Dim p As New ManagementPath("Win32_Process")
+            ' Options specify that amended qualifiers are to be retrieved along with the class
+            Dim o As New ObjectGetOptions(Null, True)
+            Dim c As New ManagementClass(p,o)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.String,System.Management.ObjectGetOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class initialized to the given WMI class path
+               using the specified options.</para>
+            </summary>
+            <param name='path'>The path to the WMI class.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> representing the options to use when retrieving the WMI class.</param>
+            <example>
+               <code lang='C#'>//Options specify that amended qualifiers should be retrieved along with the class
+            ObjectGetOptions o = new ObjectGetOptions(null, true);
+            ManagementClass c = new ManagementClass("Win32_ComputerSystem",o);
+               </code>
+               <code lang='VB'>' Options specify that amended qualifiers should be retrieved along with the class
+            Dim o As New ObjectGetOptions(Null, True)
+            Dim c As New ManagementClass("Win32_ComputerSystem",o)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.Management.ManagementScope,System.Management.ManagementPath,System.Management.ObjectGetOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class for the specified
+               WMI class in the specified scope and with the specified options.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> that specifies the scope (server and namespace) where the WMI class resides. </param>
+            <param name=' path'>A <see cref='T:System.Management.ManagementPath'/> that represents the path to the WMI class in the specified scope.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> that specifies the options to use when retrieving the WMI class.</param>
+            <remarks>
+               <para> The path can be specified as a full
+                  path (including server and namespace). However, if a scope is specified, it will
+                  override the first portion of the full path.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope("\\\\MyBox\\root\\cimv2");
+            ManagementPath p = new ManagementPath("Win32_Environment");
+            ObjectGetOptions o = new ObjectGetOptions(null, true);
+            ManagementClass c = new ManagementClass(s, p, o);
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope("\\MyBox\root\cimv2")
+            Dim p As New ManagementPath("Win32_Environment")
+            Dim o As New ObjectGetOptions(Null, True)
+            Dim c As New ManagementClass(s, p, o)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.String,System.String,System.Management.ObjectGetOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class for the specified WMI class, in the
+               specified scope, and with the specified options.</para>
+            </summary>
+            <param name='scope'>The scope in which the WMI class resides.</param>
+            <param name=' path'>The path to the WMI class within the specified scope.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> that specifies the options to use when retrieving the WMI class.</param>
+            <remarks>
+               <para> The path can be specified as a full
+                  path (including server and namespace). However, if a scope is specified, it will
+                  override the first portion of the full path.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("\\\\MyBox\\root\\cimv2",
+                                                    "Win32_Environment",
+                                                    new ObjectGetOptions(null, true));
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("\\MyBox\root\cimv2", _
+                                         "Win32_Environment", _
+                                         new ObjectGetOptions(Null, True))
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementClass.Path">
+            <summary>
+               <para>Gets or sets the path of the WMI class to
+                  which the <see cref='T:System.Management.ManagementClass'/>
+                  object is bound.</para>
+            </summary>
+            <value>
+               <para>The path of the object's class.</para>
+            </value>
+            <remarks>
+               <para> When the property is set to a new value,
+                  the <see cref='T:System.Management.ManagementClass'/>
+                  object will be
+                  disconnected from any previously-bound WMI class. Reconnect to the new WMI class path.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass();
+            c.Path = "Win32_Environment";
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass()
+            c.Path = "Win32_Environment"
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementClass.Derivation">
+            <summary>
+               <para> Gets or sets an array containing all WMI classes in the
+                  inheritance hierarchy from this class to the top.</para>
+            </summary>
+            <value>
+               A string collection containing the
+               names of all WMI classes in the inheritance hierarchy of this class.
+            </value>
+            <remarks>
+               <para>This property is read-only.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("Win32_LogicalDisk");
+            foreach (string s in c.Derivation)
+                Console.WriteLine("Further derived from : ", s);
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("Win32_LogicalDisk")
+            Dim s As String
+            For Each s In c.Derivation
+                Console.WriteLine("Further derived from : " &amp; s)
+            Next s
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementClass.Methods">
+            <summary>
+            <para>Gets or sets a collection of <see cref='T:System.Management.MethodData'/> objects that
+               represent the methods defined in the WMI class.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.MethodDataCollection'/> representing the methods defined in the WMI class.</para>
+            </value>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("Win32_Process");
+            foreach (Method m in c.Methods)
+                Console.WriteLine("This class contains this method : ", m.Name);
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("Win32_Process")
+            Dim m As Method
+            For Each m in c.Methods
+                 Console.WriteLine("This class contains this method : " &amp; m.Name)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetInstances">
+            <overload>
+               Returns the collection of
+               all instances of the class.
+            </overload>
+            <summary>
+               <para>Returns the collection of all instances of the class.</para>
+            </summary>
+            <returns>
+            <para>A collection of the <see cref='T:System.Management.ManagementObject'/> objects
+               representing the instances of the class.</para>
+            </returns>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("Win32_Process");
+            foreach (ManagementObject o in c.GetInstances())
+                 Console.WriteLine("Next instance of Win32_Process : ", o.Path);
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("Win32_Process")
+            Dim o As ManagementObject
+            For Each o In c.GetInstances()
+                 Console.WriteLine("Next instance of Win32_Process : " &amp; o.Path)
+            Next o
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetInstances(System.Management.EnumerationOptions)">
+            <summary>
+               <para>Returns the collection of all instances of the class using the specified options.</para>
+            </summary>
+            <param name='options'>The additional operation options.</param>
+            <returns>
+            <para>A collection of the <see cref='T:System.Management.ManagementObject'/> objects
+               representing the instances of the class, according to the specified options.</para>
+            </returns>
+            <example>
+               <code lang='C#'>EnumerationOptions opt = new EnumerationOptions();
+            //Will enumerate instances of the given class and any subclasses.
+            o.enumerateDeep = true;
+            ManagementClass c = new ManagementClass("CIM_Service");
+            foreach (ManagementObject o in c.GetInstances(opt))
+                Console.WriteLine(o["Name"]);
+               </code>
+               <code lang='VB'>Dim opt As New EnumerationOptions()
+            'Will enumerate instances of the given class and any subclasses.
+            o.enumerateDeep = True
+            Dim c As New ManagementClass("CIM_Service")
+            Dim o As ManagementObject
+            For Each o In c.GetInstances(opt)
+                Console.WriteLine(o["Name"])
+            Next o
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetInstances(System.Management.ManagementOperationObserver)">
+             <summary>
+                <para>Returns the collection of all instances of the class, asynchronously.</para>
+             </summary>
+             <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+             <example>
+                <code lang='C#'>ManagementClass c = new ManagementClass("Win32_Share");
+             MyHandler h = new MyHandler();
+             ManagementOperationObserver ob = new ManagementOperationObserver();
+             ob.ObjectReady += new ObjectReadyEventHandler (h.NewObject);
+             ob.Completed += new CompletedEventHandler (h.Done);
+            
+             c.GetInstances(ob);
+            
+             while (!h.Completed)
+                 System.Threading.Thread.Sleep (1000);
+            
+             //Here you can use the object
+             Console.WriteLine(o["SomeProperty"]);
+            
+             public class MyHandler
+             {
+                 private bool completed = false;
+            
+                 public void NewObject(object sender, ObjectReadyEventArgs e) {
+                     Console.WriteLine("New result arrived !", ((ManagementObject)(e.NewObject))["Name"]);
+                 }
+            
+                 public void Done(object sender, CompletedEventArgs e) {
+                     Console.WriteLine("async Get completed !");
+                     completed = true;
+                 }
+            
+                 public bool Completed {
+                     get {
+                         return completed;
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Dim c As New ManagementClass("Win32_Share")
+             Dim h As New MyHandler()
+             Dim ob As New ManagementOperationObserver()
+             ob.ObjectReady += New ObjectReadyEventHandler(h.NewObject)
+             ob.Completed += New CompletedEventHandler(h.Done)
+            
+             c.GetInstances(ob)
+            
+             While Not h.Completed
+                 System.Threading.Thread.Sleep(1000)
+             End While
+            
+             'Here you can use the object
+             Console.WriteLine(o("SomeProperty"))
+            
+             Public Class MyHandler
+                 Private completed As Boolean = false
+            
+                 Public Sub Done(sender As Object, e As EventArrivedEventArgs)
+                     Console.WriteLine("async Get completed !")
+                 completed = True
+                 End Sub
+            
+                 Public ReadOnly Property Completed() As Boolean
+                     Get
+                         Return completed
+                 End Get
+                 End Property
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetInstances(System.Management.ManagementOperationObserver,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Returns the collection of all instances of the class, asynchronously, using
+                  the specified options.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+            <param name=' options'>The specified additional options for getting the instances.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetSubclasses">
+            <overload>
+               Returns the collection of
+               all derived classes for the class.
+            </overload>
+            <summary>
+               <para>Returns the collection of all subclasses for the class.</para>
+            </summary>
+            <returns>
+            <para>A collection of the <see cref='T:System.Management.ManagementObject'/> objects that
+               represent the subclasses of the WMI class.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetSubclasses(System.Management.EnumerationOptions)">
+             <summary>
+                <para>Retrieves the subclasses of the class using the specified
+                   options.</para>
+             </summary>
+             <param name='options'>The specified additional options for retrieving subclasses of the class.</param>
+             <returns>
+             <para>A collection of the <see cref='T:System.Management.ManagementObject'/> objects
+                representing the subclasses of the WMI class, according to the specified
+                options.</para>
+             </returns>
+             <example>
+                <code lang='C#'>EnumerationOptions opt = new EnumerationOptions();
+            
+             //Causes return of deep subclasses as opposed to only immediate ones.
+             opt.enumerateDeep = true;
+            
+             ManagementObjectCollection c = (new
+                   ManagementClass("Win32_Share")).GetSubclasses(opt);
+                </code>
+                <code lang='VB'>Dim opt As New EnumerationOptions()
+            
+             'Causes return of deep subclasses as opposed to only immediate ones.
+             opt.enumerateDeep = true
+            
+             Dim cls As New ManagementClass("Win32_Share")
+             Dim c As ManagementObjectCollection
+            
+             c = cls.GetSubClasses(opt)
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetSubclasses(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Returns the collection of all classes derived from this class, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetSubclasses(System.Management.ManagementOperationObserver,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Retrieves all classes derived from this class, asynchronously, using the specified
+                  options.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+            <param name='options'>The specified additional options to use in the derived class retrieval.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.Derive(System.String)">
+             <summary>
+                <para>Derives a new class from this class.</para>
+             </summary>
+             <param name='newClassName'>The name of the new class to be derived.</param>
+             <returns>
+             <para>A new <see cref='T:System.Management.ManagementClass'/>
+             that represents a new WMI class derived from the original class.</para>
+             </returns>
+             <remarks>
+                <para>Note that the newly returned class has not been committed
+                   until the <see cref='M:System.Management.ManagementObject.Put'/> method is explicitly called.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementClass existingClass = new ManagementClass("CIM_Service");
+                ManagementClass newClass = existingClass.Derive("My_Service");
+                newClass.Put(); //to commit the new class to the WMI repository.
+                </code>
+                <code lang='VB'>Dim existingClass As New ManagementClass("CIM_Service")
+             Dim newClass As ManagementClass
+            
+             newClass = existingClass.Derive("My_Service")
+             newClass.Put()  'to commit the new class to the WMI repository.
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.CreateInstance">
+             <summary>
+                <para>Creates a new instance of the WMI class.</para>
+             </summary>
+             <returns>
+             <para>A <see cref='T:System.Management.ManagementObject'/> that represents a new
+                instance of the WMI class.</para>
+             </returns>
+             <remarks>
+                <para>Note that the new instance is not committed until the
+                <see cref='M:System.Management.ManagementObject.Put'/> method is called. Before committing it, the key properties must
+                   be specified.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementClass envClass = new ManagementClass("Win32_Environment");
+                ManagementObject newInstance =
+                   existingClass.CreateInstance("My_Service");
+                newInstance["Name"] = "Cori";
+                newInstance.Put(); //to commit the new instance.
+                </code>
+                <code lang='VB'>Dim envClass As New ManagementClass("Win32_Environment")
+             Dim newInstance As ManagementObject
+            
+             newInstance = existingClass.CreateInstance("My_Service")
+             newInstance("Name") = "Cori"
+             newInstance.Put()  'to commit the new instance.
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para> The cloned
+                  object.</para>
+            </returns>
+            <remarks>
+               <para>Note that this does not create a copy of the
+                  WMI class; only an additional representation is created.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses">
+             <overload>
+                Retrieves classes related
+                to the WMI class.
+             </overload>
+             <summary>
+                <para> Retrieves classes related to the WMI class.</para>
+             </summary>
+             <returns>
+             <para>A collection of the <see cref='T:System.Management.ManagementClass'/> or <see cref='T:System.Management.ManagementObject'/>
+             objects that represents WMI classes or instances related to
+             the WMI class.</para>
+             </returns>
+             <remarks>
+                <para>The method queries the WMI schema for all
+                   possible associations that the WMI class may have with other classes, or in rare
+                   cases, to instances.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementClass c = new ManagementClass("Win32_LogicalDisk");
+            
+             foreach (ManagementClass r in c.GetRelatedClasses())
+                 Console.WriteLine("Instances of {0} may have
+                                    relationships to this class", r["__CLASS"]);
+                </code>
+                <code lang='VB'>Dim c As New ManagementClass("Win32_LogicalDisk")
+             Dim r As ManagementClass
+            
+             For Each r In c.GetRelatedClasses()
+                 Console.WriteLine("Instances of {0} may have relationships _
+                                    to this class", r("__CLASS"))
+             Next r
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.String)">
+            <summary>
+               <para> Retrieves classes related to the WMI class.</para>
+            </summary>
+            <param name='relatedClass'><para>The class from which resulting classes have to be derived.</para></param>
+            <returns>
+               A collection of classes related to
+               this class.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.String,System.String,System.String,System.String,System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+               <para> Retrieves classes related to the WMI class based on the specified
+                  options.</para>
+            </summary>
+            <param name=' relatedClass'><para>The class from which resulting classes have to be derived.</para></param>
+            <param name=' relationshipClass'> The relationship type which resulting classes must have with the source class.</param>
+            <param name=' relationshipQualifier'>This qualifier must be present on the relationship.</param>
+            <param name=' relatedQualifier'>This qualifier must be present on the resulting classes.</param>
+            <param name=' relatedRole'>The resulting classes must have this role in the relationship.</param>
+            <param name=' thisRole'>The source class must have this role in the relationship.</param>
+            <param name=' options'>The options for retrieving the resulting classes.</param>
+            <returns>
+               <para>A collection of classes related to
+                  this class.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para> Retrieves classes
+                  related to the WMI class, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para> Retrieves classes related to the WMI class, asynchronously, given the related
+                  class name.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+            <param name=' relatedClass'>The name of the related class.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.Management.ManagementOperationObserver,System.String,System.String,System.String,System.String,System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+               <para> Retrieves classes related to the
+                  WMI class, asynchronously, using the specified options.</para>
+            </summary>
+            <param name='watcher'>Handler for progress and results of the asynchronous operation.</param>
+            <param name=' relatedClass'><para>The class from which resulting classes have to be derived.</para></param>
+            <param name=' relationshipClass'> The relationship type which resulting classes must have with the source class.</param>
+            <param name=' relationshipQualifier'>This qualifier must be present on the relationship.</param>
+            <param name=' relatedQualifier'>This qualifier must be present on the resulting classes.</param>
+            <param name=' relatedRole'>The resulting classes must have this role in the relationship.</param>
+            <param name=' thisRole'>The source class must have this role in the relationship.</param>
+            <param name=' options'>The options for retrieving the resulting classes.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses">
+            <overload>
+               Retrieves relationship
+               classes that relate the class to others.
+            </overload>
+            <summary>
+               <para>Retrieves relationship classes that relate the class to others.</para>
+            </summary>
+            <returns>
+               <para>A collection of association classes
+                  that relate the class to any other class.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.String)">
+            <summary>
+               <para>Retrieves relationship classes that relate the class to others, where the
+                  endpoint class is the specified class.</para>
+            </summary>
+            <param name='relationshipClass'>The endpoint class for all relationship classes returned.</param>
+            <returns>
+               <para>A collection of association classes
+                  that relate the class to the specified class.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.String,System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+               <para> Retrieves relationship classes that relate this class to others, according to
+                  specified options.</para>
+            </summary>
+            <param name='relationshipClass'><para> All resulting relationship classes must derive from this class.</para></param>
+            <param name=' relationshipQualifier'>Resulting relationship classes must have this qualifier.</param>
+            <param name=' thisRole'>The source class must have this role in the resulting relationship classes.</param>
+            <param name=' options'>Specifies options for retrieving the results.</param>
+            <returns>
+               <para>A collection of association classes
+                  that relate this class to others, according to the specified options.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Retrieves relationship classes that relate the class to others,
+                  asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para>Retrieves relationship classes that relate the class to the specified WMI class,
+                  asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+            <param name=' relationshipClass'>The WMI class to which all returned relationships should point.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.Management.ManagementOperationObserver,System.String,System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Retrieves relationship classes that relate the class according to the specified
+                  options, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The handler for progress and results of the asynchronous operation.</param>
+            <param name='relationshipClass'><para>The class from which all resulting relationship classes must derive.</para></param>
+            <param name=' relationshipQualifier'>The qualifier which the resulting relationship classes must have.</param>
+            <param name=' thisRole'>The role which the source class must have in the resulting relationship classes.</param>
+            <param name=' options'> The options for retrieving the results.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetStronglyTypedClassCode(System.Boolean,System.Boolean)">
+             <overload>
+                <para>Generates a strongly-typed class for a given WMI class.</para>
+             </overload>
+             <summary>
+                <para>Generates a strongly-typed class for a given WMI class.</para>
+             </summary>
+             <param name='includeSystemClassInClassDef'><see langword='true'/> if the class for managing system properties must be included; otherwise, <see langword='false'/>.</param>
+             <param name='systemPropertyClass'><see langword='true'/> if the generated class will manage system properties; otherwise, <see langword='false'/>.</param>
+             <returns>
+             <para>A <see cref='T:System.CodeDom.CodeTypeDeclaration'/> instance
+                representing the declaration for the strongly-typed class.</para>
+             </returns>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+             using System.CodeDom;
+             using System.IO;
+             using System.CodeDom.Compiler;
+             using Microsoft.CSharp;
+            
+             void GenerateCSharpCode()
+             {
+                   string strFilePath = "C:\\temp\\LogicalDisk.cs";
+                   CodeTypeDeclaration ClsDom;
+            
+                   ManagementClass cls1 = new ManagementClass(null,"Win32_LogicalDisk",null);
+                   ClsDom = cls1.GetStronglyTypedClassCode(false,false);
+            
+                   ICodeGenerator cg = (new CSharpCodeProvider()).CreateGenerator ();
+                   CodeNamespace cn = new CodeNamespace("TestNamespace");
+            
+                   // Add any imports to the code
+                   cn.Imports.Add (new CodeNamespaceImport("System"));
+                   cn.Imports.Add (new CodeNamespaceImport("System.ComponentModel"));
+                   cn.Imports.Add (new CodeNamespaceImport("System.Management"));
+                   cn.Imports.Add(new CodeNamespaceImport("System.Collections"));
+            
+                   // Add class to the namespace
+                   cn.Types.Add (ClsDom);
+            
+                   //Now create the filestream (output file)
+                   TextWriter tw = new StreamWriter(new
+                   FileStream (strFilePath,FileMode.Create));
+            
+                   // And write it to the file
+                   cg.GenerateCodeFromNamespace (cn, tw, new CodeGeneratorOptions());
+            
+                   tw.Close();
+             }
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetStronglyTypedClassCode(System.Management.CodeLanguage,System.String,System.String)">
+             <summary>
+                <para>Generates a strongly-typed class for a given WMI class. This function generates code for Visual Basic,
+                   C#, or JScript, depending on the input parameters.</para>
+             </summary>
+             <param name='lang'>The language of the code to be generated.</param>
+             <param name='filePath'>The path of the file where the code is to be written.</param>
+             <param name='classNamespace'>The .NET namespace into which the class should be generated. If this is empty, the namespace will be generated from the WMI namespace.</param>
+             <returns>
+             <para><see langword='true'/>, if the method succeeded;
+                otherwise, <see langword='false'/> .</para>
+             </returns>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             ManagementClass cls = new ManagementClass(null,"Win32_LogicalDisk",null,"");
+             cls.GetStronglyTypedClassCode(CodeLanguage.CSharp,"C:\temp\Logicaldisk.cs",String.Empty);
+                </code>
+             </example>
+        </member>
+        <member name="T:System.Management.ManagementDateTimeConverter">
+             <summary>
+                <para> Provides methods to convert DMTF datetime and time interval to CLR compliant
+                <see cref='T:System.DateTime'/> and <see cref='T:System.TimeSpan'/> format and vice versa.
+                </para>
+             </summary>
+             <example>
+                <code lang='C#'>
+             using System;
+             using System.Management;
+            
+             // The sample below demonstrates the various conversions that can be done using ManagementDateTimeConverter class
+             class Sample_ManagementDateTimeConverterClass
+             {
+                 public static int Main(string[] args)
+                 {
+                     string dmtfDate = "20020408141835.999999-420";
+                     string dmtfTimeInterval = "00000010122532:123456:000";
+            
+                     // Converting DMTF datetime to System.DateTime
+                     DateTime dt = ManagementDateTimeConverter.ToDateTime(dmtfDate);
+            
+                     // Converting System.DateTime to DMTF datetime
+                     string dmtfDate = ManagementDateTimeConverter.ToDateTime(DateTime.Now);
+            
+                     // Converting DMTF timeinterval to System.TimeSpan
+                     System.TimeSpan tsRet = ManagementDateTimeConverter. ToTimeSpan(dmtfTimeInterval);
+            
+                     //Converting System.TimeSpan to DMTF time interval format
+                     System.TimeSpan ts = new System.TimeSpan(10,12,25,32,456);
+                     string dmtfTimeInt  = ManagementDateTimeConverter.ToDmtfTimeInterval(ts);
+            
+                     return 0;
+            
+                 }
+             }
+                </code>
+                <code lang='VB'>
+             Imports System
+             Imports System.Management
+            
+             'The sample below demonstrates the various conversions that can be done using ManagementDateTimeConverter class
+             Class Sample_ManagementClass
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim dmtfDate As String = "20020408141835.999999-420"
+                     Dim dmtfTimeInterval As String = "00000010122532:123456:000"
+            
+                     'Converting DMTF datetime and intervals to System.DateTime
+                     Dim dt As DateTime = ManagementDateTimeConverter.ToDateTime(dmtfDate)
+            
+                     'Converting System.DateTime to DMTF datetime
+                     dmtfDate = ManagementDateTimeConverter.ToDateTime(DateTime.Now)
+            
+                     ' Converting DMTF timeinterval to System.TimeSpan
+                     Dim tsRet As System.TimeSpan = ManagementDateTimeConverter.ToTimeSpan(dmtfTimeInterval)
+            
+                     'Converting System.TimeSpan to DMTF time interval format
+                     Dim ts As System.TimeSpan = New System.TimeSpan(10, 12, 25, 32, 456)
+                     String dmtfTimeInt = ManagementDateTimeConverter.ToDmtfTimeInterval(ts)
+            
+                     Return 0
+                 End Function
+             End Class
+            
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementDateTimeConverter.ToDateTime(System.String)">
+            <summary>
+            <para>Converts a given DMTF datetime to <see cref='T:System.DateTime'/> object. The returned DateTime will be in the
+                       current TimeZone of the system.</para>
+            </summary>
+            <param name='dmtfDate'>A string representing the datetime in DMTF format.</param>
+            <returns>
+            <para>A <see cref='T:System.DateTime'/> object that represents the given DMTF datetime.</para>
+            </returns>
+            <remarks>
+                       <para> Date and time in WMI is represented in DMTF datetime format. This format is explained in WMI SDK documentation.
+                           DMTF datetime string has an UTC offset which this datetime string represents.
+                            During conversion to <see cref='T:System.DateTime'/>, UTC offset is used to convert the date to the
+                           current timezone. According to DMTF format a particular field can be represented by the character
+                           '*'. This will be converted to the MinValue of this field that can be represented in <see cref='T:System.DateTime'/>.
+                       </para>
+            </remarks>
+            <example>
+               <code lang='C#'>
+            // Convert a DMTF datetime to System.DateTime
+            DateTime date = ManagementDateTimeConverter.ToDateTime("20020408141835.999999-420");
+               </code>
+               <code lang='VB'>
+            ' Convert a DMTF datetime to System.DateTime
+            Dim date as DateTime = ManagementDateTimeConverter.ToDateTime("20020408141835.999999-420")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementDateTimeConverter.ToDmtfDateTime(System.DateTime)">
+             <summary>
+             <para>Converts a given <see cref='T:System.DateTime'/> object to DMTF format.</para>
+            
+             </summary>
+             <param name='date'>A <see cref='T:System.DateTime'/> object representing the datetime to be converted to DMTF datetime.</param>
+             <returns>
+             <para>A string that represents the DMTF datetime for the given DateTime object.</para>
+             </returns>
+             <remarks>
+                        <para> Date and time in WMI is represented in DMTF datetime format. This format is explained in WMI SDK documentation.
+                            The DMTF datetime string represented will be with respect to the UTC offset of the
+                            current timezone. The lowest precision in DMTF is microseconds and
+                            in <see cref='T:System.DateTime'/> is Ticks , which is equivalent to 100 of nanoseconds.
+                             During conversion these Ticks are converted to microseconds and rounded
+                             off to the nearest microsecond.
+                        </para>
+             </remarks>
+             <example>
+                <code lang='C#'>
+             // Convert the current time in System.DateTime to DMTF format
+             string dmtfDateTime = ManagementDateTimeConverter.ToDmtfDateTime(DateTime.Now);
+                </code>
+                <code lang='VB'>
+             ' Convert the current time in System.DateTime to DMTF format
+             Dim dmtfDateTime as String = ManagementDateTimeConverter.ToDmtfDateTime(DateTime.Now)
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementDateTimeConverter.ToTimeSpan(System.String)">
+            <summary>
+            <para>Converts a given DMTF time interval to <see cref='T:System.TimeSpan'/> object.</para>
+            </summary>
+            <param name='dmtfTimespan'>A string represesentation of the DMTF time interval.</param>
+            <returns>
+            <para>A <see cref='T:System.TimeSpan'/> object that represents the given DMTF time interval.</para>
+            </returns>
+            <remarks>
+                       <para> Time interval in WMI is represented in DMTF format. This format is explained in WMI SDK documentation.
+                               If the DMTF time interval value is more than that of
+                               <see cref='F:System.TimeSpan.MaxValue'/> then <see cref='T:System.ArgumentOutOfRangeException'/> is thrown.
+                       </para>
+            </remarks>
+            <example>
+               <code lang='C#'>
+            // Convert a DMTF time interval to System.TimeSpan
+            TimeSpan dmtfTimeInterval = ManagementDateTimeConverter.ToTimeSpan("00000010122532:123456:000");
+               </code>
+               <code lang='VB'>
+            ' Convert a DMTF time interval to System.TimeSpan
+            Dim ts as TimeSpan = ManagementDateTimeConverter.ToTimeSpan("00000010122532:123456:000")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementDateTimeConverter.ToDmtfTimeInterval(System.TimeSpan)">
+            <summary>
+            <para>Converts a given <see cref='T:System.TimeSpan'/> object to DMTF time interval.</para>
+            </summary>
+            <param name='timespan'> A <see cref='T:System.TimeSpan'/> object representing the datetime to be converted to DMTF time interval.
+            </param>
+            <returns>
+            <para>A string that represents the DMTF time interval for the given TimeSpan object.</para>
+            </returns>
+            <remarks>
+                       <para> Time interval in WMI is represented in DMTF datetime format. This format
+                           is explained in WMI SDK documentation. The lowest precision in
+                           DMTF is microseconds and in <see cref='T:System.TimeSpan'/> is Ticks , which is equivalent
+                           to 100 of nanoseconds.During conversion these Ticks are converted to
+                           microseconds and rounded off to the nearest microsecond.
+                       </para>
+            </remarks>
+            <example>
+               <code lang='C#'>
+            // Construct a Timespan object and convert it to DMTF format
+            System.TimeSpan ts = new System.TimeSpan(10,12,25,32,456);
+            String dmtfTimeInterval = ManagementDateTimeConverter.ToDmtfTimeInterval(ts);
+               </code>
+               <code lang='VB'>
+            // Construct a Timespan object and convert it to DMTF format
+            Dim ts as System.TimeSpan = new System.TimeSpan(10,12,25,32,456)
+            Dim dmtfTimeInterval as String = ManagementDateTimeConverter.ToDmtfTimeInterval(ts)
+               </code>
+            </example>
+        </member>
+        <member name="T:System.Management.ManagementEventArgs">
+            <summary>
+               <para>Represents the virtual base class to hold event data for WMI events.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementEventArgs.#ctor(System.Object)">
+            <summary>
+            Constructor. This is not callable directly by applications.
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which trigerred the event.</param>
+        </member>
+        <member name="P:System.Management.ManagementEventArgs.Context">
+            <summary>
+               <para> Gets the operation context echoed back
+                  from the operation that triggered the event.</para>
+            </summary>
+            <value>
+               A WMI context object containing
+               context information provided by the operation that triggered the event.
+            </value>
+        </member>
+        <member name="T:System.Management.ObjectReadyEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementOperationObserver.ObjectReady'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ObjectReadyEventArgs.#ctor(System.Object,System.Management.ManagementBaseObject)">
+            <summary>
+            Constructor.
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which triggerred the event.</param>
+            <param name="wmiObject">The newly arrived WmiObject.</param>
+        </member>
+        <member name="P:System.Management.ObjectReadyEventArgs.NewObject">
+            <summary>
+               <para> Gets the newly-returned object.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> representing the
+               newly-returned object.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.CompletedEventArgs">
+            <summary>
+            <para> Holds event data for the <see cref='E:System.Management.ManagementOperationObserver.Completed'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.CompletedEventArgs.#ctor(System.Object,System.Int32,System.Management.ManagementBaseObject)">
+            <summary>
+            Constructor.
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which trigerred the event.</param>
+            <param name="status">The completion status of the operation.</param>
+            <param name="wmiStatusObject">Additional status information
+            encapsulated within a WmiObject. This may be null.</param>
+        </member>
+        <member name="P:System.Management.CompletedEventArgs.StatusObject">
+            <summary>
+               <para>Gets or sets additional status information
+                  within a WMI object. This may be null.</para>
+            </summary>
+            <value>
+            <para><see langword='null '/> if an error did not occur. Otherwise, may be non-null if the provider
+               supports extended error information.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.CompletedEventArgs.Status">
+            <summary>
+               <para>Gets the completion status of the operation.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementStatus'/> value
+               indicating the return code of the operation.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.ObjectPutEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementOperationObserver.ObjectPut'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ObjectPutEventArgs.#ctor(System.Object,System.Management.ManagementPath)">
+            <summary>
+            Constructor
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which trigerred the event.</param>
+            <param name="path">The WmiPath representing the identity of the
+            object that has been put.</param>
+        </member>
+        <member name="P:System.Management.ObjectPutEventArgs.Path">
+            <summary>
+               <para> Gets the identity of the
+                  object that has been put.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementPath'/> containing the path of the object that has
+               been put.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.ProgressEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementOperationObserver.Progress'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ProgressEventArgs.#ctor(System.Object,System.Int32,System.Int32,System.String)">
+            <summary>
+            Constructor
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which trigerred the event.</param>
+            <param name="upperBound">A quantity representing the total
+            amount of work required to be done by the operation.</param>
+            <param name="current">A quantity representing the current
+            amount of work required to be done by the operation. This is
+            always less than or equal to upperBound.</param>
+            <param name="message">Optional additional information regarding
+            operation progress.</param>
+        </member>
+        <member name="P:System.Management.ProgressEventArgs.UpperBound">
+            <summary>
+               <para> Gets the total
+                  amount of work required to be done by the operation.</para>
+            </summary>
+            <value>
+               An integer representing the total
+               amount of work for the operation.
+            </value>
+        </member>
+        <member name="P:System.Management.ProgressEventArgs.Current">
+            <summary>
+               <para> Gets the current amount of work
+                  done by the operation. This is always less than or equal to <see cref='P:System.Management.ProgressEventArgs.UpperBound'/>.</para>
+            </summary>
+            <value>
+               <para>An integer representing the current amount of work
+                  already completed by the operation.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ProgressEventArgs.Message">
+            <summary>
+               <para>Gets or sets optional additional information regarding the operation's progress.</para>
+            </summary>
+            <value>
+               A string containing additional
+               information regarding the operation's progress.
+            </value>
+        </member>
+        <member name="T:System.Management.EventArrivedEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementEventWatcher.EventArrived'/> event.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.EventArrivedEventArgs.NewEvent">
+            <summary>
+               <para> Gets the WMI event that was delivered.</para>
+            </summary>
+            <value>
+               The object representing the WMI event.
+            </value>
+        </member>
+        <member name="T:System.Management.StoppedEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementEventWatcher.Stopped'/> event.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.StoppedEventArgs.Status">
+            <summary>
+               <para> Gets the completion status of the operation.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementStatus'/> value representing the status of the
+               operation.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.EventArrivedEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementEventWatcher.EventArrived'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.StoppedEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementEventWatcher.Stopped'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementEventWatcher">
+             <summary>
+                <para> Subscribes to temporary event notifications
+                   based on a specified event query.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to subscribe to an event using the ManagementEventWatcher object.
+             class Sample_ManagementEventWatcher
+             {
+                 public static int Main(string[] args) {
+            
+                     //For the example, we'll put a class into the repository, and watch
+                     //for class deletion events when the class is deleted.
+                     ManagementClass newClass = new ManagementClass();
+                     newClass["__CLASS"] = "TestDeletionClass";
+                     newClass.Put();
+            
+                     //Set up an event watcher and a handler for the event
+                     ManagementEventWatcher watcher = new ManagementEventWatcher(
+                         new WqlEventQuery("__ClassDeletionEvent"));
+                     MyHandler handler = new MyHandler();
+                     watcher.EventArrived += new EventArrivedEventHandler(handler.Arrived);
+            
+                     //Start watching for events
+                     watcher.Start();
+            
+                     // For the purpose of this sample, we delete the class to trigger the event
+                     // and wait for two seconds before terminating the consumer
+                     newClass.Delete();
+            
+                     System.Threading.Thread.Sleep(2000);
+            
+                     //Stop watching
+                     watcher.Stop();
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler {
+                     public void Arrived(object sender, EventArrivedEventArgs e) {
+                         Console.WriteLine("Class Deleted = " +
+                            ((ManagementBaseObject)e.NewEvent["TargetClass"])["__CLASS"]);
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to subscribe an event using the ManagementEventWatcher object.
+             Class Sample_ManagementEventWatcher
+                 Public Shared Sub Main()
+            
+                     ' For the example, we'll put a class into the repository, and watch
+                     ' for class deletion events when the class is deleted.
+                     Dim newClass As New ManagementClass()
+                     newClass("__CLASS") = "TestDeletionClass"
+                     newClass.Put()
+            
+                     ' Set up an event watcher and a handler for the event
+                     Dim watcher As _
+                         New ManagementEventWatcher(New WqlEventQuery("__ClassDeletionEvent"))
+                     Dim handler As New MyHandler()
+                     AddHandler watcher.EventArrived, AddressOf handler.Arrived
+            
+                     ' Start watching for events
+                     watcher.Start()
+            
+                     ' For the purpose of this sample, we delete the class to trigger the event
+                     ' and wait for two seconds before terminating the consumer
+                     newClass.Delete()
+            
+                     System.Threading.Thread.Sleep(2000)
+            
+                     ' Stop watching
+                     watcher.Stop()
+            
+                 End Sub
+            
+                 Public Class MyHandler
+                     Public Sub Arrived(sender As Object, e As EventArrivedEventArgs)
+                         Console.WriteLine("Class Deleted = " &amp; _
+                             CType(e.NewEvent("TargetClass"), ManagementBaseObject)("__CLASS"))
+                     End Sub
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor">
+            <overload>
+               Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class.
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class. For further
+               initialization, set the properties on the object. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.Management.EventQuery)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class when given a WMI event query.</para>
+            </summary>
+            <param name='query'>An <see cref='T:System.Management.EventQuery'/> object representing a WMI event query, which determines the events for which the watcher will listen.</param>
+            <remarks>
+               <para>The namespace in which the watcher will be listening for
+                  events is the default namespace that is currently set.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class when given a WMI event query in the
+               form of a string.</para>
+            </summary>
+            <param name='query'> A WMI event query, which defines the events for which the watcher will listen.</param>
+            <remarks>
+               <para>The namespace in which the watcher will be listening for
+                  events is the default namespace that is currently set.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.Management.ManagementScope,System.Management.EventQuery)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/>
+            class that listens for events conforming to the given WMI event query.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> object representing the scope (namespace) in which the watcher will listen for events.</param>
+            <param name=' query'>An <see cref='T:System.Management.EventQuery'/> object representing a WMI event query, which determines the events for which the watcher will listen.</param>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/>
+            class that listens for events conforming to the given WMI event query. For this
+            variant, the query and the scope are specified as strings.</para>
+            </summary>
+            <param name='scope'> The management scope (namespace) in which the watcher will listen for events.</param>
+            <param name=' query'> The query that defines the events for which the watcher will listen.</param>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.String,System.String,System.Management.EventWatcherOptions)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class that listens for
+               events conforming to the given WMI event query, according to the specified options. For
+               this variant, the query and the scope are specified as strings. The options
+               object can specify options such as a timeout and context information.</para>
+            </summary>
+            <param name='scope'>The management scope (namespace) in which the watcher will listen for events.</param>
+            <param name=' query'>The query that defines the events for which the watcher will listen.</param>
+            <param name='options'>An <see cref='T:System.Management.EventWatcherOptions'/> object representing additional options used to watch for events. </param>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.Management.ManagementScope,System.Management.EventQuery,System.Management.EventWatcherOptions)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class
+               that listens for events conforming to the given WMI event query, according to the specified
+               options. For this variant, the query and the scope are specified objects. The
+               options object can specify options such as timeout and context information.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> object representing the scope (namespace) in which the watcher will listen for events.</param>
+            <param name=' query'>An <see cref='T:System.Management.EventQuery'/> object representing a WMI event query, which determines the events for which the watcher will listen.</param>
+            <param name='options'>An <see cref='T:System.Management.EventWatcherOptions'/> object representing additional options used to watch for events. </param>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.Finalize">
+            <summary>
+               <para>Ensures that outstanding calls are cleared. This is the destructor for the object.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementEventWatcher.EventArrived">
+            <summary>
+               <para> Occurs when a new event arrives.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementEventWatcher.Stopped">
+            <summary>
+               <para> Occurs when a subscription is canceled.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementEventWatcher.Scope">
+            <summary>
+               <para>Gets or sets the scope in which to watch for events (namespace or scope).</para>
+            </summary>
+            <value>
+               <para> The scope in which to watch for events (namespace or scope).</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementEventWatcher.Query">
+            <summary>
+               <para>Gets or sets the criteria to apply to events.</para>
+            </summary>
+            <value>
+               <para> The criteria to apply to the events, which is equal to the event query.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementEventWatcher.Options">
+            <summary>
+               <para>Gets or sets the options used to watch for events.</para>
+            </summary>
+            <value>
+               <para>The options used to watch for events.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.WaitForNextEvent">
+            <summary>
+               <para>Waits for the next event that matches the specified query to arrive, and
+                  then returns it.</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> representing the
+               newly arrived event.</para>
+            </returns>
+            <remarks>
+               <para>If the event watcher object contains options with
+                  a specified timeout, the API will wait for the next event only for the specified
+                  amount of time; otherwise, the API will be blocked until the next event occurs.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.Start">
+            <summary>
+               <para>Subscribes to events with the given query and delivers
+                  them, asynchronously, through the <see cref='E:System.Management.ManagementEventWatcher.EventArrived'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.Stop">
+            <summary>
+               <para>Cancels the subscription whether it is synchronous or asynchronous.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementStatus">
+            <summary>
+               <para>Represents the enumeration of all WMI error codes that are currently defined.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NoError">
+            <summary>
+               The operation was successful.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.False">
+            <summary>
+               <para> This value is returned when no more objects
+                  are available, the number of objects returned is less than the number requested,
+                  or at the end of an enumeration. It is also returned when the method is called
+                  with a value of 0 for the "uCount" parameter.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ResetToDefault">
+            <summary>
+               <para>An overridden property was deleted. This value is
+                  returned to signal that the original, non-overridden value has been restored as a
+                  result of the deletion.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Different">
+            <summary>
+               <para> The compared items (such as objects and classes)
+                  are not identical.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Timedout">
+            <summary>
+               <para> A call timed out. This is not an
+                  error condition; therefore, some results may have been returned.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NoMoreData">
+            <summary>
+               <para> No more data is available from the enumeration; the
+                  user should terminate the enumeration. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.OperationCanceled">
+            <summary>
+               <para> The operation was
+                  canceled.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Pending">
+            <summary>
+               <para>A request is still in progress; however, the results are not
+                  yet available.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.DuplicateObjects">
+            <summary>
+               <para> More than one copy of the same object was detected in
+                  the result set of an enumeration. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PartialResults">
+            <summary>
+               <para>The user did not receive all of the requested objects
+                  because of inaccessible resources (other than security violations).</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Failed">
+            <summary>
+               <para>The call failed.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NotFound">
+            <summary>
+               <para> The object could not be found. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.AccessDenied">
+            <summary>
+               The current user does not have permission to perform the
+               action.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ProviderFailure">
+            <summary>
+               <para> The provider failed after
+                  initialization. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.TypeMismatch">
+            <summary>
+               A type mismatch occurred.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.OutOfMemory">
+            <summary>
+               There was not enough memory for the operation.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidContext">
+            <summary>
+               <para>The context object is not valid.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidParameter">
+            <summary>
+               <para> One of the parameters to the call is not correct.
+               </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NotAvailable">
+            <summary>
+               <para> The resource, typically a remote server, is not
+                  currently available. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CriticalError">
+            <summary>
+               <para>An internal, critical, and unexpected error occurred.
+                  Report this error to Microsoft Product Support Services.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidStream">
+            <summary>
+               <para>One or more network packets were corrupted during a remote session.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NotSupported">
+            <summary>
+               <para> The feature or operation is not supported. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidSuperclass">
+            <summary>
+               The specified base class is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidNamespace">
+            <summary>
+               <para> The specified namespace could not be found. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidObject">
+            <summary>
+               The specified instance is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidClass">
+            <summary>
+               The specified class is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ProviderNotFound">
+            <summary>
+               A provider referenced in the schema does not have a
+               corresponding registration.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidProviderRegistration">
+            <summary>
+               A provider referenced in the schema has an incorrect or
+               incomplete registration.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ProviderLoadFailure">
+            <summary>
+               COM cannot locate a provider referenced in the schema.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InitializationFailure">
+            <summary>
+             A component, such as a provider, failed to initialize for internal reasons.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.TransportFailure">
+            <summary>
+               A networking error that prevents normal operation has
+               occurred.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidOperation">
+            <summary>
+               <para> The requested operation is not valid. This error usually
+                  applies to invalid attempts to delete classes or properties. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidQuery">
+            <summary>
+               The query was not syntactically valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidQueryType">
+            <summary>
+               <para>The requested query language is not supported.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.AlreadyExists">
+            <summary>
+            <para>In a put operation, the <see langword='wbemChangeFlagCreateOnly'/>
+            flag was specified, but the instance already exists.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.OverrideNotAllowed">
+            <summary>
+               <para>The add operation cannot be performed on the qualifier
+                  because the owning object does not permit overrides.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PropagatedQualifier">
+            <summary>
+               <para> The user attempted to delete a qualifier that was not
+                  owned. The qualifier was inherited from a parent class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PropagatedProperty">
+            <summary>
+               <para> The user attempted to delete a property that was not
+                  owned. The property was inherited from a parent class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Unexpected">
+            <summary>
+               The client made an unexpected and illegal sequence of
+               calls.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.IllegalOperation">
+            <summary>
+               <para>The user requested an illegal operation, such as
+                  spawning a class from an instance.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotBeKey">
+            <summary>
+               <para> There was an illegal attempt to specify a key qualifier
+                  on a property that cannot be a key. The keys are specified in the class
+                  definition for an object and cannot be altered on a per-instance basis.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.IncompleteClass">
+            <summary>
+               <para>The current object is not a valid class definition.
+                  Either it is incomplete, or it has not been registered with WMI using
+               <see cref='M:System.Management.ManagementObject.Put'/>().</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidSyntax">
+            <summary>
+               Reserved for future use.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NondecoratedObject">
+            <summary>
+               Reserved for future use.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ReadOnly">
+            <summary>
+               <para>The property that you are attempting to modify is read-only.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ProviderNotCapable">
+            <summary>
+               <para> The provider cannot perform the requested operation, such
+                  as requesting a query that is too complex, retrieving an instance, creating or
+                  updating a class, deleting a class, or enumerating a class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ClassHasChildren">
+            <summary>
+               <para>An attempt was made to make a change that would
+                  invalidate a derived class.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ClassHasInstances">
+            <summary>
+               <para> An attempt has been made to delete or modify a class that
+                  has instances. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.QueryNotImplemented">
+            <summary>
+               Reserved for future use.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.IllegalNull">
+            <summary>
+               <para> A value of null was specified for a property that may
+                  not be null, such as one that is marked by a <see langword='Key'/>, <see langword='Indexed'/>, or
+               <see langword='Not_Null'/> qualifier.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidQualifierType">
+            <summary>
+               <para> The value provided for a qualifier was not a
+                  legal qualifier type.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidPropertyType">
+            <summary>
+               The CIM type specified for a property is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ValueOutOfRange">
+            <summary>
+               <para> The request was made with an out-of-range value, or is
+                  incompatible with the type. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotBeSingleton">
+            <summary>
+               <para>An illegal attempt was made to make a class singleton,
+                  such as when the class is derived from a non-singleton class.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidCimType">
+            <summary>
+               The CIM type specified is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidMethod">
+            <summary>
+               The requested method is not available.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidMethodParameters">
+            <summary>
+               <para> The parameters provided for the method are not valid.
+               </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.SystemProperty">
+            <summary>
+               There was an attempt to get qualifiers on a system
+               property.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidProperty">
+            <summary>
+               The property type is not recognized.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CallCanceled">
+            <summary>
+               <para> An asynchronous process has been canceled internally or
+                  by the user. Note that because of the timing and nature of the asynchronous
+                  operation, the operation may not have been truly canceled. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ShuttingDown">
+            <summary>
+               <para>The user has requested an operation while WMI is in the
+                  process of quitting.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PropagatedMethod">
+            <summary>
+               <para> An attempt was made to reuse an existing method name from
+                  a base class, and the signatures did not match. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnsupportedParameter">
+            <summary>
+               <para> One or more parameter values, such as a query text, is
+                  too complex or unsupported. WMI is requested to retry the operation
+                  with simpler parameters. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MissingParameterID">
+            <summary>
+               A parameter was missing from the method call.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidParameterID">
+            <summary>
+               A method parameter has an invalid <see langword='ID'/> qualifier.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NonconsecutiveParameterIDs">
+            <summary>
+            <para> One or more of the method parameters have <see langword='ID'/>
+            qualifiers that are out of sequence. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ParameterIDOnRetval">
+            <summary>
+            <para> The return value for a method has an <see langword='ID'/> qualifier.
+            </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidObjectPath">
+            <summary>
+               The specified object path was invalid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.OutOfDiskSpace">
+            <summary>
+               <para> There is not enough free disk space to continue the
+                  operation. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.BufferTooSmall">
+            <summary>
+               <para> The supplied buffer was too small to hold all the objects
+                  in the enumerator or to read a string property. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnsupportedPutExtension">
+            <summary>
+               The provider does not support the requested put
+               operation.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnknownObjectType">
+            <summary>
+               <para> An object with an incorrect type or version was
+                  encountered during marshaling. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnknownPacketType">
+            <summary>
+               <para> A packet with an incorrect type or version was
+                  encountered during marshaling. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MarshalVersionMismatch">
+            <summary>
+               The packet has an unsupported version.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MarshalInvalidSignature">
+            <summary>
+               <para>The packet is corrupted.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidQualifier">
+            <summary>
+               An attempt has been made to mismatch qualifiers, such as
+               putting [key] on an object instead of a property.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidDuplicateParameter">
+            <summary>
+               A duplicate parameter has been declared in a CIM method.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.TooMuchData">
+            <summary>
+               <para> Reserved for future use. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ServerTooBusy">
+            <summary>
+               <para>The delivery of an event has failed. The provider may
+                  choose to re-raise the event.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidFlavor">
+            <summary>
+               The specified flavor was invalid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CircularReference">
+            <summary>
+               <para> An attempt has been made to create a reference that is
+                  circular (for example, deriving a class from itself). </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnsupportedClassUpdate">
+            <summary>
+               The specified class is not supported.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotChangeKeyInheritance">
+            <summary>
+               <para> An attempt was made to change a key when instances or derived
+                  classes are already using the key. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotChangeIndexInheritance">
+            <summary>
+               <para> An attempt was made to change an index when instances or derived
+                  classes are already using the index. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.TooManyProperties">
+            <summary>
+               <para> An attempt was made to create more properties than the
+                  current version of the class supports. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UpdateTypeMismatch">
+            <summary>
+               <para> A property was redefined with a conflicting type in a
+                  derived class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UpdateOverrideNotAllowed">
+            <summary>
+               <para> An attempt was made in a derived class to override a
+                  non-overrideable qualifier. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UpdatePropagatedMethod">
+            <summary>
+               <para> A method was redeclared with a conflicting signature in a
+                  derived class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MethodNotImplemented">
+            <summary>
+               An attempt was made to execute a method not marked with
+               [implemented] in any relevant class.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MethodDisabled">
+            <summary>
+               <para> An attempt was made to execute a method marked with
+                  [disabled]. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.RefresherBusy">
+            <summary>
+               <para> The refresher is busy with another operation. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnparsableQuery">
+            <summary>
+               <para> The filtering query is syntactically invalid. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NotEventClass">
+            <summary>
+               The FROM clause of a filtering query references a class
+               that is not an event class.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MissingGroupWithin">
+            <summary>
+               A GROUP BY clause was used without the corresponding
+               GROUP WITHIN clause.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MissingAggregationList">
+            <summary>
+               A GROUP BY clause was used. Aggregation on all properties
+               is not supported.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PropertyNotAnObject">
+            <summary>
+               <para> Dot notation was used on a property that is not an
+                  embedded object. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.AggregatingByObject">
+            <summary>
+               A GROUP BY clause references a property that is an
+               embedded object without using dot notation.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UninterpretableProviderQuery">
+            <summary>
+               An event provider registration query
+               (<see langword='__EventProviderRegistration'/>) did not specify the classes for which
+               events were provided.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.BackupRestoreWinmgmtRunning">
+            <summary>
+               <para> An request was made to back up or restore the repository
+                  while WinMgmt.exe was using it. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.QueueOverflow">
+            <summary>
+               <para> The asynchronous delivery queue overflowed from the
+                  event consumer being too slow. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PrivilegeNotHeld">
+            <summary>
+               The operation failed because the client did not have the
+               necessary security privilege.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidOperator">
+            <summary>
+               <para>The operator is not valid for this property type.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.LocalCredentials">
+            <summary>
+               <para> The user specified a username, password, or authority on a
+                  local connection. The user must use an empty user name and password and rely on
+                  default security. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotBeAbstract">
+            <summary>
+               <para> The class was made abstract when its base class is not
+                  abstract. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.AmendedObject">
+            <summary>
+               <para> An amended object was used in a put operation without the
+                  WBEM_FLAG_USE_AMENDED_QUALIFIERS flag being specified. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ClientTooSlow">
+            <summary>
+               The client was not retrieving objects quickly enough from
+               an enumeration.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.RegistrationTooBroad">
+            <summary>
+               <para> The provider registration overlaps with the system event
+                  domain. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.RegistrationTooPrecise">
+            <summary>
+               <para> A WITHIN clause was not used in this query. </para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementException">
+             <summary>
+                <para> Represents management exceptions.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to display error
+             // information stored in a ManagementException object.
+             class Sample_ManagementException
+             {
+                 public static int Main(string[] args)
+                 {
+                     try
+                     {
+                         ManagementObject disk =
+                             new ManagementObject("Win32_LogicalDisk.DeviceID='BAD:'");
+                         disk.Get(); // throws ManagementException
+                         Console.WriteLine("This shouldn't be displayed.");
+                     }
+                     catch (ManagementException e)
+                     {
+                       Console.WriteLine("ErrorCode " + e.ErrorCode);
+                       Console.WriteLine("Message " + e.Message);
+                       Console.WriteLine("Source " + e.Source);
+                       if (e.ErrorInformation) //extended error object
+                           Console.WriteLine("Extended Description : " + e.ErrorInformation["Description"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to display error
+             ' information stored in a ManagementException object.
+             Class Sample_ManagementException
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Try
+                         Dim disk As New ManagementObject("Win32_LogicalDisk.DeviceID='BAD:'")
+                         disk.Get() ' throws ManagementException
+                         Console.WriteLine("This shouldn't be displayed.")
+                     Catch e As ManagementException
+                         Console.WriteLine("ErrorCode " &amp; e.ErrorCode)
+                         Console.WriteLine("Message " &amp; e.Message)
+                         Console.WriteLine("Source " &amp; e.Source)
+                         If e.ErrorInformation != Nothing Then 'extended error object
+                             Console.WriteLine("Extended Description : " &amp; e.ErrorInformation("Description"))
+                         End If
+                     End Try
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementException'/> class that is serializable.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="M:System.Management.ManagementException.#ctor">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementException'/> class</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementException.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementException'/>
+            class with a specified error message.</para>
+            <param name='message'>The message that describes the error.</param>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementException.#ctor(System.String,System.Exception)">
+            <summary>
+            <para>Initializes a empty new instance of the <see cref='T:System.Management.ManagementException'/> class </para>
+            <param name='message'>The message that describes the error.</param>
+            <param name='innerException'>The exception that is the cause of the current exception. If the innerException
+            parameter is not a null reference (Nothing in Visual Basic), the current exception is raised in a catch
+            block that handles the inner exception.</param>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Populates the <see cref='T:System.Runtime.Serialization.SerializationInfo'/> object with the data needed to
+               serialize the <see cref='T:System.Management.ManagementException'/>
+               object.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="P:System.Management.ManagementException.ErrorInformation">
+            <summary>
+               <para>Gets the extended error object provided by WMI.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> representing the
+               extended error object provided by WMI, if available; <see langword='null'/>
+               otherwise.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementException.ErrorCode">
+            <summary>
+               <para>Gets the error code reported by WMI, which caused this exception.</para>
+            </summary>
+            <value>
+               A <see cref='T:System.Management.ManagementStatus'/> value representing the error code returned by
+               the WMI operation.
+            </value>
+        </member>
+        <member name="T:System.Management.ManagementNamedValueCollection">
+            <summary>
+               <para> Represents a collection of named values
+                  suitable for use as context information to WMI operations. The
+                  names are case-insensitive.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.ManagementNamedValueCollection'/> class.
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementNamedValueCollection'/> class, which is empty. This is
+               the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementNamedValueCollection'/> class that is serializable
+               and uses the specified <see cref='T:System.Runtime.Serialization.SerializationInfo'/>
+               and <see cref='T:System.Runtime.Serialization.StreamingContext'/>.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.GetContext">
+            <summary>
+               <para>Internal method to return an IWbemContext representation
+               of the named value collection.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.Add(System.String,System.Object)">
+            <summary>
+               <para> Adds a single-named value to the collection.</para>
+            </summary>
+            <param name=' name'>The name of the new value.</param>
+            <param name=' value'>The value to be associated with the name.</param>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.Remove(System.String)">
+            <summary>
+               <para> Removes a single-named value from the collection.
+                  If the collection does not contain an element with the
+                  specified name, the collection remains unchanged and no
+                  exception is thrown.</para>
+            </summary>
+            <param name=' name'>The name of the value to be removed.</param>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.RemoveAll">
+            <summary>
+               <para>Removes all entries from the collection.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.Clone">
+            <summary>
+               <para>Creates a clone of the collection. Individual values
+                  are cloned. If a value does not support cloning, then a <see cref='T:System.NotSupportedException'/>
+                  is thrown. </para>
+            </summary>
+            <returns>
+               The new copy of the collection.
+            </returns>
+        </member>
+        <member name="P:System.Management.ManagementNamedValueCollection.Item(System.String)">
+            <summary>
+               <para>Returns the value associated with the specified name from this collection.</para>
+            </summary>
+            <param name=' name'>The name of the value to be returned.</param>
+            <value>
+            <para>An <see cref='T:System.Object'/> containing the
+               value of the specified item in this collection.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.IdentifierChangedEventHandler">
+            <summary>
+            Delegate definition for the IdentifierChanged event.
+            This event is used to signal the ManagementObject that an identifying property
+            has been changed. Identifying properties are the ones that identify the object,
+            namely the scope, path and options.
+            </summary>
+        </member>
+        <member name="T:System.Management.InternalObjectPutEventHandler">
+            <summary>
+            Delegate definition for InternalObjectPut event. This is used so that
+            the WmiEventSink can signal to this object that the async Put call has
+            completed.
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementObject">
+             <summary>
+                <para> Represents a data management object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates reading a property of a ManagementObject.
+             class Sample_ManagementObject
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject disk = new ManagementObject(
+                         "win32_logicaldisk.deviceid=\"c:\"");
+                     disk.Get();
+                     Console.WriteLine("Logical Disk Size = " + disk["Size"] + " bytes");
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates reading a property of a ManagementObject.
+             Class Sample_ManagementObject
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim disk As New ManagementObject("win32_logicaldisk.deviceid=""c:""")
+                     disk.Get()
+                     Console.WriteLine(("Logical Disk Size = " &amp; disk("Size").ToString() _
+                         &amp; " bytes"))
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor">
+             <overload>
+                Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class.
+             </overload>
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class. This is the
+                default constructor.</para>
+             </summary>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject();
+            
+             //Now set the path on this object to bind it to a 'real' manageable entity
+             o.Path = new ManagementPath("Win32_LogicalDisk='c:'");
+            
+             //Now it can be used
+             Console.WriteLine(o["FreeSpace"]);
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject()
+             Dim mp As New ManagementPath("Win32_LogicalDisk='c:'")
+            
+             'Now set the path on this object to bind it to a 'real' manageable entity
+             o.Path = mp
+            
+             'Now it can be used
+             Console.WriteLine(o("FreeSpace"))
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.Management.ManagementPath)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class for the specified WMI
+               object path. The path is provided as a <see cref='T:System.Management.ManagementPath'/>.</para>
+            </summary>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> that contains a path to a WMI object.</param>
+            <example>
+               <code lang='C#'>ManagementPath p = new ManagementPath("Win32_Service.Name='Alerter'");
+            ManagementObject o = new ManagementObject(p);
+               </code>
+               <code lang='VB'>Dim p As New ManagementPath("Win32_Service.Name=""Alerter""")
+            Dim o As New ManagementObject(p)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.String)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class for the specified WMI object path. The path
+                is provided as a string.</para>
+             </summary>
+             <param name='path'>A WMI path.</param>
+             <remarks>
+                <para>If the specified path is a relative path only (a server
+                   or namespace is not specified), the default path is the local machine, and the
+                   default namespace is the <see cref='P:System.Management.ManagementPath.DefaultPath'/>
+                   path (by default, root\cimv2). If the user specifies a
+                   full path, the default settings are overridden.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject("Win32_Service.Name='Alerter'");
+            
+             //or with a full path :
+            
+             ManagementObject o = new ManagementObject("\\\\MyServer\\root\\MyApp:MyClass.Key='abc'");
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject("Win32_Service.Name=""Alerter""")
+            
+             //or with a full path :
+            
+             Dim o As New ManagementObject("\\\\MyServer\\root\\MyApp:MyClass.Key=""abc""");
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.Management.ManagementPath,System.Management.ObjectGetOptions)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class bound to the specified
+                WMI path, including the specified additional options.</para>
+             </summary>
+             <param name='path'>A <see cref='T:System.Management.ManagementPath'/> containing the WMI path.</param>
+             <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> containing additional options for binding to the WMI object. This parameter could be null if default options are to be used.</param>
+             <example>
+                <code lang='C#'>ManagementPath p = new ManagementPath("Win32_ComputerSystem.Name='MyMachine'");
+            
+             //Set options for no context info, but requests amended qualifiers
+             //to be contained in the object
+             ObjectGetOptions opt = new ObjectGetOptions(null, true);
+            
+             ManagementObject o = new ManagementObject(p, opt);
+            
+             Console.WriteLine(o.GetQualifierValue("Description"));
+                </code>
+                <code lang='VB'>Dim p As New ManagementPath("Win32_ComputerSystem.Name=""MyMachine""")
+            
+             'Set options for no context info, but requests amended qualifiers
+             'to be contained in the object
+             Dim opt As New ObjectGetOptions(null, true)
+            
+             Dim o As New ManagementObject(p, opt)
+            
+             Console.WriteLine(o.GetQualifierValue("Description"));
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.String,System.Management.ObjectGetOptions)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class bound to the specified WMI path, including the
+                specified additional options. In this variant, the path can be specified as a
+                string.</para>
+             </summary>
+             <param name='path'>The WMI path to the object.</param>
+             <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> representing options to get the specified WMI object.</param>
+             <example>
+                <code lang='C#'>//Set options for no context info,
+             //but requests amended qualifiers to be contained in the object
+             ObjectGetOptions opt = new ObjectGetOptions(null, true);
+            
+             ManagementObject o = new ManagementObject("Win32_ComputerSystem.Name='MyMachine'", opt);
+            
+             Console.WriteLine(o.GetQualifierValue("Description"));
+                </code>
+                <code lang='VB'>'Set options for no context info,
+             'but requests amended qualifiers to be contained in the object
+             Dim opt As New ObjectGetOptions(null, true)
+            
+             Dim o As New ManagementObject("Win32_ComputerSystem.Name=""MyMachine""", opt);
+            
+             Console.WriteLine(o.GetQualifierValue("Description"))
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.Management.ManagementScope,System.Management.ManagementPath,System.Management.ObjectGetOptions)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/>
+            class bound to the specified WMI path that includes the specified options.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> representing the scope in which the WMI object resides. In this version, scopes can only be WMI namespaces.</param>
+            <param name=' path'>A <see cref='T:System.Management.ManagementPath'/> representing the WMI path to the manageable object.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> specifying additional options for getting the object.</param>
+            <remarks>
+               <para> Because WMI paths can be relative or full, a conflict between the scope and the path
+                  specified may arise. However, if a scope is specified and
+                  a relative WMI path is specified, then there is no conflict. The
+                  following are some possible conflicts: </para>
+               <para> If a scope is not specified and a relative WMI
+                  path is specified, then the scope will default to the local machine's <see cref='P:System.Management.ManagementPath.DefaultPath'/>. </para>
+               <para> If a scope is not specified and a full WMI path is
+                  specified, then the scope will be inferred from the scope portion of the full
+                  path. For example, the full WMI path: <c>\\MyMachine\root\MyNamespace:MyClass.Name='abc'</c> will
+               represent the WMI object 'MyClass.Name='abc'" in the scope
+               '\\MyMachine\root\MyNamespace'. </para>
+            If a scope is specified and a full WMI path is specified, then the scope
+            will override the scope portion of the full path. For example, if the following
+            scope was specified: \\MyMachine\root\MyScope, and the following full path was
+            specified: \\MyMachine\root\MyNamespace:MyClass.Name='abc', then look for the
+            following <c>object:
+            \\MyMachine\root\MyScope:MyClass.Name=
+            'abc'</c>
+            (the scope part of the full path is ignored).
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope("\\\\MyMachine\\root\\cimv2");
+            ManagementPath p = new ManagementPath("Win32_LogicalDisk.Name='c:'");
+            ManagementObject o = new ManagementObject(s,p);
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope("\\MyMachine\root\cimv2");
+            Dim p As New ManagementPath("Win32_LogicalDisk.Name=""c:""");
+            Dim o As New ManagementObject(s,p);
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.String,System.String,System.Management.ObjectGetOptions)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class
+               bound to the specified WMI path, and includes the specified options. The scope and
+               the path are specified as strings.</para>
+            </summary>
+            <param name='scopeString'>The scope for the WMI object.</param>
+            <param name=' pathString'>The WMI object path.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> representing additional options for getting the WMI object.</param>
+            <remarks>
+               <para>See the equivalent overload for details.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>GetObjectOptions opt = new GetObjectOptions(null, true);
+            ManagementObject o = new ManagementObject("root\\MyNamespace", "MyClass.Name='abc'", opt);
+               </code>
+               <code lang='VB'>Dim opt As New GetObjectOptions(null, true)
+            Dim o As New ManagementObject("root\MyNamespace", "MyClass.Name=""abc""", opt);
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class that is serializable.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="P:System.Management.ManagementObject.Scope">
+             <summary>
+                <para> Gets or sets the scope in which this object resides.</para>
+             </summary>
+             <value>
+             <para> A <see cref='T:System.Management.ManagementScope'/>.</para>
+             </value>
+             <remarks>
+                <para>
+                   Changing
+                   this property after the management object has been bound to a WMI object in
+                   a particular namespace results in releasing the original WMI object. This causes the management object to
+                   be rebound to the new object specified by the new path properties and scope
+                   values. </para>
+                <para>The rebinding is performed in a "lazy" manner, that is, only when a requested
+                   value requires the management object to be bound to the WMI object. Changes can
+                   be made to more than just this property before attempting to rebind (for example, modifying the scope
+                   and path properties simultaneously).</para>
+             </remarks>
+             <example>
+                <code lang='C#'>//Create the object with the default namespace (root\cimv2)
+             ManagementObject o = new ManagementObject();
+            
+             //Change the scope (=namespace) of this object to the one specified.
+             o.Scope = new ManagementScope("root\\MyAppNamespace");
+                </code>
+                <code lang='VB'>'Create the object with the default namespace (root\cimv2)
+             Dim o As New ManagementObject()
+            
+             'Change the scope (=namespace) of this object to the one specified.
+             o.Scope = New ManagementScope("root\MyAppNamespace")
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementObject.Path">
+             <summary>
+                <para> Gets or sets the object's WMI path.</para>
+             </summary>
+             <value>
+             <para>A <see cref='T:System.Management.ManagementPath'/> representing the object's path.</para>
+             </value>
+             <remarks>
+                <para>
+                   Changing the property after the management
+                   object has been bound to a WMI object in a particular namespace results in releasing
+                   the original WMI object. This causes the management object to be rebound to
+                   the new object specified by the new path properties and scope values.</para>
+                <para>The rebinding is performed in a "lazy" manner, that is, only when a requested
+                   value requires the management object to be bound to the WMI object. Changes can
+                   be made to more than just the property before attempting to rebind (for example,
+                   modifying the scope and path properties simultaneously).</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject();
+            
+             //Specify the WMI path to which this object should be bound to
+             o.Path = new ManagementPath("MyClass.Name='MyName'");
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject()
+            
+             'Specify the WMI path to which this object should be bound to
+             o.Path = New ManagementPath("MyClass.Name=""MyName""");
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementObject.Options">
+             <summary>
+                <para>
+                   Gets or
+                   sets additional information to use when retrieving the object.</para>
+             </summary>
+             <value>
+             <para>An <see cref='T:System.Management.ObjectGetOptions'/> to use when retrieving the object.</para>
+             </value>
+             <remarks>
+                <para> When the property is
+                   changed after the management object has been bound to a WMI object, the management object
+                   is disconnected from the original WMI object and later rebound using the new
+                   options.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>//Contains default options
+             ManagementObject o = new ManagementObject("MyClass.Name='abc'");
+            
+             //Replace default options, in this case requesting retrieval of
+             //amended qualifiers along with the WMI object.
+             o.Options = new ObjectGetOptions(null, true);
+                </code>
+                <code lang='VB'>'Contains default options
+             Dim o As New ManagementObject("MyClass.Name=""abc""")
+            
+             'Replace default options, in this case requesting retrieval of
+             'amended qualifiers along with the WMI object.
+             o.Options = New ObjectGetOptions(null, true)
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementObject.ClassPath">
+             <summary>
+                <para>Gets or sets the path to the object's class.</para>
+             </summary>
+             <value>
+             <para>A <see cref='T:System.Management.ManagementPath'/> representing the path to the object's
+                class.</para>
+             </value>
+             <remarks>
+                <para>This property is read-only.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject("MyClass.Name='abc'");
+            
+             //Get the class definition for the object above.
+             ManagementClass c = new ManagementClass(o.ClassPath);
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject("MyClass.Name=""abc""")
+            
+             'Get the class definition for the object above.
+             Dim c As New ManagementClass(o.ClassPath);
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.Get">
+             <overload>
+                Binds to the management object.
+             </overload>
+             <summary>
+                <para> Binds to the management object.</para>
+             </summary>
+             <remarks>
+                <para> The method is implicitly
+                   invoked at the first attempt to get or set information to the WMI object. It
+                   can also be explicitly invoked at the user's discretion, to better control the
+                   timing and manner of retrieval.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject("MyClass.Name='abc'");
+             string s = o["SomeProperty"]; //this causes an implicit Get().
+            
+             //or :
+            
+             ManagementObject o= new ManagementObject("MyClass.Name= 'abc'");
+             o.Get(); //explicitly
+             //Now it's faster because the object has already been retrieved.
+             string s = o["SomeProperty"];
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject("MyClass.Name=""abc""")
+             string s = o("SomeProperty") 'this causes an implicit Get().
+            
+             'or :
+            
+             Dim o As New ManagementObject("MyClass.Name= ""abc""")
+             o.Get()  'explicitly
+             'Now it's faster because the object has already been retrieved.
+             string s = o("SomeProperty");
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.Get(System.Management.ManagementOperationObserver)">
+             <summary>
+                <para> Binds to the management object asynchronously.</para>
+             </summary>
+             <param name='watcher'>The object to receive the results of the operation as events.</param>
+             <remarks>
+                <para>The method will issue the request to get the object
+                   and then will immediately return. The results of the operation will then be
+                   delivered through events being fired on the watcher object provided.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject("MyClass.Name='abc'");
+            
+             //Set up handlers for asynchronous get
+             MyHandler h = new MyHandler();
+             ManagementOperationObserver ob = new ManagementOperationObserver();
+             ob.Completed += new CompletedEventHandler(h.Done);
+            
+             //Get the object asynchronously
+             o.Get(ob);
+            
+             //Wait until operation is completed
+             while (!h.Completed)
+                 System.Threading.Thread.Sleep (1000);
+            
+             //Here we can use the object
+             Console.WriteLine(o["SomeProperty"]);
+            
+             public class MyHandler
+             {
+                 private bool completed = false;
+            
+                 public void Done(object sender, CompletedEventArgs e) {
+                     Console.WriteLine("async Get completed !");
+                     completed = true;
+                 }
+            
+                 public bool Completed {
+                     get {
+                         return completed;
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject("MyClass.Name=""abc""")
+            
+             'Set up handlers for asynchronous get
+             Dim h As New MyHandler()
+             Dim ob As New ManagementOperationObserver()
+             ob.Completed += New CompletedEventHandler(h.Done)
+            
+             'Get the object asynchronously
+             o.Get(ob)
+            
+             'Wait until operation is completed
+             While Not h.Completed
+                 System.Threading.Thread.Sleep(1000)
+             End While
+            
+             'Here we can use the object
+             Console.WriteLine(o("SomeProperty"))
+            
+             Public Class MyHandler
+                 Private _completed As Boolean = false;
+            
+                 Public Sub Done(sender As Object, e As EventArrivedEventArgs)
+                     Console.WriteLine("async Get completed !")
+                     _completed = True
+                 End Sub
+            
+                 Public ReadOnly Property Completed() As Boolean
+                    Get
+                        Return _completed
+                    End Get
+                 End Property
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated">
+            <overload>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </overload>
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementObjectCollection'/> containing the
+               related objects.</para>
+            </returns>
+            <remarks>
+               <para> The operation is equivalent to an ASSOCIATORS OF query where ResultClass = relatedClass.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementObject o = new ManagementObject("Win32_Service='Alerter'");
+            foreach (ManagementBaseObject b in o.GetRelated())
+                Console.WriteLine("Object related to Alerter service : ", b.Path);
+               </code>
+               <code lang='VB'>Dim o As New ManagementObject("Win32_Service=""Alerter""")
+            Dim b As ManagementBaseObject
+            For Each b In o.GetRelated()
+                Console.WriteLine("Object related to Alerter service : ", b.Path)
+            Next b
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.String)">
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <param name='relatedClass'>A class of related objects. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementObjectCollection'/> containing the related objects.
+            </returns>
+            <example>
+               <code lang='C#'>ManagementObject o = new ManagementObject("Win32_Service='Alerter'");
+            foreach (ManagementBaseObject b in o.GetRelated("Win32_Service")
+                Console.WriteLine("Service related to the Alerter service {0} is {1}", b["Name"], b["State"]);
+               </code>
+               <code lang='VB'>Dim o As New ManagementObject("Win32_Service=""Alerter""");
+            Dim b As ManagementBaseObject
+            For Each b in o.GetRelated("Win32_Service")
+                Console.WriteLine("Service related to the Alerter service {0} is {1}", b("Name"), b("State"))
+            Next b
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.String,System.String,System.String,System.String,System.String,System.String,System.Boolean,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <param name='relatedClass'>The class of the related objects. </param>
+            <param name='relationshipClass'>The relationship class of interest. </param>
+            <param name='relationshipQualifier'>The qualifier required to be present on the relationship class. </param>
+            <param name='relatedQualifier'>The qualifier required to be present on the related class. </param>
+            <param name='relatedRole'>The role that the related class is playing in the relationship. </param>
+            <param name='thisRole'>The role that this class is playing in the relationship. </param>
+            <param name='classDefinitionsOnly'>When this method returns, it contains only class definitions for the instances that match the query. </param>
+            <param name='options'>Extended options for how to execute the query. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementObjectCollection'/> containing the related objects.
+            </returns>
+            <remarks>
+               <para>This operation is equivalent to an ASSOCIATORS OF query where ResultClass = &lt;relatedClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para> Gets a collection of objects
+                  related to the object (associators) asynchronously. This call returns immediately, and a
+                  delegate is called when the results are available.</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <param name='relatedClass'>The class of related objects. </param>
+            <remarks>
+               <para>This operation is equivalent to an ASSOCIATORS OF query where ResultClass = &lt;relatedClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.Management.ManagementOperationObserver,System.String,System.String,System.String,System.String,System.String,System.String,System.Boolean,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <param name='relatedClass'>The class of the related objects. </param>
+            <param name='relationshipClass'>The relationship class of interest. </param>
+            <param name='relationshipQualifier'>The qualifier required to be present on the relationship class. </param>
+            <param name='relatedQualifier'>The qualifier required to be present on the related class. </param>
+            <param name='relatedRole'>The role that the related class is playing in the relationship. </param>
+            <param name='thisRole'>The role that this class is playing in the relationship. </param>
+            <param name='classDefinitionsOnly'>Return only class definitions for the instances that match the query. </param>
+            <param name='options'>Extended options for how to execute the query.</param>
+            <remarks>
+               <para>This operation is equivalent to an ASSOCIATORS OF query where ResultClass = &lt;relatedClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships">
+            <overload>
+               Gets a collection of associations to the object.
+            </overload>
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementObjectCollection'/> containing the association objects.</para>
+            </returns>
+            <remarks>
+               <para> The operation is equivalent to a REFERENCES OF query.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.String)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='relationshipClass'>The associations to include. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementObjectCollection'/> containing the association objects.
+            </returns>
+            <remarks>
+               <para>This operation is equivalent to a REFERENCES OF query where the AssocClass = &lt;relationshipClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.String,System.String,System.String,System.Boolean,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='relationshipClass'>The type of relationship of interest. </param>
+            <param name='relationshipQualifier'>The qualifier to be present on the relationship. </param>
+            <param name='thisRole'>The role of this object in the relationship. </param>
+            <param name='classDefinitionsOnly'>When this method returns, it contains only the class definitions for the result set. </param>
+            <param name='options'>The extended options for the query execution. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementObjectCollection'/> containing the association objects.
+            </returns>
+            <remarks>
+               <para>This operation is equivalent to a REFERENCES OF query with possibly all the extensions.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <remarks>
+            This operation is equivalent to a REFERENCES OF query
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <param name='relationshipClass'>The associations to include. </param>
+            <remarks>
+               <para>This operation is equivalent to a REFERENCES OF query where the AssocClass = &lt;relationshipClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.Management.ManagementOperationObserver,System.String,System.String,System.String,System.Boolean,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <param name='relationshipClass'>The type of relationship of interest. </param>
+            <param name='relationshipQualifier'>The qualifier to be present on the relationship. </param>
+            <param name='thisRole'>The role of this object in the relationship. </param>
+            <param name='classDefinitionsOnly'>When this method returns, it contains only the class definitions for the result set. </param>
+            <param name='options'>The extended options for the query execution. </param>
+            <remarks>
+               <para>This operation is equivalent to a REFERENCES OF query with possibly all the extensions.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.Put">
+            <overload>
+               Commits the changes to the object.
+            </overload>
+            <summary>
+               <para>Commits the changes to the object.</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementPath'/> containing the path to the committed
+               object.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.Put(System.Management.PutOptions)">
+            <summary>
+               <para>Commits the changes to the object.</para>
+            </summary>
+            <param name='options'>The options for how to commit the changes. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementPath'/> containing the path to the committed object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.Put(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Commits the changes to the object, asynchronously.</para>
+            </summary>
+            <param name='watcher'>A <see cref='T:System.Management.ManagementOperationObserver'/> used to handle the progress and results of the asynchronous operation.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.Put(System.Management.ManagementOperationObserver,System.Management.PutOptions)">
+            <summary>
+               <para>Commits the changes to the object asynchronously and
+                  using the specified options.</para>
+            </summary>
+            <param name='watcher'>A <see cref='T:System.Management.ManagementOperationObserver'/> used to handle the progress and results of the asynchronous operation.</param>
+            <param name=' options'>A <see cref='T:System.Management.PutOptions'/> used to specify additional options for the commit operation.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementPath)">
+            <overload>
+               Copies the object to a different location.
+            </overload>
+            <summary>
+               <para>Copies the object to a different location.</para>
+            </summary>
+            <param name='path'>The <see cref='T:System.Management.ManagementPath'/> to which the object should be copied. </param>
+            <returns>
+               <para>The new path of the copied object.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.String)">
+            <summary>
+               <para>Copies the object to a different location.</para>
+            </summary>
+            <param name='path'>The path to which the object should be copied. </param>
+            <returns>
+               The new path of the copied object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.String,System.Management.PutOptions)">
+            <summary>
+               <para>Copies the object to a different location.</para>
+            </summary>
+            <param name='path'>The path to which the object should be copied.</param>
+            <param name='options'>The options for how the object should be put.</param>
+            <returns>
+               The new path of the copied object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementPath,System.Management.PutOptions)">
+            <summary>
+               <para>Copies the object to a different location.</para>
+            </summary>
+            <param name='path'>The <see cref='T:System.Management.ManagementPath'/> to which the object should be copied.</param>
+            <param name='options'>The options for how the object should be put.</param>
+            <returns>
+               The new path of the copied object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementOperationObserver,System.Management.ManagementPath)">
+            <summary>
+               <para>Copies the object to a different location, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> specifying the path to which the object should be copied.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para>Copies the object to a different location, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='path'> The path to which the object should be copied.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementOperationObserver,System.String,System.Management.PutOptions)">
+            <summary>
+               <para>Copies the object to a different location, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='path'>The path to which the object should be copied.</param>
+            <param name='options'>The options for how the object should be put.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementOperationObserver,System.Management.ManagementPath,System.Management.PutOptions)">
+            <summary>
+               <para>Copies the object to a different location, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='path'>The path to which the object should be copied.</param>
+            <param name='options'>The options for how the object should be put.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.Delete">
+            <overload>
+               Deletes the object.
+            </overload>
+            <summary>
+               <para>Deletes the object.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementObject.Delete(System.Management.DeleteOptions)">
+            <summary>
+               <para>Deletes the object.</para>
+            </summary>
+            <param name='options'>The options for how to delete the object. </param>
+        </member>
+        <member name="M:System.Management.ManagementObject.Delete(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Deletes the object.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.Delete(System.Management.ManagementOperationObserver,System.Management.DeleteOptions)">
+            <summary>
+               <para>Deletes the object.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='options'>The options for how to delete the object.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.InvokeMethod(System.String,System.Object[])">
+             <overload>
+                <para>Invokes a method on the object.</para>
+             </overload>
+             <summary>
+                <para>
+                   Invokes a method on the object.</para>
+             </summary>
+             <param name='methodName'>The name of the method to execute. </param>
+             <param name='args'>An array containing parameter values. </param>
+             <returns>
+                <para>The value returned by the method.</para>
+             </returns>
+             <remarks>
+                <para>If the method is static, the execution
+                   should still succeed.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates invoking a WMI method using an array of arguments.
+             public class InvokeMethod
+             {
+                 public static void Main()
+                 {
+            
+                     //Get the object on which the method will be invoked
+                     ManagementClass processClass = new ManagementClass("Win32_Process");
+            
+                     //Create an array containing all arguments for the method
+                     object[] methodArgs = {"notepad.exe", null, null, 0};
+            
+                     //Execute the method
+                     object result = processClass.InvokeMethod ("Create", methodArgs);
+            
+                     //Display results
+                     Console.WriteLine ("Creation of process returned: " + result);
+                     Console.WriteLine ("Process id: " + methodArgs[3]);
+                 }
+            
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates invoking a WMI method using an array of arguments.
+             Class InvokeMethod
+                 Public Overloads Shared Function Main(ByVal args() As String) As Integer
+            
+                     ' Get the object on which the method will be invoked
+                     Dim processClass As New ManagementClass("Win32_Process")
+            
+                     ' Create an array containing all arguments for the method
+                     Dim methodArgs() As Object = {"notepad.exe", Nothing, Nothing, 0}
+            
+                     ' Execute the method
+                     Dim result As Object = processClass.InvokeMethod("Create", methodArgs)
+            
+                     'Display results
+                     Console.WriteLine("Creation of process returned: {0}", result)
+                     Console.WriteLine("Process id: {0}", methodArgs(3))
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.InvokeMethod(System.Management.ManagementOperationObserver,System.String,System.Object[])">
+            <summary>
+               <para>Invokes a method on the object, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to receive the results of the operation.</param>
+            <param name='methodName'>The name of the method to execute. </param>
+            <param name='args'>An array containing parameter values. </param>
+            <remarks>
+               <para>If the method is static, the execution
+                  should still succeed.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.InvokeMethod(System.String,System.Management.ManagementBaseObject,System.Management.InvokeMethodOptions)">
+             <summary>
+                <para>Invokes a method on the WMI object. The input and output
+                   parameters are represented as <see cref='T:System.Management.ManagementBaseObject'/>
+                   objects.</para>
+             </summary>
+             <param name='methodName'>The name of the method to execute.</param>
+             <param name=' inParameters'>A <see cref='T:System.Management.ManagementBaseObject'/> holding the input parameters to the method.</param>
+             <param name=' options'>An <see cref='T:System.Management.InvokeMethodOptions'/> containing additional options for the execution of the method.</param>
+             <returns>
+             <para>A <see cref='T:System.Management.ManagementBaseObject'/> containing the
+                output parameters and return value of the executed method.</para>
+             </returns>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates invoking a WMI method using parameter objects
+             public class InvokeMethod
+             {
+                 public static void Main()
+                 {
+            
+                     //Get the object on which the method will be invoked
+                     ManagementClass processClass = new ManagementClass("Win32_Process");
+            
+                     //Get an input parameters object for this method
+                     ManagementBaseObject inParams = processClass.GetMethodParameters("Create");
+            
+                     //Fill in input parameter values
+                     inParams["CommandLine"] = "calc.exe";
+            
+                     //Execute the method
+                     ManagementBaseObject outParams = processClass.InvokeMethod ("Create", inParams, null);
+            
+                     //Display results
+                     //Note: The return code of the method is provided in the "returnValue" property of the outParams object
+                     Console.WriteLine("Creation of calculator process returned: " + outParams["returnValue"]);
+                     Console.WriteLine("Process ID: " + outParams["processId"]);
+                }
+             }
+                </code>
+                <code lang='VB'>
+             Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates invoking a WMI method using parameter objects
+             Class InvokeMethod
+                 Public Overloads Shared Function Main(ByVal args() As String) As Integer
+            
+                     ' Get the object on which the method will be invoked
+                     Dim processClass As New ManagementClass("Win32_Process")
+            
+                      ' Get an input parameters object for this method
+                     Dim inParams As ManagementBaseObject = processClass.GetMethodParameters("Create")
+            
+                     ' Fill in input parameter values
+                     inParams("CommandLine") = "calc.exe"
+            
+                     ' Execute the method
+                     Dim outParams As ManagementBaseObject = processClass.InvokeMethod("Create", inParams, Nothing)
+            
+                     ' Display results
+                     ' Note: The return code of the method is provided in the "returnValue" property of the outParams object
+                     Console.WriteLine("Creation of calculator process returned: {0}", outParams("returnValue"))
+                     Console.WriteLine("Process ID: {0}", outParams("processId"))
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.InvokeMethod(System.Management.ManagementOperationObserver,System.String,System.Management.ManagementBaseObject,System.Management.InvokeMethodOptions)">
+            <summary>
+               <para>Invokes a method on the object, asynchronously.</para>
+            </summary>
+            <param name='watcher'>A <see cref='T:System.Management.ManagementOperationObserver'/> used to handle the asynchronous execution's progress and results.</param>
+            <param name=' methodName'>The name of the method to be executed.</param>
+            <param name=' inParameters'><para>A <see cref='T:System.Management.ManagementBaseObject'/> containing the input parameters for the method.</para></param>
+            <param name=' options'>An <see cref='T:System.Management.InvokeMethodOptions'/> containing additional options used to execute the method.</param>
+            <remarks>
+               <para>The method invokes the specified method execution and then
+                  returns. Progress and results are reported through events on the <see cref='T:System.Management.ManagementOperationObserver'/>.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetMethodParameters(System.String)">
+            <summary>
+            <para>Returns a <see cref='T:System.Management.ManagementBaseObject'/> representing the list of input parameters for a method.</para>
+            </summary>
+            <param name='methodName'>The name of the method. </param>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> containing the
+               input parameters to the method.</para>
+            </returns>
+            <remarks>
+               <para> Gets the object containing the input parameters to a
+                  method, and then fills in the values and passes the object to the <see cref='M:System.Management.ManagementObject.InvokeMethod(System.String,System.Management.ManagementBaseObject,System.Management.InvokeMethodOptions)'/> call.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The copied object.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.ToString">
+            <summary>
+               <para>Returns the full path of the object. This is an override of the
+                  default object implementation.</para>
+            </summary>
+            <returns>
+               <para> The full path of
+                  the object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.ManagementObjectCollection">
+             <summary>
+                <para> Represents different collections of management objects
+                   retrieved through WMI. The objects in this collection are of <see cref='T:System.Management.ManagementBaseObject'/>-derived types, including <see cref='T:System.Management.ManagementObject'/> and <see cref='T:System.Management.ManagementClass'/>
+                   .</para>
+                <para> The collection can be the result of a WMI
+                   query executed through a <see cref='T:System.Management.ManagementObjectSearcher'/> object, or an enumeration of
+                   management objects of a specified type retrieved through a <see cref='T:System.Management.ManagementClass'/> representing that type.
+                   In addition, this can be a collection of management objects related in a specified
+                   way to a specific management object - in this case the collection would
+                   be retrieved through a method such as <see cref='M:System.Management.ManagementObject.GetRelated'/>.</para>
+             <para>The collection can be walked using the <see cref='T:System.Management.ManagementObjectCollection.ManagementObjectEnumerator'/> and objects in it can be inspected or
+                manipulated for various management tasks.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to enumerate instances of a ManagementClass object.
+             class Sample_ManagementObjectCollection
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     ManagementObjectCollection disks = diskClass.GetInstances();
+                     foreach (ManagementObject disk in disks) {
+                         Console.WriteLine("Disk = " + disk["deviceid"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to enumerate instances of a ManagementClass object.
+             Class Sample_ManagementObjectCollection
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                     Dim disks As ManagementObjectCollection = diskClass.GetInstances()
+                     Dim disk As ManagementObject
+                     For Each disk In disks
+                         Console.WriteLine("Disk = " &amp; disk("deviceid").ToString())
+                     Next disk
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.Finalize">
+            <summary>
+            <para>Disposes of resources the object is holding. This is the destructor for the object.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.Dispose">
+            <summary>
+            Releases resources associated with this object. After this
+            method has been called, an attempt to use this object will
+            result in an ObjectDisposedException being thrown.
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.Count">
+            <summary>
+               <para>Represents the number of objects in the collection.</para>
+            </summary>
+            <value>
+               <para>The number of objects in the collection.</para>
+            </value>
+            <remarks>
+               <para>This property is very expensive - it requires that
+               all members of the collection be enumerated.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.IsSynchronized">
+            <summary>
+               <para>Represents whether the object is synchronized.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/>, if the object is synchronized;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.SyncRoot">
+            <summary>
+               <para>Represents the object to be used for synchronization.</para>
+            </summary>
+            <value>
+               <para> The object to be used for synchronization.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.CopyTo(System.Array,System.Int32)">
+            <overload>
+               Copies the collection to an array.
+            </overload>
+            <summary>
+               <para> Copies the collection to an array.</para>
+            </summary>
+            <param name='array'>An array to copy to. </param>
+            <param name='index'>The index to start from. </param>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.CopyTo(System.Management.ManagementBaseObject[],System.Int32)">
+            <summary>
+            <para>Copies the items in the collection to a <see cref='T:System.Management.ManagementBaseObject'/>
+            array.</para>
+            </summary>
+            <param name='objectCollection'>The target array.</param>
+            <param name=' index'>The index to start from.</param>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.GetEnumerator">
+            <summary>
+               <para>Returns the enumerator for the collection. If the collection was retrieved from an operation that
+            specified the EnumerationOptions.Rewindable = false only one iteration through this enumerator is allowed.
+            Note that this applies to using the Count property of the collection as well since an iteration over the collection
+            is required. Due to this, code using the Count property should never specify EnumerationOptions.Rewindable = false.
+            </para>
+            </summary>
+            <returns>
+               An <see cref='T:System.Collections.IEnumerator'/>that can be used to iterate through the
+               collection.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.System#Collections#IEnumerable#GetEnumerator">
+            <internalonly/>
+            <summary>
+               <para>Returns an enumerator that can iterate through a collection.</para>
+            </summary>
+            <returns>
+               An <see cref='T:System.Collections.IEnumerator'/> that can be used to iterate
+               through the collection.
+            </returns>
+        </member>
+        <member name="T:System.Management.ManagementObjectCollection.ManagementObjectEnumerator">
+             <summary>
+                <para>Represents the enumerator on the collection.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to enumerate all logical disks
+             // using the ManagementObjectEnumerator object.
+             class Sample_ManagementObjectEnumerator
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     ManagementObjectCollection disks = diskClass.GetInstances();
+                     ManagementObjectCollection.ManagementObjectEnumerator disksEnumerator =
+                         disks.GetEnumerator();
+                     while(disksEnumerator.MoveNext()) {
+                         ManagementObject disk = (ManagementObject)disksEnumerator.Current;
+                        Console.WriteLine("Disk found: " + disk["deviceid"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+                   Imports System.Management
+                   ' This sample demonstrates how to enumerate all logical disks
+                   ' using ManagementObjectEnumerator object.
+                   Class Sample_ManagementObjectEnumerator
+                   Overloads Public Shared Function Main(args() As String) As Integer
+                   Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                   Dim disks As ManagementObjectCollection = diskClass.GetInstances()
+                   Dim disksEnumerator As _
+                   ManagementObjectCollection.ManagementObjectEnumerator = _
+                   disks.GetEnumerator()
+                   While disksEnumerator.MoveNext()
+                   Dim disk As ManagementObject = _
+                   CType(disksEnumerator.Current, ManagementObject)
+                   Console.WriteLine("Disk found: " &amp; disk("deviceid"))
+                   End While
+                   Return 0
+                   End Function
+                   End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.Finalize">
+            <summary>
+            <para>Disposes of resources the object is holding. This is the destructor for the object.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.Dispose">
+            <summary>
+            Releases resources associated with this object. After this
+            method has been called, an attempt to use this object will
+            result in an ObjectDisposedException being thrown.
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.Current">
+            <summary>
+            <para>Gets the current <see cref='T:System.Management.ManagementBaseObject'/> that this enumerator points
+               to.</para>
+            </summary>
+            <value>
+               <para>The current object in the enumeration.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.System#Collections#IEnumerator#Current">
+            <internalonly/>
+            <summary>
+               <para>Returns the current object in the enumeration.</para>
+            </summary>
+            <value>
+               <para>The current object in the enumeration.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.MoveNext">
+            <summary>
+               Indicates whether the enumerator has moved to
+               the next object in the enumeration.
+            </summary>
+            <returns>
+            <para><see langword='true'/>, if the enumerator was
+               successfully advanced to the next element; <see langword='false'/> if the enumerator has
+               passed the end of the collection.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.Reset">
+            <summary>
+               <para>Resets the enumerator to the beginning of the collection.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementObjectSearcher">
+             <summary>
+                <para> Retrieves a collection of management objects based
+                   on a specified query.</para>
+                <para>This class is one of the more commonly used entry points to retrieving
+                   management information. For example, it can be used to enumerate all disk
+                   drives, network adapters, processes and many more management objects on a
+                   system, or to query for all network connections that are up, services that are
+                   paused etc. </para>
+                <para>When instantiated, an instance of this class takes as input a WMI
+                   query represented in an <see cref='T:System.Management.ObjectQuery'/> or it's derivatives, and optionally a <see cref='T:System.Management.ManagementScope'/> representing the WMI namespace
+                   to execute the query in. It can also take additional advanced
+                   options in an <see cref='T:System.Management.EnumerationOptions'/> object. When the Get() method on this object
+                   is invoked, the ManagementObjectSearcher executes the given query in the
+                   specified scope and returns a collection of management objects that match the
+                   query in a <see cref='T:System.Management.ManagementObjectCollection'/>.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates perform a query using
+             // ManagementObjectSearcher object.
+             class Sample_ManagementObjectSearcher
+             {
+                 public static int Main(string[] args) {
+                     ManagementObjectSearcher searcher = new
+                         ManagementObjectSearcher("select * from win32_share");
+                     foreach (ManagementObject share in searcher.Get()) {
+                         Console.WriteLine("Share = " + share["Name"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates perform a query using
+             ' ManagementObjectSearcher object.
+             Class Sample_ManagementObjectSearcher
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim searcher As New ManagementObjectSearcher("SELECT * FROM Win32_Share")
+                     Dim share As ManagementObject
+                     For Each share In searcher.Get()
+                         Console.WriteLine("Share = " &amp; share("Name").ToString())
+                     Next share
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor">
+            <overload>
+               Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class. After some properties on
+               this object are set, the object can be used to invoke a query for management information. This is the default
+               constructor.</para>
+            </summary>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s = new ManagementObjectSearcher();
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher()
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used
+               to invoke the specified query for management information.</para>
+            </summary>
+            <param name='queryString'>The WMI query to be invoked by the object.</param>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s =
+                new ManagementObjectSearcher("SELECT * FROM Win32_Service");
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher("SELECT * FROM Win32_Service")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.Management.ObjectQuery)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used to invoke the
+               specified query for management information.</para>
+            </summary>
+            <param name='query'>An <see cref='T:System.Management.ObjectQuery'/> representing the query to be invoked by the searcher.</param>
+            <example>
+               <code lang='C#'>SelectQuery q = new SelectQuery("Win32_Service", "State='Running'");
+            ManagementObjectSearcher s = new ManagementObjectSearcher(q);
+               </code>
+               <code lang='VB'>Dim q As New SelectQuery("Win32_Service", "State=""Running""")
+            Dim s As New ManagementObjectSearcher(q)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used to invoke the
+               specified query in the specified scope.</para>
+            </summary>
+            <param name='scope'>The scope in which to query.</param>
+            <param name=' queryString'>The query to be invoked.</param>
+            <remarks>
+            <para>If no scope is specified, the default scope (<see cref='P:System.Management.ManagementPath.DefaultPath'/>) is used.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s = new ManagementObjectSearcher(
+                                           "root\\MyApp",
+                                           "SELECT * FROM MyClass WHERE MyProp=5");
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher( _
+                                           "root\MyApp", _
+                                           "SELECT * FROM MyClass WHERE MyProp=5")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.Management.ManagementScope,System.Management.ObjectQuery)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used to invoke the
+               specified query in the specified scope.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> representing the scope in which to invoke the query.</param>
+            <param name=' query'>An <see cref='T:System.Management.ObjectQuery'/> representing the query to be invoked.</param>
+            <remarks>
+            <para>If no scope is specified, the default scope (<see cref='P:System.Management.ManagementPath.DefaultPath'/>) is
+               used.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementScope myScope = new ManagementScope("root\\MyApp");
+            SelectQuery q = new SelectQuery("Win32_Environment", "User=&lt;system&gt;");
+            ManagementObjectSearcher s = new ManagementObjectSearcher(myScope,q);
+               </code>
+               <code lang='VB'>Dim myScope As New ManagementScope("root\MyApp")
+            Dim q As New SelectQuery("Win32_Environment", "User=&lt;system&gt;")
+            Dim s As New ManagementObjectSearcher(myScope,q)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used to invoke the specified
+               query, in the specified scope, and with the specified options.</para>
+            </summary>
+            <param name='scope'>The scope in which the query should be invoked.</param>
+            <param name=' queryString'>The query to be invoked.</param>
+            <param name=' options'>An <see cref='T:System.Management.EnumerationOptions'/> specifying additional options for the query.</param>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s = new ManagementObjectSearcher(
+                "root\\MyApp",
+                "SELECT * FROM MyClass",
+                new EnumerationOptions(null, InfiniteTimeout, 1, true, false, true);
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher( _
+                "root\MyApp", _
+                "SELECT * FROM MyClass", _
+                New EnumerationOptions(Null, InfiniteTimeout, 1, True, False, True)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.Management.ManagementScope,System.Management.ObjectQuery,System.Management.EnumerationOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class to be
+               used to invoke the specified query in the specified scope, with the specified
+               options.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> specifying the scope of the query</param>
+            <param name=' query'>An <see cref='T:System.Management.ObjectQuery'/> specifying the query to be invoked</param>
+            <param name=' options'>An <see cref='T:System.Management.EnumerationOptions'/> specifying additional options to be used for the query.</param>
+            <example>
+               <code lang='C#'>ManagementScope scope = new ManagementScope("root\\MyApp");
+            SelectQuery q = new SelectQuery("SELECT * FROM MyClass");
+            EnumerationOptions o = new EnumerationOptions(null, InfiniteTimeout, 1, true, false, true);
+            ManagementObjectSearcher s = new ManagementObjectSearcher(scope, q, o);
+               </code>
+               <code lang='VB'>Dim scope As New ManagementScope("root\MyApp")
+            Dim q As New SelectQuery("SELECT * FROM MyClass")
+            Dim o As New EnumerationOptions(Null, InfiniteTimeout, 1, True, False, True)
+            Dim s As New ManagementObjectSearcher(scope, q, o)
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementObjectSearcher.Scope">
+            <summary>
+               <para>Gets or sets the scope in which to look for objects (the scope represents a WMI namespace).</para>
+            </summary>
+            <value>
+               <para> The scope (namespace) in which to look for objects.</para>
+            </value>
+            <remarks>
+               <para>When the value of this property is changed,
+                  the <see cref='T:System.Management.ManagementObjectSearcher'/>
+                  is re-bound to the new scope.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s = new ManagementObjectSearcher();
+            s.Scope = new ManagementScope("root\\MyApp");
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher()
+            Dim ms As New ManagementScope ("root\MyApp")
+            s.Scope = ms
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementObjectSearcher.Query">
+            <summary>
+               <para> Gets or sets the query to be invoked in the
+                  searcher (that is, the criteria to be applied to the search for management objects).</para>
+            </summary>
+            <value>
+               <para> The criteria to apply to the query.</para>
+            </value>
+            <remarks>
+            <para>When the value of this property is changed, the <see cref='T:System.Management.ManagementObjectSearcher'/>
+            is reset to use the new query.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ManagementObjectSearcher.Options">
+            <summary>
+               <para>Gets or sets the options for how to search for objects.</para>
+            </summary>
+            <value>
+               <para>The options for how to search for objects.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.Get">
+            <overload>
+               Invokes the specified WMI query and returns the resulting collection.
+            </overload>
+            <summary>
+               <para>Invokes the specified WMI query and returns the
+                  resulting collection.</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementObjectCollection'/> containing the objects that match the
+               specified query.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.Get(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Invokes the WMI query, asynchronously, and binds to a watcher to deliver the results.</para>
+            </summary>
+            <param name='watcher'>The watcher that raises events triggered by the operation. </param>
+        </member>
+        <member name="T:System.Management.ObjectReadyEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementOperationObserver.ObjectReady'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.CompletedEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementOperationObserver.Completed'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ProgressEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementOperationObserver.Progress'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ObjectPutEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementOperationObserver.ObjectPut'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementOperationObserver">
+             <summary>
+                <para>Used to manage asynchronous operations and handle management information and events received asynchronously.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to read a ManagementObject asychronously
+             // using the ManagementOperationObserver object.
+            
+             class Sample_ManagementOperationObserver {
+                 public static int Main(string[] args) {
+            
+                     //Set up a handler for the asynchronous callback
+                     ManagementOperationObserver observer = new ManagementOperationObserver();
+                     MyHandler completionHandler = new MyHandler();
+                     observer.Completed += new CompletedEventHandler(completionHandler.Done);
+            
+                     //Invoke the asynchronous read of the object
+                     ManagementObject disk = new ManagementObject("Win32_logicaldisk='C:'");
+                     disk.Get(observer);
+            
+                     //For the purpose of this sample, we keep the main
+                     // thread alive until the asynchronous operation is completed.
+            
+                     while (!completionHandler.IsComplete) {
+                         System.Threading.Thread.Sleep(500);
+                     }
+            
+                     Console.WriteLine("Size= " + disk["Size"] + " bytes.");
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler
+                 {
+                     private bool isComplete = false;
+            
+                     public void Done(object sender, CompletedEventArgs e) {
+                         isComplete = true;
+                     }
+            
+                     public bool IsComplete {
+                         get {
+                             return isComplete;
+                         }
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to read a ManagementObject asychronously
+             ' using the ManagementOperationObserver object.
+            
+             Class Sample_ManagementOperationObserver
+                 Overloads Public Shared Function Main(args() As String) As Integer
+            
+                     'Set up a handler for the asynchronous callback
+                     Dim observer As New ManagementOperationObserver()
+                     Dim completionHandler As New MyHandler()
+                     AddHandler observer.Completed, AddressOf completionHandler.Done
+            
+                     ' Invoke the object read asynchronously
+                     Dim disk As New ManagementObject("Win32_logicaldisk='C:'")
+                     disk.Get(observer)
+            
+                     ' For the purpose of this sample, we keep the main
+                     ' thread alive until the asynchronous operation is finished.
+                     While Not completionHandler.IsComplete Then
+                         System.Threading.Thread.Sleep(500)
+                     End While
+            
+                     Console.WriteLine("Size = " + disk("Size").ToString() &amp; " bytes")
+            
+                     Return 0
+                 End Function
+            
+                 Public Class MyHandler
+                     Private _isComplete As Boolean = False
+            
+                     Public Sub Done(sender As Object, e As CompletedEventArgs)
+                         _isComplete = True
+                     End Sub 'Done
+            
+                     Public ReadOnly Property IsComplete() As Boolean
+                         Get
+                             Return _isComplete
+                         End Get
+                     End Property
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="E:System.Management.ManagementOperationObserver.ObjectReady">
+            <summary>
+               <para> Occurs when a new object is available.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementOperationObserver.Completed">
+            <summary>
+               <para> Occurs when an operation has completed.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementOperationObserver.Progress">
+            <summary>
+               <para> Occurs to indicate the progress of an ongoing operation.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementOperationObserver.ObjectPut">
+            <summary>
+               <para> Occurs when an object has been successfully committed.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementOperationObserver.#ctor">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementOperationObserver'/> class. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementOperationObserver.Cancel">
+            <summary>
+               <para> Cancels all outstanding operations.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementOperationObserver.FireObjectReady(System.Management.ObjectReadyEventArgs)">
+            <summary>
+            Fires the ObjectReady event to whomsoever is listening
+            </summary>
+            <param name="args"> </param>
+        </member>
+        <member name="T:System.Management.WmiDelegateInvoker">
+            <summary>
+            This class handles the posting of events to delegates. For each event
+            it queues a set of requests (one per target delegate) to the thread pool
+            to handle the event. It ensures that no single delegate can throw
+            an exception that prevents the event from reaching any other delegates.
+            It also ensures that the sender does not signal the processing of the
+            WMI event as "done" until all target delegates have signalled that they are
+            done.
+            </summary>
+        </member>
+        <member name="M:System.Management.WmiDelegateInvoker.FireEventToDelegates(System.MulticastDelegate,System.Management.ManagementEventArgs)">
+            <summary>
+            Custom handler for firing a WMI event to a list of delegates. We use
+            the process thread pool to handle the firing.
+            </summary>
+            <param name="md">The MulticastDelegate representing the collection
+            of targets for the event</param>
+            <param name="args">The accompanying event arguments</param>
+        </member>
+        <member name="T:System.Management.AuthenticationLevel">
+            <summary>
+               <para>Describes the authentication level to be used to connect to WMI. This is used for the COM connection to WMI.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Default">
+            <summary>
+               <para>The default COM authentication level. WMI uses the default Windows Authentication setting.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.None">
+            <summary>
+               <para> No COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Connect">
+            <summary>
+               <para> Connect-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Call">
+            <summary>
+               <para> Call-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Packet">
+            <summary>
+               <para> Packet-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.PacketIntegrity">
+            <summary>
+               <para>Packet Integrity-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.PacketPrivacy">
+            <summary>
+               <para>Packet Privacy-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Unchanged">
+            <summary>
+               <para>The default COM authentication level. WMI uses the default Windows Authentication setting.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ImpersonationLevel">
+            <summary>
+               <para>Describes the impersonation level to be used to connect to WMI.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Default">
+            <summary>
+               <para>Default impersonation.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Anonymous">
+            <summary>
+               <para> Anonymous COM impersonation level that hides the
+                  identity of the caller. Calls to WMI may fail
+                  with this impersonation level.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Identify">
+            <summary>
+               <para> Identify-level COM impersonation level that allows objects
+                  to query the credentials of the caller. Calls to
+                  WMI may fail with this impersonation level.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Impersonate">
+            <summary>
+               <para> Impersonate-level COM impersonation level that allows
+                  objects to use the credentials of the caller. This is the recommended impersonation level for WMI calls.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Delegate">
+            <summary>
+               <para> Delegate-level COM impersonation level that allows objects
+                  to permit other objects to use the credentials of the caller. This
+                  level, which will work with WMI calls but may constitute an unnecessary
+                  security risk, is supported only under Windows 2000.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.PutType">
+            <summary>
+               <para>Describes the possible effects of saving an object to WMI when
+                  using <see cref='M:System.Management.ManagementObject.Put'/>.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.PutType.None">
+            <summary>
+               <para> Invalid Type </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.PutType.UpdateOnly">
+            <summary>
+               <para> Updates an existing object
+                  only; does not create a new object.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.PutType.CreateOnly">
+            <summary>
+               <para> Creates an object only;
+                  does not update an existing object.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.PutType.UpdateOrCreate">
+            <summary>
+               <para> Saves the object, whether
+                  updating an existing object or creating a new object.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementOptions">
+            <summary>
+               <para>
+                  Provides an abstract base class for all Options objects.</para>
+               <para>Options objects are used to customize different management operations. </para>
+               <para>Use one of the Options classes derived from this class, as
+                  indicated by the signature of the operation being performed.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementOptions.InfiniteTimeout">
+            <summary>
+               <para> Specifies an infinite timeout.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementOptions.Context">
+            <summary>
+               <para> Gets or sets a WMI context object. This is a
+                  name-value pairs list to be passed through to a WMI provider that supports
+                  context information for customized operation.</para>
+            </summary>
+            <value>
+               <para>A name-value pairs list to be passed through to a WMI provider that
+                  supports context information for customized operation.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementOptions.Timeout">
+            <summary>
+               <para>Gets or sets the timeout to apply to the operation.
+                  Note that for operations that return collections, this timeout applies to the
+                  enumeration through the resulting collection, not the operation itself
+                  (the <see cref='P:System.Management.EnumerationOptions.ReturnImmediately'/>
+                  property is used for the latter).</para>
+               This property is used to indicate that the operation should be performed semisynchronously.
+            </summary>
+            <value>
+            <para>The default value for this property is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/>
+            , which means the operation will block.
+            The value specified must be positive.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.EnumerationOptions">
+             <summary>
+                <para>Provides a base class for query and enumeration-related options
+                   objects.</para>
+                <para>Use this class to customize enumeration of management
+                   objects, traverse management object relationships, or query for
+                   management objects.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to enumerate all top-level WMI classes
+             // and subclasses in root/cimv2 namespace.
+             class Sample_EnumerationOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass newClass = new ManagementClass();
+                     EnumerationOptions options = new EnumerationOptions();
+                     options.EnumerateDeep = false;
+                     foreach (ManagementObject o in newClass.GetSubclasses(options)) {
+                         Console.WriteLine(o["__Class"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to enumerate all top-level WMI classes
+             ' and subclasses in root/cimv2 namespace.
+             Class Sample_EnumerationOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim newClass As New ManagementClass()
+                     Dim options As New EnumerationOptions()
+                     options.EnumerateDeep = False
+                     Dim o As ManagementObject
+                     For Each o In newClass.GetSubclasses(options)
+                         Console.WriteLine(o("__Class"))
+                     Next o
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.ReturnImmediately">
+            <summary>
+               <para>Gets or sets a value indicating whether the invoked operation should be
+                  performed in a synchronous or semisynchronous fashion. If this property is set
+                  to <see langword='true'/>, the enumeration is invoked and the call returns immediately. The actual
+                  retrieval of the results will occur when the resulting collection is walked.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the invoked operation should
+               be performed in a synchronous or semisynchronous fashion; otherwise,
+            <see langword='false'/>. The default value is <see langword='true'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.BlockSize">
+            <summary>
+               <para> Gets or sets the block size
+                  for block operations. When enumerating through a collection, WMI will return results in
+                  groups of the specified size.</para>
+            </summary>
+            <value>
+               <para>The default value is 1.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.Rewindable">
+            <summary>
+               <para>Gets or sets a value indicating whether the collection is assumed to be
+                  rewindable. If <see langword='true'/>, the objects in the
+                  collection will be kept available for multiple enumerations. If
+               <see langword='false'/>, the collection
+                  can only be enumerated one time.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the collection is assumed to
+               be rewindable; otherwise, <see langword='false'/>. The default value is
+            <see langword='true'/>.</para>
+            </value>
+            <remarks>
+               <para>A rewindable collection is more costly in memory
+                  consumption as all the objects need to be kept available at the same time.
+                  In a collection defined as non-rewindable, the objects are discarded after being returned
+                  in the enumeration.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.UseAmendedQualifiers">
+            <summary>
+               <para> Gets or sets a value indicating whether the objects returned from
+                  WMI should contain amended information. Typically, amended information is localizable
+                  information attached to the WMI object, such as object and property
+                  descriptions.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the objects returned from WMI
+               should contain amended information; otherwise, <see langword='false'/>. The
+               default value is <see langword='false'/>.</para>
+            </value>
+            <remarks>
+               <para>If descriptions and other amended information are not of
+                  interest, setting this property to <see langword='false'/>
+                  is more
+                  efficient.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.EnsureLocatable">
+            <summary>
+               <para>Gets or sets a value indicating whether to the objects returned should have
+                  locatable information in them. This ensures that the system properties, such as
+               <see langword='__PATH'/>, <see langword='__RELPATH'/>, and
+               <see langword='__SERVER'/>, are non-NULL. This flag can only be used in queries,
+                  and is ignored in enumerations.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if WMI
+               should ensure all returned objects have valid paths; otherwise,
+            <see langword='false'/>. The default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.PrototypeOnly">
+            <summary>
+               <para>Gets or sets a value indicating whether the query should return a
+                  prototype of the result set instead of the actual results. This flag is used for
+                  prototyping.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the
+               query should return a prototype of the result set instead of the actual results;
+               otherwise, <see langword='false'/>. The default value is
+            <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.DirectRead">
+            <summary>
+               <para> Gets or sets a value indicating whether direct access to the WMI provider is requested for the specified class,
+                  without any regard to its base class or derived classes.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if only
+               objects of the specified class should be received, without regard to derivation
+               or inheritance; otherwise, <see langword='false'/>. The default value is
+            <see langword='false'/>. </para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.EnumerateDeep">
+            <summary>
+               <para> Gets or sets a value indicating whether recursive enumeration is requested
+                  into all classes derived from the specified base class. If
+               <see langword='false'/>, only immediate derived
+                  class members are returned.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if recursive enumeration is requested
+               into all classes derived from the specified base class; otherwise,
+            <see langword='false'/>. The default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.EnumerationOptions.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.EnumerationOptions'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EnumerationOptions'/>
+            class with default values (see the individual property descriptions
+            for what the default values are). This is the default constructor. </para>
+            </summary>
+        </member>
+        <member name="M:System.Management.EnumerationOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan,System.Int32,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EnumerationOptions'/> class to be used for queries or enumerations,
+               allowing the user to specify values for the different options.</para>
+            </summary>
+            <param name='context'>The options context object containing provider-specific information that can be passed through to the provider.</param>
+            <param name=' timeout'>The timeout value for enumerating through the results.</param>
+            <param name=' blockSize'>The number of items to retrieve at one time from WMI.</param>
+            <param name=' rewindable'><see langword='true'/> to specify whether the result set is rewindable (=allows multiple traversal or one-time); otherwise, <see langword='false'/>.</param>
+            <param name=' returnImmediatley'><see langword='true'/> to specify whether the operation should return immediately (semi-sync) or block until all results are available; otherwise, <see langword='false'/> .</param>
+            <param name=' useAmendedQualifiers'><see langword='true'/> to specify whether the returned objects should contain amended (locale-aware) qualifiers; otherwise, <see langword='false'/> .</param>
+            <param name=' ensureLocatable'><see langword='true'/> to specify to WMI that it should ensure all returned objects have valid paths; otherwise, <see langword='false'/> .</param>
+            <param name=' prototypeOnly'><see langword='true'/> to return a prototype of the result set instead of the actual results; otherwise, <see langword='false'/> .</param>
+            <param name=' directRead'><see langword='true'/> to retrieve objects of only the specified class only or from derived classes as well; otherwise, <see langword='false'/> .</param>
+            <param name=' enumerateDeep'><see langword='true'/> to specify recursive enumeration in subclasses; otherwise, <see langword='false'/> .</param>
+        </member>
+        <member name="M:System.Management.EnumerationOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.EventWatcherOptions">
+             <summary>
+                <para> Specifies options for management event watching.</para>
+                <para>Use this class to customize subscriptions for watching management events. </para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to listen to an event using ManagementEventWatcher object.
+             class Sample_EventWatcherOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass newClass = new ManagementClass();
+                     newClass["__CLASS"] = "TestDeletionClass";
+                     newClass.Put();
+            
+                     EventWatcherOptions options = new EventWatcherOptions();
+                     ManagementEventWatcher watcher = new ManagementEventWatcher(null,
+                                                                                 new WqlEventQuery("__classdeletionevent"),
+                                                                                 options);
+                     MyHandler handler = new MyHandler();
+                     watcher.EventArrived += new EventArrivedEventHandler(handler.Arrived);
+                     watcher.Start();
+            
+                     // Delete class to trigger event
+                     newClass.Delete();
+            
+                     //For the purpose of this example, we will wait
+                     // two seconds before main thread terminates.
+                     System.Threading.Thread.Sleep(2000);
+            
+                     watcher.Stop();
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler
+                 {
+                    public void Arrived(object sender, EventArrivedEventArgs e) {
+                        Console.WriteLine("Class Deleted= " +
+                            ((ManagementBaseObject)e.NewEvent["TargetClass"])["__CLASS"]);
+                    }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to listen to an event using the ManagementEventWatcher object.
+             Class Sample_EventWatcherOptions
+                 Public Shared Sub Main()
+                     Dim newClass As New ManagementClass()
+                     newClass("__CLASS") = "TestDeletionClass"
+                     newClass.Put()
+            
+                     Dim options As _
+                         New EventWatcherOptions()
+                     Dim watcher As New ManagementEventWatcher( _
+                         Nothing, _
+                         New WqlEventQuery("__classdeletionevent"), _
+                         options)
+                     Dim handler As New MyHandler()
+                     AddHandler watcher.EventArrived, AddressOf handler.Arrived
+                     watcher.Start()
+            
+                     ' Delete class to trigger event
+                     newClass.Delete()
+            
+                     ' For the purpose of this example, we will wait
+                     ' two seconds before main thread terminates.
+                     System.Threading.Thread.Sleep(2000)
+                     watcher.Stop()
+                 End Sub
+            
+                 Public Class MyHandler
+                     Public Sub Arrived(sender As Object, e As EventArrivedEventArgs)
+                         Console.WriteLine("Class Deleted = " &amp; _
+                             CType(e.NewEvent("TargetClass"), ManagementBaseObject)("__CLASS"))
+                     End Sub
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.EventWatcherOptions.BlockSize">
+            <summary>
+               <para>Gets or sets the block size for block operations. When waiting for events, this
+                  value specifies how many events to wait for before returning.</para>
+            </summary>
+            <value>
+               <para>The default value is 1.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.EventWatcherOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EventWatcherOptions'/> class. </para>
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.EventWatcherOptions'/> class for event watching, using default values.
+               This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.EventWatcherOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan,System.Int32)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.EventWatcherOptions'/> class with the given
+               values.</para>
+            </summary>
+            <param name='context'>The options context object containing provider-specific information to be passed through to the provider. </param>
+            <param name=' timeout'>The timeout to wait for the next events.</param>
+            <param name=' blockSize'>The number of events to wait for in each block.</param>
+        </member>
+        <member name="M:System.Management.EventWatcherOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="T:System.Management.ObjectGetOptions">
+             <summary>
+                <para> Specifies options for getting a management object.</para>
+                Use this class to customize retrieval of a management object.
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to set a timeout value and list
+             // all amended qualifiers in a ManagementClass object.
+             class Sample_ObjectGetOptions
+             {
+                 public static int Main(string[] args) {
+                     // Request amended qualifiers
+                     ObjectGetOptions options =
+                         new ObjectGetOptions(null, new TimeSpan(0,0,0,5), true);
+                     ManagementClass diskClass =
+                         new ManagementClass("root/cimv2", "Win32_Process", options);
+                     foreach (QualifierData qualifier in diskClass.Qualifiers) {
+                         Console.WriteLine(qualifier.Name + ":" + qualifier.Value);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to set a timeout value and list
+             ' all amended qualifiers in a ManagementClass object.
+             Class Sample_ObjectGetOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     ' Request amended qualifiers
+                     Dim options As _
+                         New ObjectGetOptions(Nothing, New TimeSpan(0, 0, 0, 5), True)
+                     Dim diskClass As New ManagementClass( _
+                         "root/cimv2", _
+                         "Win32_Process", _
+                         options)
+                     Dim qualifier As QualifierData
+                     For Each qualifier In diskClass.Qualifiers
+                         Console.WriteLine(qualifier.Name &amp; ":" &amp; qualifier.Value)
+                     Next qualifier
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ObjectGetOptions.UseAmendedQualifiers">
+            <summary>
+               <para> Gets or sets a value indicating whether the objects returned from WMI should
+                  contain amended information. Typically, amended information is localizable information
+                  attached to the WMI object, such as object and property descriptions.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the objects returned from WMI
+               should contain amended information; otherwise, <see langword='false'/>. The
+               default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ObjectGetOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectGetOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectGetOptions'/> class for getting a WMI object, using
+               default values. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ObjectGetOptions.#ctor(System.Management.ManagementNamedValueCollection)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectGetOptions'/> class for getting a WMI object, using the
+               specified provider-specific context.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs context object to be passed through to the provider.</param>
+        </member>
+        <member name="M:System.Management.ObjectGetOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan,System.Boolean)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectGetOptions'/> class for getting a WMI object,
+               using the given options values.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs context object to be passed through to the provider.</param>
+            <param name=' timeout'>The length of time to let the operation perform before it times out. The default is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/> .</param>
+            <param name=' useAmendedQualifiers'><see langword='true'/> if the returned objects should contain amended (locale-aware) qualifiers; otherwise, <see langword='false'/>. </param>
+        </member>
+        <member name="M:System.Management.ObjectGetOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.PutOptions">
+             <summary>
+                <para> Specifies options for committing management
+                   object changes.</para>
+                <para>Use this class to customize how values are saved to a management object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to specify a PutOptions using
+             // PutOptions object when saving a ManagementClass object to
+             // the WMI respository.
+             class Sample_PutOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass newClass = new ManagementClass("root/default",
+                                                                    String.Empty,
+                                                                    null);
+                     newClass["__Class"] = "class999xc";
+            
+                     PutOptions options = new PutOptions();
+                     options.Type = PutType.UpdateOnly;
+            
+                     try
+                     {
+                         newClass.Put(options); //will fail if the class doesn't already exist
+                     }
+                     catch (ManagementException e)
+                     {
+                         Console.WriteLine("Couldn't update class: " + e.ErrorCode);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to specify a PutOptions using
+             ' PutOptions object when saving a ManagementClass object to
+             ' WMI respository.
+             Class Sample_PutOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim newClass As New ManagementClass( _
+                        "root/default", _
+                        String.Empty, _
+                        Nothing)
+                     newClass("__Class") = "class999xc"
+            
+                     Dim options As New PutOptions()
+                     options.Type = PutType.UpdateOnly 'will fail if the class doesn't already exist
+            
+                     Try
+                         newClass.Put(options)
+                     Catch e As ManagementException
+                         Console.WriteLine("Couldn't update class: " &amp; e.ErrorCode)
+                     End Try
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.PutOptions.UseAmendedQualifiers">
+            <summary>
+               <para> Gets or sets a value indicating whether the objects returned from WMI should
+                  contain amended information. Typically, amended information is localizable information
+                  attached to the WMI object, such as object and property descriptions.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the objects returned from WMI
+               should contain amended information; otherwise, <see langword='false'/>. The
+               default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PutOptions.Type">
+            <summary>
+               <para>Gets or sets the type of commit to be performed for the object.</para>
+            </summary>
+            <value>
+            <para>The default value is <see cref='F:System.Management.PutType.UpdateOrCreate'/>.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.PutOptions.#ctor">
+            <overload>
+            <para> Initializes a new instance of the <see cref='T:System.Management.PutOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.PutOptions'/> class for put operations, using default values.
+               This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.PutOptions.#ctor(System.Management.ManagementNamedValueCollection)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.PutOptions'/> class for committing a WMI object, using the
+               specified provider-specific context.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs context object to be passed through to the provider.</param>
+        </member>
+        <member name="M:System.Management.PutOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan,System.Boolean,System.Management.PutType)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.PutOptions'/> class for committing a WMI object, using
+               the specified option values.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs object to be passed through to the provider. </param>
+            <param name=' timeout'>The length of time to let the operation perform before it times out. The default is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/> .</param>
+            <param name=' useAmendedQualifiers'><see langword='true'/> if the returned objects should contain amended (locale-aware) qualifiers; otherwise, <see langword='false'/>. </param>
+            <param name=' putType'> The type of commit to be performed (update or create).</param>
+        </member>
+        <member name="M:System.Management.PutOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.DeleteOptions">
+             <summary>
+                <para> Specifies options for deleting a management
+                   object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to specify a timeout value
+             // when deleting a ManagementClass object.
+             class Sample_DeleteOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass newClass = new ManagementClass();
+                     newClass["__CLASS"] = "ClassToDelete";
+                     newClass.Put();
+            
+                     // Set deletion options: delete operation timeout value
+                     DeleteOptions opt = new DeleteOptions(null, new TimeSpan(0,0,0,5));
+            
+                     ManagementClass dummyClassToDelete =
+                         new ManagementClass("ClassToDelete");
+                     dummyClassToDelete.Delete(opt);
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to specify a timeout value
+             ' when deleting a ManagementClass object.
+             Class Sample_DeleteOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim newClass As New ManagementClass()
+                     newClass("__CLASS") = "ClassToDelete"
+                     newClass.Put()
+            
+                     ' Set deletion options: delete operation timeout value
+                     Dim opt As New DeleteOptions(Nothing, New TimeSpan(0, 0, 0, 5))
+            
+                     Dim dummyClassToDelete As New ManagementClass("ClassToDelete")
+                     dummyClassToDelete.Delete(opt)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.DeleteOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.DeleteOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.DeleteOptions'/> class for the delete operation, using default values.
+               This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.DeleteOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.DeleteOptions'/> class for a delete operation, using
+               the specified values.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs object to be passed through to the provider. </param>
+            <param name='timeout'>The length of time to let the operation perform before it times out. The default value is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/> . Setting this parameter will invoke the operation semisynchronously.</param>
+        </member>
+        <member name="M:System.Management.DeleteOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>A cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.InvokeMethodOptions">
+             <summary>
+                <para> Specifies options for invoking a management method.</para>
+                <para>Use this class to customize the execution of a method on a management
+                   object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to stop a system service.
+             class Sample_InvokeMethodOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject service =
+                         new ManagementObject("win32_service=\"winmgmt\"");
+                     InvokeMethodOptions options = new InvokeMethodOptions();
+                     options.Timeout = new TimeSpan(0,0,0,5);
+            
+                     ManagementBaseObject outParams = service.InvokeMethod("StopService", null, options);
+            
+                     Console.WriteLine("Return Status = " + outParams["ReturnValue"]);
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to stop a system service.
+             Class Sample_InvokeMethodOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim service As New ManagementObject("win32_service=""winmgmt""")
+                     Dim options As New InvokeMethodOptions()
+                     options.Timeout = New TimeSpan(0, 0, 0, 5)
+            
+                     Dim outParams As ManagementBaseObject = service.InvokeMethod( _
+                         "StopService", _
+                         Nothing, _
+                         options)
+            
+                     Console.WriteLine("Return Status = " &amp; _
+                         outParams("ReturnValue").ToString())
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.InvokeMethodOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.InvokeMethodOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.InvokeMethodOptions'/> class for the <see cref='M:System.Management.ManagementObject.InvokeMethod(System.String,System.Management.ManagementBaseObject,System.Management.InvokeMethodOptions)'/> operation, using default values.
+               This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.InvokeMethodOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.InvokeMethodOptions'/> class for an invoke operation using
+               the specified values.</para>
+            </summary>
+            <param name=' context'>A provider-specific, named-value pairs object to be passed through to the provider. </param>
+            <param name='timeout'>The length of time to let the operation perform before it times out. The default value is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/> . Setting this parameter will invoke the operation semisynchronously.</param>
+        </member>
+        <member name="M:System.Management.InvokeMethodOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.ConnectionOptions">
+             <summary>
+                <para> Specifies all settings required to make a WMI connection.</para>
+                <para>Use this class to customize a connection to WMI made via a
+                   ManagementScope object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to connect to remote machine
+             // using supplied credentials.
+             class Sample_ConnectionOptions
+             {
+                 public static int Main(string[] args) {
+                     ConnectionOptions options = new ConnectionOptions();
+                     options.Username = "domain\\username";
+                     options.Password = "password";
+                     ManagementScope scope = new ManagementScope(
+                         "\\\\servername\\root\\cimv2",
+                         options);
+                     try {
+                         scope.Connect();
+                         ManagementObject disk = new ManagementObject(
+                             scope,
+                             new ManagementPath("Win32_logicaldisk='c:'"),
+                             null);
+                         disk.Get();
+                     }
+                     catch (Exception e) {
+                         Console.WriteLine("Failed to connect: " + e.Message);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to connect to remote machine
+             ' using supplied credentials.
+             Class Sample_ConnectionOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim options As New ConnectionOptions()
+                     options.Username = "domain\username"
+                     options.Password = "password"
+                     Dim scope As New ManagementScope("\\servername\root\cimv2", options)
+                     Try
+                         scope.Connect()
+                         Dim disk As New ManagementObject(scope, _
+                             New ManagementPath("Win32_logicaldisk='c:'"), Nothing)
+                         disk.Get()
+                     Catch e As UnauthorizedAccessException
+                         Console.WriteLine(("Failed to connect: " + e.Message))
+                     End Try
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Locale">
+            <summary>
+               <para>Gets or sets the locale to be used for the connection operation.</para>
+            </summary>
+            <value>
+               <para>The default value is DEFAULTLOCALE.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Username">
+            <summary>
+               <para>Gets or sets the user name to be used for the connection operation.</para>
+            </summary>
+            <value>
+               <para>Null if the connection will use the currently logged-on user; otherwise, a string representing the user name. The default value is null.</para>
+            </value>
+            <remarks>
+               <para>If the user name is from a domain other than the current
+                  domain, the string may contain the domain name and user name, separated by a backslash:</para>
+               <c>
+                  <para>string username = "EnterDomainHere\\EnterUsernameHere";</para>
+               </c>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Password">
+            <summary>
+               <para>Sets the password for the specified user. The value can be set, but not retrieved.</para>
+            </summary>
+            <value>
+               <para> The default value is null. If the user name is also
+                  null, the credentials used will be those of the currently logged-on user.</para>
+            </value>
+            <remarks>
+               <para> A blank string ("") specifies a valid
+                  zero-length password.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.SecurePassword">
+            <summary>
+               <para>Sets the secure password for the specified user. The value can be set, but not retrieved.</para>
+            </summary>
+            <value>
+               <para> The default value is null. If the user name is also
+                  null, the credentials used will be those of the currently logged-on user.</para>
+            </value>
+            <remarks>
+               <para> A blank securestring ("") specifies a valid
+                  zero-length password.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Authority">
+            <summary>
+               <para>Gets or sets the authority to be used to authenticate the specified user.</para>
+            </summary>
+            <value>
+               <para>If not null, this property can contain the name of the
+                  Windows NT/Windows 2000 domain in which to obtain the user to
+                  authenticate.</para>
+            </value>
+            <remarks>
+               <para>
+                  The property must be passed
+                  as follows: If it begins with the string "Kerberos:", Kerberos
+                  authentication will be used and this property should contain a Kerberos principal name. For
+                  example, Kerberos:&lt;principal name&gt;.</para>
+               <para>If the property value begins with the string "NTLMDOMAIN:", NTLM
+                  authentication will be used and the property should contain a NTLM domain name.
+                  For example, NTLMDOMAIN:&lt;domain name&gt;. </para>
+               <para>If the property is null, NTLM authentication will be used and the NTLM domain
+                  of the current user will be used.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Impersonation">
+            <summary>
+               <para>Gets or sets the COM impersonation level to be used for operations in this connection.</para>
+            </summary>
+            <value>
+               <para>The COM impersonation level to be used for operations in
+                  this connection. The default value is <see cref='F:System.Management.ImpersonationLevel.Impersonate' qualify='true'/>, which indicates that the WMI provider can
+                  impersonate the client when performing the requested operations in this connection.</para>
+            </value>
+            <remarks>
+            <para>The <see cref='F:System.Management.ImpersonationLevel.Impersonate' qualify='true'/> setting is advantageous when the provider is
+               a trusted application or service. It eliminates the need for the provider to
+               perform client identity and access checks for the requested operations. However,
+               note that if for some reason the provider cannot be trusted, allowing it to
+               impersonate the client may constitute a security threat. In such cases, it is
+               recommended that this property be set by the client to a lower value, such as
+            <see cref='F:System.Management.ImpersonationLevel.Identify' qualify='true'/>. Note that this may cause failure of the
+               provider to perform the requested operations, for lack of sufficient permissions
+               or inability to perform access checks.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Authentication">
+            <summary>
+               <para>Gets or sets the COM authentication level to be used for operations in this connection.</para>
+            </summary>
+            <value>
+               <para>The COM authentication level to be used for operations
+                  in this connection. The default value is <see cref='F:System.Management.AuthenticationLevel.Unchanged' qualify='true'/>, which indicates that the
+                  client will use the authentication level requested by the server, according to
+                  the standard DCOM negotiation process.</para>
+            </value>
+            <remarks>
+               <para>On Windows 2000 and below, the WMI service will request
+                  Connect level authentication, while on Windows XP and higher it will request
+                  Packet level authentication. If the client requires a specific authentication
+                  setting, this property can be used to control the authentication level on this
+                  particular connection. For example, the property can be set to <see cref='F:System.Management.AuthenticationLevel.PacketPrivacy' qualify='true'/>
+                  if the
+                  client requires all communication to be encrypted.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.EnablePrivileges">
+            <summary>
+               <para>Gets or sets a value indicating whether user privileges need to be enabled for
+                  the connection operation. This property should only be used when the operation
+                  performed requires a certain user privilege to be enabled
+                  (for example, a machine reboot).</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if user privileges need to be
+               enabled for the connection operation; otherwise, <see langword='false'/>. The
+               default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ConnectionOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ConnectionOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ConnectionOptions'/> class for the connection operation, using default values. This is the
+               default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ConnectionOptions.#ctor(System.String,System.String,System.String,System.String,System.Management.ImpersonationLevel,System.Management.AuthenticationLevel,System.Boolean,System.Management.ManagementNamedValueCollection,System.TimeSpan)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ConnectionOptions'/> class to be used for a WMI
+               connection, using the specified values.</para>
+            </summary>
+            <param name='locale'>The locale to be used for the connection.</param>
+            <param name=' username'>The user name to be used for the connection. If null, the credentials of the currently logged-on user are used.</param>
+            <param name=' password'>The password for the given user name. If the user name is also null, the credentials used will be those of the currently logged-on user.</param>
+            <param name=' authority'><para>The authority to be used to authenticate the specified user.</para></param>
+            <param name=' impersonation'>The COM impersonation level to be used for the connection.</param>
+            <param name=' authentication'>The COM authentication level to be used for the connection.</param>
+            <param name=' enablePrivileges'><see langword='true'/>to enable special user privileges; otherwise, <see langword='false'/> . This parameter should only be used when performing an operation that requires special Windows NT user privileges.</param>
+            <param name=' context'>A provider-specific, named value pairs object to be passed through to the provider.</param>
+            <param name=' timeout'>Reserved for future use.</param>
+        </member>
+        <member name="M:System.Management.ConnectionOptions.#ctor(System.String,System.String,System.Security.SecureString,System.String,System.Management.ImpersonationLevel,System.Management.AuthenticationLevel,System.Boolean,System.Management.ManagementNamedValueCollection,System.TimeSpan)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ConnectionOptions'/> class to be used for a WMI
+               connection, using the specified values.</para>
+            </summary>
+            <param name='locale'>The locale to be used for the connection.</param>
+            <param name='username'>The user name to be used for the connection. If null, the credentials of the currently logged-on user are used.</param>
+            <param name='password'>The secure password for the given user name. If the user name is also null, the credentials used will be those of the currently logged-on user.</param>
+            <param name='authority'><para>The authority to be used to authenticate the specified user.</para></param>
+            <param name='impersonation'>The COM impersonation level to be used for the connection.</param>
+            <param name='authentication'>The COM authentication level to be used for the connection.</param>
+            <param name='enablePrivileges'><see langword='true'/>to enable special user privileges; otherwise, <see langword='false'/> . This parameter should only be used when performing an operation that requires special Windows NT user privileges.</param>
+            <param name='context'>A provider-specific, named value pairs object to be passed through to the provider.</param>
+            <param name='timeout'>Reserved for future use.</param>
+        </member>
+        <member name="M:System.Management.ConnectionOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.ManagementPath">
+             <summary>
+                <para>Provides a wrapper for parsing and building paths to WMI objects.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample displays all properties in a ManagementPath object.
+            
+             class Sample_ManagementPath
+             {
+                 public static int Main(string[] args) {
+                     ManagementPath path = new ManagementPath( "\\\\MyServer\\MyNamespace:Win32_logicaldisk='c:'");
+            
+                     // Results of full path parsing
+                     Console.WriteLine("Path: " + path.Path);
+                     Console.WriteLine("RelativePath: " + path.RelativePath);
+                     Console.WriteLine("Server: " + path.Server);
+                     Console.WriteLine("NamespacePath: " + path.NamespacePath);
+                     Console.WriteLine("ClassName: " + path.ClassName);
+                     Console.WriteLine("IsClass: " + path.IsClass);
+                     Console.WriteLine("IsInstance: " + path.IsInstance);
+                     Console.WriteLine("IsSingleton: " + path.IsSingleton);
+            
+                     // Change a portion of the full path
+                     path.Server = "AnotherServer";
+                     Console.WriteLine("New Path: " + path.Path);
+                     return 0;
+                }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             'This sample displays all properties in a ManagementPath object.
+             Class Sample_ManagementPath Overloads
+                 Public Shared Function Main(args() As String) As Integer
+                     Dim path As _ New
+                     ManagementPath("\\MyServer\MyNamespace:Win32_LogicalDisk='c:'")
+            
+                     ' Results of full path parsing
+                     Console.WriteLine("Path: " &amp; path.Path)
+                     Console.WriteLine("RelativePath: " &amp; path.RelativePath)
+                     Console.WriteLine("Server: " &amp; path.Server)
+                     Console.WriteLine("NamespacePath: " &amp; path.NamespacePath)
+                     Console.WriteLine("ClassName: " &amp; path.ClassName)
+                     Console.WriteLine("IsClass: " &amp; path.IsClass)
+                     Console.WriteLine("IsInstance: " &amp; path.IsInstance)
+                     Console.WriteLine("IsSingleton: " &amp; path.IsSingleton)
+            
+                     ' Change a portion of the full path
+                     path.Server= "AnotherServer"
+                     Console.WriteLine("New Path: " &amp; path.Path)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementPath.GetManagementPath(System.Management.IWbemClassObjectFreeThreaded)">
+            <summary>
+            Internal static "factory" method for making a new ManagementPath
+            from the system property of a WMI object
+            </summary>
+            <param name="wbemObject">The WMI object whose __PATH property will
+            be used to supply the returned object</param>
+        </member>
+        <member name="M:System.Management.ManagementPath.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.ManagementPath'/> class.
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementPath'/> class that is empty. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementPath.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementPath'/> class for the given path.</para>
+            </summary>
+            <param name='path'> The object path. </param>
+        </member>
+        <member name="M:System.Management.ManagementPath.ToString">
+            <summary>
+               <para>Returns the full object path as the string representation.</para>
+            </summary>
+            <returns>
+               A string containing the full object
+               path represented by this object. This value is equivalent to the value of the
+            <see cref='P:System.Management.ManagementPath.Path'/> property.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementPath.Clone">
+            <summary>
+            <para>Returns a copy of the <see cref='T:System.Management.ManagementPath'/>.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementPath.System#ICloneable#Clone">
+            <summary>
+            Standard Clone returns a copy of this ManagementPath as a generic "Object" type
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="P:System.Management.ManagementPath.DefaultPath">
+            <summary>
+               <para>Gets or sets the default scope path used when no scope is specified.
+                  The default scope is /-/ \\.\root\cimv2, and can be changed by setting this property.</para>
+            </summary>
+            <value>
+               <para>By default the scope value is /-/ \\.\root\cimv2, or a different scope path if
+                  the default was changed.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementPath.SetAsClass">
+            <summary>
+               <para> Sets the path as a new class path. This means that the path must have
+                  a class name but not key values.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementPath.SetAsSingleton">
+            <summary>
+               <para> Sets the path as a new singleton object path. This means that it is a path to an instance but
+                  there are no key values.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementPath.Path">
+            <summary>
+               <para> Gets or sets the string representation of the full path in the object.</para>
+            </summary>
+            <value>
+               <para>A string containing the full path
+                  represented in this object.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.RelativePath">
+            <summary>
+               <para> Gets or sets the relative path: class name and keys only.</para>
+            </summary>
+            <value>
+               A string containing the relative
+               path (not including the server and namespace portions) represented in this
+               object.
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.Server">
+            <summary>
+               <para>Gets or sets the server part of the path.</para>
+            </summary>
+            <value>
+               A string containing the server name
+               from the path represented in this object.
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.NamespacePath">
+            <summary>
+               <para>Gets or sets the namespace part of the path. Note that this does not include
+                  the server name, which can be retrieved separately.</para>
+            </summary>
+            <value>
+               A string containing the namespace
+               portion of the path represented in this object.
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.ClassName">
+            <summary>
+               Gets or sets the class portion of the path.
+            </summary>
+            <value>
+               A string containing the name of the
+               class.
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.IsClass">
+            <summary>
+               <para>Gets or sets a value indicating whether this is a class path.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this is a class path; otherwise,
+            <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.IsInstance">
+            <summary>
+               <para>Gets or sets a value indicating whether this is an instance path.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this is an instance path; otherwise,
+            <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.IsSingleton">
+            <summary>
+               <para>Gets or sets a value indicating whether this is a singleton instance path.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this is a singleton instance path; otherwise,
+            <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.ManagementPathConverter">
+            <summary>
+            Converts a String to a ManagementPath
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementPathConverter.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Determines if this converter can convert an object in the given source type to the native type of the converter.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='sourceType'>A Type that represents the type you wish to convert from.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementPathConverter.CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Gets a value indicating whether this converter can convert an object to the given destination type using the context.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='destinationType'>A Type that represents the type you wish to convert to.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementPathConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
+            <summary>
+                 Converts the given object to another type.  The most common types to convert
+                 are to and from a string object.  The default implementation will make a call
+                 to ToString on the object if the object is valid and if the destination
+                 type is string.  If this cannot convert to the desitnation type, this will
+                 throw a NotSupportedException.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='culture'>A CultureInfo object. If a null reference (Nothing in Visual Basic) is passed, the current culture is assumed.</param>
+            <param name='value'>The Object to convert.</param>
+            <param name='destinationType'>The Type to convert the value parameter to.</param>
+            <returns>An Object that represents the converted value.</returns>
+        </member>
+        <member name="T:System.Management.ManagementQuery">
+            <summary>
+               <para> Provides an abstract base class for all management query objects.</para>
+            </summary>
+            <remarks>
+               <para> This class is abstract; only
+                  derivatives of it are actually used in the API.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="P:System.Management.ManagementQuery.QueryString">
+            <summary>
+               <para>Gets or sets the query in text format.</para>
+            </summary>
+            <value>
+               <para> If the query object is
+                  constructed with no parameters, the property is null until specifically set. If the
+                  object was constructed with a specified query, the property returns the specified
+                  query string.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementQuery.QueryLanguage">
+            <summary>
+               <para> Gets or sets the query language used in the query
+                  string, defining the format of the query string.</para>
+            </summary>
+            <value>
+               <para>Can be set to any supported query
+                  language. "WQL" is the only value supported intrinsically by WMI.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementQuery.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="T:System.Management.ObjectQuery">
+             <summary>
+                <para> Represents a management query that returns instances or classes.</para>
+             </summary>
+             <remarks>
+                <para>This class or its derivatives are used to specify a
+                   query in the <see cref='T:System.Management.ManagementObjectSearcher'/>. Use
+                   a more specific query class whenever possible.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates creating a query.
+            
+             class Sample_ObjectQuery
+             {
+                 public static int Main(string[] args)
+                 {
+                     ObjectQuery objectQuery = new ObjectQuery("select * from Win32_Share");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(objectQuery);
+                     foreach (ManagementObject share in searcher.Get())
+                     {
+                         Console.WriteLine("Share = " + share["Name"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates creating a query.
+            
+             Class Sample_ObjectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim objectQuery As New ObjectQuery("select * from Win32_Share")
+                     Dim searcher As New ManagementObjectSearcher(objectQuery)
+                     Dim share As ManagementObject
+                     For Each share In searcher.Get()
+                         Console.WriteLine("Share = " &amp; share("Name"))
+                     Next share
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ObjectQuery.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectQuery'/>
+            class.</para>
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ObjectQuery'/>
+            class with no initialized values. This
+            is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ObjectQuery.#ctor(System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ObjectQuery'/>
+            class
+            for a specific query string.</para>
+            </summary>
+            <param name='query'>The string representation of the query.</param>
+        </member>
+        <member name="M:System.Management.ObjectQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ObjectQuery'/>
+            class for a specific
+            query string and language.</para>
+            </summary>
+            <param name='language'>The query language in which this query is specified.</param>
+            <param name=' query'>The string representation of the query.</param>
+        </member>
+        <member name="M:System.Management.ObjectQuery.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="T:System.Management.EventQuery">
+             <summary>
+                <para> Represents a WMI event query.</para>
+             </summary>
+             <remarks>
+                <para> Objects of this class or its derivatives are used in
+                <see cref='T:System.Management.ManagementEventWatcher'/> to subscribe to
+                   WMI events. Use more specific derivatives of this class whenever possible.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to subscribe to an event
+             // using the EventQuery object.
+            
+             class Sample_EventQuery
+             {
+                 public static int Main(string[] args)
+                 {
+                     //For this example, we make sure we have an arbitrary class on root\default
+                     ManagementClass newClass = new ManagementClass(
+                         "root\\default",
+                         String.Empty,
+                         null);
+                     newClass["__Class"] = "TestWql";
+                     newClass.Put();
+            
+                     //Create a query object for watching for class deletion events
+                     EventQuery eventQuery = new EventQuery("select * from __classdeletionevent");
+            
+                     //Initialize an event watcher object with this query
+                     ManagementEventWatcher watcher = new ManagementEventWatcher(
+                         new ManagementScope("root/default"),
+                         eventQuery);
+            
+                     //Set up a handler for incoming events
+                     MyHandler handler = new MyHandler();
+                     watcher.EventArrived += new EventArrivedEventHandler(handler.Arrived);
+            
+                     //Start watching for events
+                     watcher.Start();
+            
+                     //For this example, we delete the class to trigger an event
+                     newClass.Delete();
+            
+                     //Nothing better to do - we loop to wait for an event to arrive.
+                     while (!handler.IsArrived) {
+                          System.Threading.Thread.Sleep(1000);
+                     }
+            
+                     //In this example we only want to wait for one event, so we can stop watching
+                     watcher.Stop();
+            
+                     //Get some values from the event.
+                     //Note: this can also be done in the event handler.
+                     ManagementBaseObject eventArg =
+                         (ManagementBaseObject)(handler.ReturnedArgs.NewEvent["TargetClass"]);
+                     Console.WriteLine("Class Deleted = " + eventArg["__CLASS"]);
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler
+                 {
+                     private bool isArrived = false;
+                     private EventArrivedEventArgs args;
+            
+                     //Handles the event when it arrives
+                     public void Arrived(object sender, EventArrivedEventArgs e) {
+                         args = e;
+                         isArrived = true;
+                     }
+            
+                     //Public property to get at the event information stored in the handler
+                     public EventArrivedEventArgs ReturnedArgs {
+                         get {
+                             return args;
+                         }
+                     }
+            
+                     //Used to determine whether the event has arrived or not.
+                     public bool IsArrived {
+                         get {
+                             return isArrived;
+                         }
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to subscribe an event
+             ' using the EventQuery object.
+            
+             Class Sample_EventQuery
+                 Public Shared Sub Main()
+            
+                     'For this example, we make sure we have an arbitrary class on root\default
+                     Dim newClass As New ManagementClass( _
+                         "root\default", _
+                         String.Empty, Nothing)
+                         newClass("__Class") = "TestWql"
+                         newClass.Put()
+            
+                     'Create a query object for watching for class deletion events
+                     Dim eventQuery As New EventQuery("select * from __classdeletionevent")
+            
+                     'Initialize an event watcher object with this query
+                     Dim watcher As New ManagementEventWatcher( _
+                         New ManagementScope("root/default"), _
+                         eventQuery)
+            
+                     'Set up a handler for incoming events
+                     Dim handler As New MyHandler()
+                     AddHandler watcher.EventArrived, AddressOf handler.Arrived
+            
+                     'Start watching for events
+                     watcher.Start()
+            
+                     'For this example, we delete the class to trigger an event
+                     newClass.Delete()
+            
+                     'Nothing better to do - we loop to wait for an event to arrive.
+                     While Not handler.IsArrived
+                         Console.Write("0")
+                         System.Threading.Thread.Sleep(1000)
+                     End While
+            
+                     'In this example we only want to wait for one event, so we can stop watching
+                     watcher.Stop()
+            
+                     'Get some values from the event
+                     'Note: this can also be done in the event handler.
+                     Dim eventArg As ManagementBaseObject = CType( _
+                         handler.ReturnedArgs.NewEvent("TargetClass"), _
+                         ManagementBaseObject)
+                     Console.WriteLine(("Class Deleted = " + eventArg("__CLASS")))
+            
+                 End Sub
+            
+                 Public Class MyHandler
+                     Private _isArrived As Boolean = False
+                     Private args As EventArrivedEventArgs
+            
+                     'Handles the event when it arrives
+                     Public Sub Arrived(sender As Object, e As EventArrivedEventArgs)
+                         args = e
+                         _isArrived = True
+                     End Sub
+            
+                     'Public property to get at the event information stored in the handler
+                     Public ReadOnly Property ReturnedArgs() As EventArrivedEventArgs
+                         Get
+                             Return args
+                         End Get
+                     End Property
+            
+                     'Used to determine whether the event has arrived or not.
+                     Public ReadOnly Property IsArrived() As Boolean
+                         Get
+                             Return _isArrived
+                         End Get
+                     End Property
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.EventQuery.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EventQuery'/>
+            class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EventQuery'/>
+            class. This is the
+            default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.EventQuery.#ctor(System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.EventQuery'/>
+            class for the specified query.</para>
+            </summary>
+            <param name='query'>A textual representation of the event query.</param>
+        </member>
+        <member name="M:System.Management.EventQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.EventQuery'/>
+            class for the specified
+            language and query.</para>
+            </summary>
+            <param name='language'>The language in which the query string is specified. </param>
+            <param name=' query'>The string representation of the query.</param>
+        </member>
+        <member name="M:System.Management.EventQuery.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="T:System.Management.WqlObjectQuery">
+             <summary>
+                <para> Represents a WMI data query in WQL format.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to use a WqlObjectQuery class to
+             // perform an object query.
+            
+             class Sample_WqlObjectQuery
+             {
+                 public static int Main(string[] args) {
+                     WqlObjectQuery objectQuery = new WqlObjectQuery("select * from Win32_Share");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(objectQuery);
+            
+                     foreach (ManagementObject share in searcher.Get()) {
+                         Console.WriteLine("Share = " + share["Name"]);
+                     }
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrate how to use a WqlObjectQuery class to
+             ' perform an object query.
+            
+             Class Sample_WqlObjectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim objectQuery As New WqlObjectQuery("select * from Win32_Share")
+                     Dim searcher As New ManagementObjectSearcher(objectQuery)
+            
+                     Dim share As ManagementObject
+                     For Each share In searcher.Get()
+                         Console.WriteLine("Share = " &amp; share("Name"))
+                     Next share
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.WqlObjectQuery.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.WqlObjectQuery'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.WqlObjectQuery'/> class. This is the
+               default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.WqlObjectQuery.#ctor(System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlObjectQuery'/> class initialized to the
+               specified query.</para>
+            </summary>
+            <param name='query'><para> The representation of the data query.</para></param>
+        </member>
+        <member name="P:System.Management.WqlObjectQuery.QueryLanguage">
+            <summary>
+               <para>Gets or sets the language of the query.</para>
+            </summary>
+            <value>
+               <para> The value of this
+                  property is always "WQL".</para>
+            </value>
+        </member>
+        <member name="M:System.Management.WqlObjectQuery.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.SelectQuery">
+             <summary>
+                <para> Represents a WQL SELECT data query.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to perform a WQL select query.
+            
+             class Sample_SelectQuery
+             {
+                 public static int Main(string[] args) {
+                     SelectQuery selectQuery = new SelectQuery("win32_logicaldisk");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(selectQuery);
+            
+                     foreach (ManagementObject disk in searcher.Get()) {
+                         Console.WriteLine(disk.ToString());
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to perform a WQL select query.
+            
+             Class Sample_SelectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim selectQuery As New SelectQuery("win32_logicaldisk")
+                     Dim searcher As New ManagementObjectSearcher(selectQuery)
+            
+                     Dim disk As ManagementObject
+                     For Each disk In  searcher.Get()
+                         Console.WriteLine(disk.ToString())
+                     Next disk
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+            class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+            class. This is the
+            default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor(System.String)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/> class for the specified
+                query or the specified class name.</para>
+             </summary>
+             <param name='queryOrClassName'>The entire query or the class name to use in the query. The parser in this class attempts to parse the string as a valid WQL SELECT query. If the parser is unsuccessful, it assumes the string is a class name.</param>
+             <example>
+                <code lang='C#'>SelectQuery s = new SelectQuery("SELECT * FROM Win32_Service WHERE State='Stopped');
+            
+             or
+            
+             //This is equivalent to "SELECT * FROM Win32_Service"
+             SelectQuery s = new SelectQuery("Win32_Service");
+                </code>
+                <code lang='VB'>Dim s As New SelectQuery("SELECT * FROM Win32_Service WHERE State='Stopped')
+            
+             or
+            
+             //This is equivalent to "SELECT * FROM Win32_Service"
+             Dim s As New SelectQuery("Win32_Service")
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+            class with the specified
+            class name and condition.</para>
+            </summary>
+            <param name='className'>The name of the class to select in the query.</param>
+            <param name=' condition'>The condition to be applied in the query.</param>
+            <example>
+               <code lang='C#'>SelectQuery s = new SelectQuery("Win32_Process", "HandleID=1234");
+               </code>
+               <code lang='VB'>Dim s As New SelectQuery("Win32_Process", "HandleID=1234")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor(System.String,System.String,System.String[])">
+             <summary>
+             <para> Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+             class with the specified
+             class name and condition, selecting only the specified properties.</para>
+             </summary>
+             <param name='className'>The name of the class from which to select.</param>
+             <param name='condition'>The condition to be applied to instances of the selected class.</param>
+             <param name='selectedProperties'>An array of property names to be returned in the query results.</param>
+             <example>
+                <code lang='C#'>String[] properties = {"VariableName", "VariableValue"};
+            
+             SelectQuery s = new SelectQuery("Win32_Environment",
+                                             "User='&lt;system&gt;'",
+                                             properties);
+                </code>
+                <code lang='VB'>Dim properties As String[] = {"VariableName", "VariableValue"}
+            
+             Dim s As New SelectQuery("Win32_Environment", _
+                                      "User=""&lt;system&gt;""", _
+                                      properties)
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor(System.Boolean,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+            class for a schema query, optionally specifying a condition. For schema queries,
+            only the <paramref name="condition"/> parameter is valid.</para>
+            </summary>
+            <param name='isSchemaQuery'><see langword='true'/>to indicate that this is a schema query; otherwise, <see langword='false'/>. A <see langword='false'/> value is invalid in this constructor.</param>
+            <param name='condition'>The condition to be applied to form the result set of classes.</param>
+            <example>
+               <code lang='C#'>SelectQuery s = new SelectQuery(true, "__CLASS = 'Win32_Service'");
+               </code>
+               <code lang='VB'>Dim s As New SelectQuery(true, "__CLASS = ""Win32_Service""")
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.SelectQuery.QueryString">
+            <summary>
+            <para>Gets or sets the query in the <see cref='T:System.Management.SelectQuery'/>, in string form.</para>
+            </summary>
+            <value>
+               <para>A string representing the query.</para>
+            </value>
+            <remarks>
+               <para> Setting this
+                  property value overrides any previous value stored in the object. In addition, setting this
+                  property causes the other members of the object to be updated when the string
+                  is reparsed.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>SelectQuery s = new SelectQuery();
+            s.QueryString = "SELECT * FROM Win32_LogicalDisk";
+               </code>
+               <code lang='VB'>Dim s As New SelectQuery()
+            s.QueryString = "SELECT * FROM Win32_LogicalDisk"
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.SelectQuery.IsSchemaQuery">
+            <summary>
+               <para>Gets or sets a value indicating whether this query is a schema query or an instances query.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this query
+               should be evaluated over the schema; <see langword='false'/> if the query should
+               be evaluated over instances.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new query type.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.SelectQuery.ClassName">
+             <summary>
+                <para>Gets or sets the class name to be selected from in the query.</para>
+             </summary>
+             <value>
+                <para>A string representing the name of the
+                   class.</para>
+             </value>
+             <remarks>
+                <para> Setting this property value
+                   overrides any previous value stored in the object. The query string is
+                   rebuilt to reflect the new class name.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>SelectQuery s = new SelectQuery("SELECT * FROM Win32_LogicalDisk");
+             Console.WriteLine(s.QueryString); //output is : SELECT * FROM Win32_LogicalDisk
+            
+             s.ClassName = "Win32_Process";
+             Console.WriteLine(s.QueryString); //output is : SELECT * FROM Win32_Process
+                </code>
+                <code lang='VB'>Dim s As New SelectQuery("SELECT * FROM Win32_LogicalDisk")
+             Console.WriteLine(s.QueryString)  'output is : SELECT * FROM Win32_LogicalDisk
+            
+             s.ClassName = "Win32_Process"
+             Console.WriteLine(s.QueryString)  'output is : SELECT * FROM Win32_Process
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.SelectQuery.Condition">
+            <summary>
+               <para>Gets or sets the condition to be applied in the SELECT
+                  query.</para>
+            </summary>
+            <value>
+               A string containing the condition to
+               be applied in the SELECT query.
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value
+                  stored in the object. The query string is rebuilt to reflect the new
+                  condition.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.SelectQuery.SelectedProperties">
+            <summary>
+               <para> Gets or sets an array of property names to be
+                  selected in the query.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Collections.Specialized.StringCollection'/> containing the names of the
+               properties to be selected in the query.</para>
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value stored
+                  in the object. The query string is rebuilt to reflect the new
+                  properties.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.SelectQuery.BuildQuery">
+            <summary>
+             Builds the query string according to the current property values.
+            </summary>
+        </member>
+        <member name="M:System.Management.SelectQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="M:System.Management.SelectQuery.Clone">
+            <summary>
+               <para> Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.RelatedObjectQuery">
+             <summary>
+                <para> Represents a WQL ASSOCIATORS OF data query.
+                   It can be used for both instances and schema queries.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to query all instances associated
+             // with Win32_LogicalDisk='C:'.
+            
+             class Sample_RelatedObjectQuery
+             {
+                 public static int Main(string[] args) {
+            
+                     //This query requests all objects related to the 'C:' drive.
+                     RelatedObjectQuery relatedQuery =
+                         new RelatedObjectQuery("win32_logicaldisk='c:'");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(relatedQuery);
+            
+                     foreach (ManagementObject relatedObject in searcher.Get()) {
+                         Console.WriteLine(relatedObject.ToString());
+                     }
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to query all instances associated
+             ' with Win32_LogicalDisk='C:'.
+            
+             Class Sample_RelatedObjectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+            
+                     'This query requests all objects related to the 'C:' drive.
+                     Dim relatedQuery As New RelatedObjectQuery("win32_logicaldisk='c:'")
+                     Dim searcher As New ManagementObjectSearcher(relatedQuery)
+            
+                     Dim relatedObject As ManagementObject
+                     For Each relatedObject In  searcher.Get()
+                         Console.WriteLine(relatedObject.ToString())
+                     Next relatedObject
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.RelatedObjectQuery'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/> class. This is the
+               default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor(System.String)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/>class. If the specified string can be succesfully parsed as
+                a WQL query, it is considered to be the query string; otherwise, it is assumed to be the path of the source
+                object for the query. In this case, the query is assumed to be an instance query. </para>
+             </summary>
+             <param name='queryOrSourceObject'>The query string or the path of the source object.</param>
+             <example>
+                <code lang='C#'>//This query retrieves all objects related to the 'mymachine' computer system
+             //It specifies the full query string in the constructor
+             RelatedObjectQuery q =
+                 new RelatedObjectQuery("associators of {Win32_ComputerSystem.Name='mymachine'}");
+            
+             //or
+            
+             //This query retrieves all objects related to the 'Alerter' service
+             //It specifies only the object of interest in the constructor
+             RelatedObjectQuery q =
+                 new RelatedObjectQuery("Win32_Service.Name='Alerter'");
+                </code>
+                <code lang='VB'>'This query retrieves all objects related to the 'mymachine' computer system
+             'It specifies the full query string in the constructor
+             Dim q As New RelatedObjectQuery("associators of {Win32_ComputerSystem.Name='mymachine'}")
+            
+             'or
+            
+             'This query retrieves all objects related to the 'Alerter' service
+             'It specifies only the object of interest in the constructor
+             Dim q As New RelatedObjectQuery("Win32_Service.Name='Alerter'")
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/> class for the given source object and related class.
+               The query is assumed to be an instance query (as opposed to a schema query).</para>
+            </summary>
+            <param name='sourceObject'>The path of the source object for this query.</param>
+            <param name='relatedClass'>The related objects class.</param>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor(System.String,System.String,System.String,System.String,System.String,System.String,System.String,System.Boolean)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/> class for the given set of parameters.
+               The query is assumed to be an instance query (as opposed to a schema query).</para>
+            </summary>
+            <param name='sourceObject'>The path of the source object.</param>
+            <param name='relatedClass'>The related objects required class.</param>
+            <param name='relationshipClass'>The relationship type.</param>
+            <param name='relatedQualifier'>The qualifier required to be present on the related objects.</param>
+            <param name='relationshipQualifier'>The qualifier required to be present on the relationships.</param>
+            <param name='relatedRole'>The role that the related objects are required to play in the relationship.</param>
+            <param name='thisRole'>The role that the source object is required to play in the relationship.</param>
+            <param name='classDefinitionsOnly'><see langword='true'/>to return only the class definitions of the related objects; otherwise, <see langword='false'/> .</param>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor(System.Boolean,System.String,System.String,System.String,System.String,System.String,System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/> class for a schema query using the given set
+               of parameters. This constructor is used for schema queries only: the first
+               parameter must be set to <see langword='true'/>
+               .</para>
+            </summary>
+            <param name='isSchemaQuery'><see langword='true'/>to indicate that this is a schema query; otherwise, <see langword='false'/> .</param>
+            <param name='sourceObject'>The path of the source class.</param>
+            <param name='relatedClass'>The related objects' required base class.</param>
+            <param name='relationshipClass'>The relationship type.</param>
+            <param name='relatedQualifier'>The qualifier required to be present on the related objects.</param>
+            <param name='relationshipQualifier'>The qualifier required to be present on the relationships.</param>
+            <param name='relatedRole'>The role that the related objects are required to play in the relationship.</param>
+            <param name='thisRole'>The role that the source class is required to play in the relationship.</param>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.IsSchemaQuery">
+            <summary>
+               <para>Gets or sets a value indicating whether this is a schema query or an instance query.</para>
+            </summary>
+            <value>
+            <see langword='true'/> if this query
+               should be evaluated over the schema; <see langword='false'/> if the query should
+               be evaluated over instances.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new query type.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.SourceObject">
+            <summary>
+               <para> Gets or sets the source object to be used for the query. For instance
+                  queries, this is typically an instance path. For schema queries, this is typically a class name.</para>
+            </summary>
+            <value>
+               A string representing the path of the
+               object to be used for the query.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new source object.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelatedClass">
+            <summary>
+               <para>Gets or sets the class of the endpoint objects.</para>
+            </summary>
+            <value>
+               <para>A string containing the related class
+                  name.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new related class.</para>
+            </remarks>
+            <example>
+               <para>To find all the Win32 services available on a computer, this property is set
+                  to "Win32_Service" : </para>
+               <code lang='C#'>RelatedObjectQuery q = new RelatedObjectQuery("Win32_ComputerSystem='MySystem'");
+            q.RelatedClass = "Win32_Service";
+               </code>
+               <code lang='VB'>Dim q As New RelatedObjectQuery("Win32_ComputerSystem=""MySystem""")
+            q.RelatedClass = "Win32_Service"
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelationshipClass">
+            <summary>
+               <para>Gets or sets the type of relationship (association).</para>
+            </summary>
+            <value>
+               <para>A string containing the relationship
+                  class name.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new relationship class.</para>
+            </remarks>
+            <example>
+               <para>For example, for finding all the Win32 services dependent on
+                  a service, this property should be set to the "Win32_DependentService" association class: </para>
+               <code lang='C#'>RelatedObjectQuery q = new RelatedObjectQuery("Win32_Service='TCP/IP'");
+            q.RelationshipClass = "Win32_DependentService";
+               </code>
+               <code lang='VB'>Dim q As New RelatedObjectQuery("Win32_Service=""TCP/IP""")
+            q.RelationshipClass = "Win32_DependentService"
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelatedQualifier">
+            <summary>
+               <para>Gets or sets a qualifier required to be defined on the related objects.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               qualifier required on the related objects.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new qualifier.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelationshipQualifier">
+            <summary>
+               <para>Gets or sets a qualifier required to be defined on the relationship objects.</para>
+            </summary>
+            <value>
+               <para>A string containing the name of the qualifier required
+                  on the relationship objects.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new qualifier.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelatedRole">
+            <summary>
+               <para>Gets or sets the role that the related objects returned should be playing in the relationship.</para>
+            </summary>
+            <value>
+               <para>A string containing the role of the
+                  related objects.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new role.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.ThisRole">
+            <summary>
+               <para>Gets or sets the role that the source object should be playing in the relationship.</para>
+            </summary>
+            <value>
+               <para>A string containing the role of this object.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new role.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.ClassDefinitionsOnly">
+            <summary>
+               <para>Gets or sets a value indicating that for all instances that adhere to the query, only their class definitions be returned.
+                  This parameter is only valid for instance queries.</para>
+            </summary>
+            <value>
+            <see langword='true'/> if the query
+               requests only class definitions of the result set; otherwise,
+            <see langword='false'/>.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new flag.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.BuildQuery">
+            <summary>
+             Builds the query string according to the current property values.
+            </summary>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.RelationshipQuery">
+             <summary>
+                <para> Represents a WQL REFERENCES OF data query.</para>
+             </summary>
+             <example>
+                <para>The following example searches for all objects related to the
+                   'C:' drive object:</para>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             class Sample_RelationshipQuery
+             {
+                 public static int Main(string[] args) {
+                     RelationshipQuery query =
+                         new RelationshipQuery("references of {Win32_LogicalDisk.DeviceID='C:'}");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(query);
+            
+                     foreach (ManagementObject assoc in searcher.Get()) {
+                         Console.WriteLine("Association class = " + assoc["__CLASS"]);
+                     }
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             Class Sample_RelatedObjectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim query As New RelationshipQuery("references of {Win32_LogicalDisk.DeviceID='C:'}")
+                     Dim searcher As New ManagementObjectSearcher(query)
+                     Dim assoc As ManagementObject
+            
+                     For Each assoc In searcher.Get()
+                         Console.WriteLine("Association class = " &amp; assoc("__CLASS"))
+                     Next assoc
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.RelationshipQuery'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/> class. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor(System.String)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/>class. If the specified string can be succesfully parsed as
+                a WQL query, it is considered to be the query string; otherwise, it is assumed to be the path of the source
+                object for the query. In this case, the query is assumed to be an instances query. </para>
+             </summary>
+             <param name='queryOrSourceObject'>The query string or the class name for this query.</param>
+             <example>
+                <para>This example shows the two different ways to use this constructor:</para>
+                <code lang='C#'>//Full query string is specified to the constructor
+             RelationshipQuery q = new RelationshipQuery("references of {Win32_ComputerSystem.Name='mymachine'}");
+            
+             //Only the object of interest is specified to the constructor
+             RelationshipQuery q = new RelationshipQuery("Win32_Service.Name='Alerter'");
+                </code>
+                <code lang='VB'>'Full query string is specified to the constructor
+             Dim q As New RelationshipQuery("references of {Win32_ComputerSystem.Name='mymachine'}")
+            
+             'Only the object of interest is specified to the constructor
+             Dim q As New RelationshipQuery("Win32_Service.Name='Alerter'")
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/> class for the given source object and relationship class.
+               The query is assumed to be an instance query (as opposed to a schema query).</para>
+            </summary>
+            <param name='sourceObject'> The path of the source object for this query.</param>
+            <param name='relationshipClass'> The type of relationship for which to query.</param>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor(System.String,System.String,System.String,System.String,System.Boolean)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/> class for the given set of parameters.
+               The query is assumed to be an instance query (as opposed to a schema query).</para>
+            </summary>
+            <param name='sourceObject'> The path of the source object for this query.</param>
+            <param name='relationshipClass'> The type of relationship for which to query.</param>
+            <param name='relationshipQualifier'> A qualifier required to be present on the relationship object.</param>
+            <param name='thisRole'> The role that the source object is required to play in the relationship.</param>
+            <param name='classDefinitionsOnly'>When this method returns, it contains a boolean that indicates that only class definitions for the resulting objects are returned.</param>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor(System.Boolean,System.String,System.String,System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/> class for a schema query using the given set
+               of parameters. This constructor is used for schema queries only, so the first
+               parameter must be <see langword='true'/>
+               .</para>
+            </summary>
+            <param name='isSchemaQuery'><see langword='true'/>to indicate that this is a schema query; otherwise, <see langword='false'/> .</param>
+            <param name='sourceObject'> The path of the source class for this query.</param>
+            <param name='relationshipClass'> The type of relationship for which to query.</param>
+            <param name='relationshipQualifier'> A qualifier required to be present on the relationship class.</param>
+            <param name='thisRole'> The role that the source class is required to play in the relationship.</param>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.IsSchemaQuery">
+            <summary>
+               <para>Gets or sets a value indicating whether this query is a schema query or an instance query.</para>
+            </summary>
+            <value>
+            <see langword='true'/> if this query
+               should be evaluated over the schema; <see langword='false'/> if the query should
+               be evaluated over instances.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new query type.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.SourceObject">
+            <summary>
+               <para>Gets or sets the source object for this query.</para>
+            </summary>
+            <value>
+               A string representing the path of
+               the object to be used for the query.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new source object.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.RelationshipClass">
+            <summary>
+               <para>Gets or sets the class of the relationship objects wanted in the query.</para>
+            </summary>
+            <value>
+               A string containing the relationship
+               class name.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new class.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.RelationshipQualifier">
+            <summary>
+               <para>Gets or sets a qualifier required on the relationship objects.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               qualifier required on the relationship objects.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new qualifier.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.ThisRole">
+            <summary>
+               <para>Gets or sets the role of the source object in the relationship.</para>
+            </summary>
+            <value>
+               A string containing the role of this
+               object.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new role.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.ClassDefinitionsOnly">
+            <summary>
+               <para>Gets or sets a value indicating that only the class definitions of the relevant relationship objects be returned.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the query requests only class definitions of the
+               result set; otherwise, <see langword='false'/>.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any previous
+                  value stored in the object. As a side-effect, the query string is
+                  rebuilt to reflect the new flag.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.BuildQuery">
+            <summary>
+             Builds the query string according to the current property values.
+            </summary>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.WqlEventQuery">
+             <summary>
+                <para> Represents a WMI event query in WQL format.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to subscribe to an event
+             // using a WQL event query.
+            
+             class Sample_EventQuery
+             {
+                 public static int Main(string[] args)
+                 {
+                     //For this example, we make sure we have an arbitrary class on root\default
+                     ManagementClass newClass = new ManagementClass(
+                         "root\\default",
+                         String.Empty,
+                         null);
+                     newClass["__Class"] = "TestWql";
+                     newClass.Put();
+            
+                     //Create a query object for watching for class deletion events
+                     WqlEventQuery eventQuery = new WqlEventQuery("select * from __classdeletionevent");
+            
+                     //Initialize an event watcher object with this query
+                     ManagementEventWatcher watcher = new ManagementEventWatcher(
+                         new ManagementScope("root/default"),
+                         eventQuery);
+            
+                     //Set up a handler for incoming events
+                     MyHandler handler = new MyHandler();
+                     watcher.EventArrived += new EventArrivedEventHandler(handler.Arrived);
+            
+                     //Start watching for events
+                     watcher.Start();
+            
+                     //For this example, we delete the class to trigger an event
+                     newClass.Delete();
+            
+                     //Nothing better to do - we loop to wait for an event to arrive.
+                     while (!handler.IsArrived) {
+                          System.Threading.Thread.Sleep(1000);
+                     }
+            
+                     //In this example we only want to wait for one event, so we can stop watching
+                     watcher.Stop();
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler
+                 {
+                     private bool isArrived = false;
+            
+                     //Handles the event when it arrives
+                     public void Arrived(object sender, EventArrivedEventArgs e) {
+                         ManagementBaseObject eventArg = (ManagementBaseObject)(e.NewEvent["TargetClass"]);
+                         Console.WriteLine("Class Deleted = " + eventArg["__CLASS"]);
+                         isArrived = true;
+                     }
+            
+                      //Used to determine whether the event has arrived or not.
+                     public bool IsArrived {
+                         get {
+                             return isArrived;
+                         }
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to subscribe an event
+             ' using a WQL event query.
+            
+             Class Sample_EventQuery
+                 Public Shared Sub Main()
+            
+                     'For this example, we make sure we have an arbitrary class on root\default
+                     Dim newClass As New ManagementClass( _
+                         "root\default", _
+                         String.Empty, Nothing)
+                         newClass("__Class") = "TestWql"
+                         newClass.Put()
+            
+                     'Create a query object for watching for class deletion events
+                     Dim eventQuery As New WqlEventQuery("select * from __classdeletionevent")
+            
+                     'Initialize an event watcher object with this query
+                     Dim watcher As New ManagementEventWatcher( _
+                         New ManagementScope("root/default"), _
+                         eventQuery)
+            
+                     'Set up a handler for incoming events
+                     Dim handler As New MyHandler()
+                     AddHandler watcher.EventArrived, AddressOf handler.Arrived
+            
+                     'Start watching for events
+                     watcher.Start()
+            
+                     'For this example, we delete the class to trigger an event
+                     newClass.Delete()
+            
+                     'Nothing better to do - we loop to wait for an event to arrive.
+                     While Not handler.IsArrived
+                         Console.Write("0")
+                         System.Threading.Thread.Sleep(1000)
+                     End While
+            
+                     'In this example we only want to wait for one event, so we can stop watching
+                     watcher.Stop()
+            
+                 End Sub
+            
+                 Public Class MyHandler
+                     Private _isArrived As Boolean = False
+            
+                     'Handles the event when it arrives
+                     Public Sub Arrived(sender As Object, e As EventArrivedEventArgs)
+                         Dim eventArg As ManagementBaseObject = CType( _
+                             e.NewEvent("TargetClass"), _
+                             ManagementBaseObject)
+                         Console.WriteLine(("Class Deleted = " + eventArg("__CLASS")))
+                         _isArrived = True
+                     End Sub
+            
+                     'Used to determine whether the event has arrived or not.
+                     Public ReadOnly Property IsArrived() As Boolean
+                         Get
+                             Return _isArrived
+                         End Get
+                     End Property
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor">
+            <overload>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class. This is the default
+            constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String)">
+             <summary>
+             <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+             class based on the given
+             query string or event class name.</para>
+             </summary>
+             <param name='queryOrEventClassName'>The string representing either the entire event query or the name of the event class to query. The object will try to parse the string as a valid event query. If unsuccessful, the parser will assume that the parameter represents an event class name.</param>
+             <example>
+                <para>The two options below are equivalent :</para>
+                <code lang='C#'>//Full query string specified to the constructor
+             WqlEventQuery q = new WqlEventQuery("SELECT * FROM MyEvent");
+            
+             //Only relevant event class name specified to the constructor
+             WqlEventQuery q = new WqlEventQuery("MyEvent"); //results in the same query as above.
+                </code>
+                <code lang='VB'>'Full query string specified to the constructor
+             Dim q As New WqlEventQuery("SELECT * FROM MyEvent")
+            
+             'Only relevant event class name specified to the constructor
+             Dim q As New WqlEventQuery("MyEvent") 'results in the same query as above
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class for the
+            specified event class name, with the specified condition.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query.</param>
+            <param name=' condition'>The condition to apply to events of the specified class.</param>
+            <example>
+               <para>This example shows how to create an event query that contains a condition in
+                  addition to the event class :</para>
+               <code lang='C#'>//Requests all "MyEvent" events where the event's properties
+            //match the specified condition
+            WqlEventQuery q = new WqlEventQuery("MyEvent", "FirstProp &lt; 20 and SecondProp = 'red'");
+               </code>
+               <code lang='VB'>'Requests all "MyEvent" events where the event's properties
+            'match the specified condition
+            Dim q As New WqlEventQuery("MyEvent", "FirstProp &lt; 20 and SecondProp = 'red'")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.TimeSpan)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class for the specified
+            event class, with the specified latency time.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query.</param>
+            <param name=' withinInterval'>A timespan value specifying the latency acceptable for receiving this event. This value is used in cases where there is no explicit event provider for the query requested, and WMI is required to poll for the condition. This interval is the maximum amount of time that can pass before notification of an event must be delivered. </param>
+            <example>
+               <para>This example shows creating an event query that contains
+                  a
+                  time interval.</para>
+               <code lang='C#'>//Requests all instance creation events, with a specified latency of
+            //10 seconds. The query created is "SELECT * FROM __InstanceCreationEvent WITHIN 10"
+            WqlEventQuery q = new WqlEventQuery("__InstanceCreationEvent",
+                                                new TimeSpan(0,0,10));
+               </code>
+               <code lang='VB'>'Requests all instance creation events, with a specified latency of
+            '10 seconds. The query created is "SELECT * FROM __InstanceCreationEvent WITHIN 10"
+            Dim t As New TimeSpan(0,0,10)
+            Dim q As New WqlEventQuery("__InstanceCreationEvent", t)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.TimeSpan,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class with the specified
+            event class name, polling interval, and condition.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query. </param>
+            <param name=' withinInterval'>A timespan value specifying the latency acceptable for receiving this event. This value is used in cases where there is no explicit event provider for the query requested and WMI is required to poll for the condition. This interval is the maximum amount of time that can pass before notification of an event must be delivered. </param>
+            <param name=' condition'>The condition to apply to events of the specified class.</param>
+            <example>
+               <para> This example creates the event query: "SELECT * FROM
+               <see langword='__InstanceCreationEvent '/>WITHIN 10 WHERE
+               <see langword='TargetInstance'/> ISA <see langword='Win32_Service'/>", which means
+                  "send notification of the creation of <see langword='Win32_Service '/>
+                  instances,
+                  with a 10-second polling interval."</para>
+               <code lang='C#'>//Requests notification of the creation of Win32_Service instances with a 10 second
+            //allowed latency.
+            WqlEventQuery q = new WqlEventQuery("__InstanceCreationEvent",
+                                                new TimeSpan(0,0,10),
+                                                "TargetInstance isa 'Win32_Service'");
+               </code>
+               <code lang='VB'>'Requests notification of the creation of Win32_Service instances with a 10 second
+            'allowed latency.
+            Dim t As New TimeSpan(0,0,10)
+            Dim q As New WqlEventQuery("__InstanceCreationEvent", _
+                                       t, _
+                                       "TargetInstance isa ""Win32_Service""")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.String,System.TimeSpan)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class with the specified
+            event class name, condition, and grouping interval.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query. </param>
+            <param name='condition'>The condition to apply to events of the specified class.</param>
+            <param name=' groupWithinInterval'>The specified interval at which WMI sends one aggregate event, rather than many events.</param>
+            <example>
+               <para>This example creates the event query: "SELECT * FROM
+               <see langword='FrequentEvent'/> WHERE <see langword='InterestingProperty'/>= 5
+                  GROUP WITHIN 10", which means "send notification of events of type
+               <see langword='FrequentEvent'/>, in which the
+               <see langword='InterestingProperty'/> is equal to 5, but send an aggregate event in
+                  a
+                  10-second interval."</para>
+               <code lang='C#'>//Sends an aggregate of the requested events every 10 seconds
+            WqlEventQuery q = new WqlEventQuery("FrequentEvent",
+                                                "InterestingProperty = 5",
+                                                new TimeSpan(0,0,10));
+               </code>
+               <code lang='VB'>'Sends an aggregate of the requested events every 10 seconds
+            Dim t As New TimeSpan(0,0,10)
+            Dim q As New WqlEventQuery("FrequentEvent", _
+                                       "InterestingProperty = 5", _
+                                       t)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.String,System.TimeSpan,System.String[])">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class with the specified event class
+            name, condition, grouping interval, and grouping properties.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query. </param>
+            <param name='condition'>The condition to apply to events of the specified class.</param>
+            <param name=' groupWithinInterval'>The specified interval at which WMI sends one aggregate event, rather than many events. </param>
+            <param name=' groupByPropertyList'>The properties in the event class by which the events should be grouped.</param>
+            <example>
+               <para>This example creates the event query: "SELECT * FROM
+               <see langword='EmailEvent'/> WHERE <see langword='Sender'/> = 'MyBoss' GROUP
+                  WITHIN 300 BY <see langword='Importance'/>", which means "send notification when
+                  new email from a particular sender has arrived within the last 10 minutes,
+                  combined with other events that have the same value in the
+               <see langword='Importance'/>
+               property."</para>
+            <code lang='C#'>//Requests "EmailEvent" events where the Sender property is "MyBoss", and
+            //groups them based on importance
+            String[] props = {"Importance"};
+            WqlEventQuery q = new WqlEventQuery("EmailEvent",
+                                                "Sender = 'MyBoss'",
+                                                new TimeSpan(0,10,0),
+                                                props);
+            </code>
+            <code lang='VB'>'Requests "EmailEvent" events where the Sender property is "MyBoss", and
+            'groups them based on importance
+            Dim props() As String = {"Importance"}
+            Dim t As New TimeSpan(0,10,0)
+            Dim q As New WqlEventQuery("EmailEvent", _
+                                       "Sender = ""MyBoss""", _
+                                       t, _
+                                       props)
+            </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.TimeSpan,System.String,System.TimeSpan,System.String[],System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class with the specified event class
+            name, condition, grouping interval, grouping properties, and specified number of events.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class on which to be queried.</param>
+            <param name='withinInterval'>A timespan value specifying the latency acceptable for receiving this event. This value is used in cases where there is no explicit event provider for the query requested, and WMI is required to poll for the condition. This interval is the maximum amount of time that can pass before notification of an event must be delivered.</param>
+            <param name=' condition'>The condition to apply to events of the specified class.</param>
+            <param name=' groupWithinInterval'>The specified interval at which WMI sends one aggregate event, rather than many events. </param>
+            <param name=' groupByPropertyList'>The properties in the event class by which the events should be grouped.</param>
+            <param name=' havingCondition'>The condition to apply to the number of events.</param>
+            <example>
+               <para>This example creates the event query: "SELECT * FROM
+               <see langword='__InstanceCreationEvent '/>WHERE <see langword='TargetInstance'/>
+               ISA <see langword='Win32_NTLogEvent '/>GROUP WITHIN 300 BY
+            <see langword='TargetInstance.SourceName'/> HAVING
+            <see langword='NumberOfEvents'/> &gt; 15" which means "deliver aggregate events
+               only if the number of <see langword='Win32_NTLogEvent '/>events received from the
+               same source exceeds 15."</para>
+            <code lang='C#'>//Requests sending aggregated events if the number of events exceeds 15.
+            String[] props = {"TargetInstance.SourceName"};
+            WqlEventQuery q = new WqlEventQuery("__InstanceCreationEvent",
+                                                "TargetInstance isa 'Win32_NTLogEvent'",
+                                                new TimeSpan(0,10,0),
+                                                props,
+                                                "NumberOfEvents &gt;15");
+            </code>
+            <code lang='VB'>'Requests sending aggregated events if the number of events exceeds 15.
+            Dim props() As String = {"TargetInstance.SourceName"};
+            Dim t As New TimeSpan(0,10,0)
+            Dim q As WqlEventQuery("__InstanceCreationEvent", _
+                                   "TargetInstance isa ""Win32_NTLogEvent""", _
+                                   t, _
+                                   props, _
+                                   "NumberOfEvents &gt;15")
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.QueryLanguage">
+            <summary>
+               <para>Gets or sets the language of the query.</para>
+            </summary>
+            <value>
+               <para>The value of this property in this
+                  object is always "WQL".</para>
+            </value>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.QueryString">
+            <summary>
+               <para>Gets or sets the string representing the query.</para>
+            </summary>
+            <value>
+               A string representing the query.
+            </value>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.EventClassName">
+            <summary>
+               <para> Gets or sets the event class to query.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               event class to query.
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value
+                  stored
+                  in the object. The query string is rebuilt to
+                  reflect the new class name.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='MyEvent'/> ".</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "MyEvent";
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "MyEvent"
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.Condition">
+            <summary>
+               <para>Gets or sets the condition to be applied to events of the
+                  specified class.</para>
+            </summary>
+            <value>
+               <para>The condition is represented as a
+                  string, containing one or more clauses of the form: &lt;propName&gt;
+                  &lt;operator&gt; &lt;value&gt; combined with and/or operators. &lt;propName&gt;
+                  must represent a property defined on the event class specified in this query.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any previous value
+                  stored in the object. The query string is rebuilt to
+                  reflect the new condition.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='MyEvent'/> WHERE
+            <see langword='PropVal'/> &gt; 8".</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "MyEvent";
+            q.Condition = "PropVal &gt; 8";
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "MyEvent"
+            q.Condition = "PropVal &gt; 8"
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.WithinInterval">
+            <summary>
+               <para>Gets or sets the polling interval to be used in this query.</para>
+            </summary>
+            <value>
+               <para>Null, if there is no polling involved; otherwise, a
+                  valid <see cref='T:System.TimeSpan'/>
+                  value if polling is required.</para>
+            </value>
+            <remarks>
+               <para>This property should only be set in cases
+                  where there is no event provider for the event requested, and WMI is required to
+                  poll for the requested condition.</para>
+               <para>Setting this property value overrides any previous value
+                  stored in
+                  the object. The query string is rebuilt to reflect the new interval.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='__InstanceModificationEvent '/>WITHIN 10 WHERE <see langword='PropVal'/> &gt; 8".</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "__InstanceModificationEvent";
+            q.Condition = "PropVal &gt; 8";
+            q.WithinInterval = new TimeSpan(0,0,10);
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "__InstanceModificationEvent"
+            q.Condition = "PropVal &gt; 8"
+            q.WithinInterval = New TimeSpan(0,0,10)
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.GroupWithinInterval">
+            <summary>
+               <para>Gets or sets the interval to be used for grouping events of
+                  the same type.</para>
+            </summary>
+            <value>
+               <para> Null, if there is no
+                  grouping involved; otherwise, the interval in which WMI should group events of
+                  the same type.</para>
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value stored in
+                  the object. The query string is rebuilt to reflect the new interval.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='MyEvent'/> WHERE
+            <see langword='PropVal'/> &gt; 8 GROUP WITHIN 10", which means "send notification
+            of all <see langword='MyEvent'/> events where the <see langword='PropVal'/>
+            property is greater than 8, and aggregate these events within 10-second intervals."</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "MyEvent";
+            q.Condition = "PropVal &gt; 8";
+            q.GroupWithinInterval = new TimeSpan(0,0,10);
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "MyEvent"
+            q.Condition = "PropVal &gt; 8"
+            q.GroupWithinInterval = New TimeSpan(0,0,10)
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.GroupByPropertyList">
+            <summary>
+               <para>Gets or sets properties in the event to be used for
+                  grouping events of the same type.</para>
+            </summary>
+            <value>
+               <para>
+                  Null, if no grouping is required; otherwise, a collection of event
+                  property names.</para>
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value stored in
+                  the object. The query string is rebuilt to reflect the new grouping.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='EmailEvent'/> GROUP
+            WITHIN 300 BY <see langword='Sender'/>", which means "send notification of all
+            <see langword='EmailEvent'/> events, aggregated by the <see langword='Sender'/>property, within 10-minute intervals."</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "EmailEvent";
+            q.GroupWithinInterval = new TimeSpan(0,10,0);
+            q.GroupByPropertyList = new StringCollection();
+            q.GroupByPropertyList.Add("Sender");
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "EmailEvent"
+            q.GroupWithinInterval = New TimeSpan(0,10,0)
+            q.GroupByPropertyList = New StringCollection()
+            q.GroupByPropertyList.Add("Sender")
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.HavingCondition">
+            <summary>
+               <para>Gets or sets the condition to be applied to the aggregation of
+                  events, based on the number of events received.</para>
+            </summary>
+            <value>
+               <para>
+                  Null, if no aggregation or no condition should be applied;
+                  otherwise, a condition of the form "NumberOfEvents &lt;operator&gt;
+                  &lt;value&gt;".</para>
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value stored in
+                  the object. The query string is rebuilt to reflect the new grouping condition.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='EmailEvent'/> GROUP
+            WITHIN 300 HAVING <see langword='NumberOfEvents'/> &gt; 5", which means "send
+            notification of all <see langword='EmailEvent'/> events, aggregated within
+            10-minute intervals, if there are more than 5 occurrences."</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "EmailEvent";
+            q.GroupWithinInterval = new TimeSpan(0,10,0);
+            q.HavingCondition = "NumberOfEvents &gt; 5";
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "EmailEvent"
+            q.GroupWithinInterval = new TimeSpan(0,10,0)
+            q.HavingCondition = "NumberOfEvents &gt; 5"
+            </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.BuildQuery">
+            <summary>
+             Builds the query string according to the current property values.
+            </summary>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.ManagementQueryConverter">
+            <summary>
+            Converts a String to a ManagementQuery
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementQueryConverter.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Determines if this converter can convert an object in the given source type to the native type of the converter.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='sourceType'>A Type that represents the type you wish to convert from.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementQueryConverter.CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Gets a value indicating whether this converter can convert an object to the given destination type using the context.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='destinationType'>A Type that represents the type you wish to convert to.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementQueryConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
+            <summary>
+                 Converts the given object to another type.  The most common types to convert
+                 are to and from a string object.  The default implementation will make a call
+                 to ToString on the object if the object is valid and if the destination
+                 type is string.  If this cannot convert to the desitnation type, this will
+                 throw a NotSupportedException.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='culture'>A CultureInfo object. If a null reference (Nothing in Visual Basic) is passed, the current culture is assumed.</param>
+            <param name='value'>The Object to convert.</param>
+            <param name='destinationType'>The Type to convert the value parameter to.</param>
+            <returns>An Object that represents the converted value.</returns>
+        </member>
+        <member name="T:System.Management.ManagementScope">
+             <summary>
+                <para>Represents a scope for management operations. In v1.0 the scope defines the WMI namespace in which management operations are performed.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to connect to root/default namespace
+             // using ManagmentScope object.
+             class Sample_ManagementScope
+             {
+                 public static int Main(string[] args)
+                 {
+                     ManagementScope scope = new ManagementScope("root\\default");
+                     scope.Connect();
+                     ManagementClass newClass = new ManagementClass(
+                         scope,
+                         new ManagementPath(),
+                         null);
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to connect to root/default namespace
+             ' using ManagmentScope object.
+             Class Sample_ManagementScope
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim scope As New ManagementScope("root\default")
+                     scope.Connect()
+                     Dim newClass As New ManagementClass(scope, _
+                         New ManagementPath(), _
+                         Nothing)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementScope.IsConnected">
+            <summary>
+            <para> Gets or sets a value indicating whether the <see cref='T:System.Management.ManagementScope'/> is currently bound to a
+               WMI server and namespace.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if a connection is alive (bound
+               to a server and namespace); otherwise, <see langword='false'/>.</para>
+            </value>
+            <remarks>
+               <para> A scope is disconnected after creation until someone
+                  explicitly calls <see cref='M:System.Management.ManagementScope.Connect'/>(), or uses the scope for any
+                  operation that requires a live connection. Also, the scope is
+                  disconnected from the previous connection whenever the identifying properties of the scope are
+                  changed.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.ManagementScope'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class, with default values. This is the
+               default constructor.</para>
+            </summary>
+            <remarks>
+               <para> If the object doesn't have any
+                  properties set before connection, it will be initialized with default values
+                  (for example, the local machine and the root\cimv2 namespace).</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope();
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope()
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor(System.Management.ManagementPath)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class representing
+               the specified scope path.</para>
+            </summary>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> containing the path to a server and namespace for the <see cref='T:System.Management.ManagementScope'/>.</param>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope(new ManagementPath("\\\\MyServer\\root\\default"));
+               </code>
+               <code lang='VB'>Dim p As New ManagementPath("\\MyServer\root\default")
+            Dim s As New ManagementScope(p)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class representing the specified scope
+               path.</para>
+            </summary>
+            <param name='path'>The server and namespace path for the <see cref='T:System.Management.ManagementScope'/>.</param>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope("\\\\MyServer\\root\\default");
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope("\\MyServer\root\default")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor(System.String,System.Management.ConnectionOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class representing the specified scope path,
+               with the specified options.</para>
+            </summary>
+            <param name='path'>The server and namespace for the <see cref='T:System.Management.ManagementScope'/>.</param>
+            <param name=' options'>A <see cref='T:System.Management.ConnectionOptions'/> containing options for the connection.</param>
+            <example>
+               <code lang='C#'>ConnectionOptions opt = new ConnectionOptions();
+            opt.Username = "Me";
+            opt.Password = "MyPassword";
+            ManagementScope s = new ManagementScope("\\\\MyServer\\root\\default", opt);
+               </code>
+               <code lang='VB'>Dim opt As New ConnectionOptions()
+            opt.Username = "Me"
+            opt.Password = "MyPassword"
+            Dim s As New ManagementScope("\\MyServer\root\default", opt);
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor(System.Management.ManagementPath,System.Management.ConnectionOptions)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class representing the specified scope path,
+                with the specified options.</para>
+             </summary>
+             <param name='path'>A <see cref='T:System.Management.ManagementPath'/> containing the path to the server and namespace for the <see cref='T:System.Management.ManagementScope'/>.</param>
+             <param name=' options'>The <see cref='T:System.Management.ConnectionOptions'/> containing options for the connection.</param>
+             <example>
+                <code lang='C#'>ConnectionOptions opt = new ConnectionOptions();
+             opt.Username = "Me";
+             opt.Password = "MyPassword";
+            
+             ManagementPath p = new ManagementPath("\\\\MyServer\\root\\default");
+             ManagementScope = new ManagementScope(p, opt);
+                </code>
+                <code lang='VB'>Dim opt As New ConnectionOptions()
+             opt.UserName = "Me"
+             opt.Password = "MyPassword"
+            
+             Dim p As New ManagementPath("\\MyServer\root\default")
+             Dim s As New ManagementScope(p, opt)
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementScope.Options">
+             <summary>
+                <para> Gets or sets options for making the WMI connection.</para>
+             </summary>
+             <value>
+             <para>The valid <see cref='T:System.Management.ConnectionOptions'/>
+             containing options for the WMI connection.</para>
+             </value>
+             <example>
+                <code lang='C#'>//This constructor creates a scope object with default options
+             ManagementScope s = new ManagementScope("root\\MyApp");
+            
+             //Change default connection options -
+             //In this example, set the system privileges to enabled for operations that require system privileges.
+             s.Options.EnablePrivileges = true;
+                </code>
+                <code lang='VB'>'This constructor creates a scope object with default options
+             Dim s As New ManagementScope("root\\MyApp")
+            
+             'Change default connection options -
+             'In this example, set the system privileges to enabled for operations that require system privileges.
+             s.Options.EnablePrivileges = True
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementScope.Path">
+            <summary>
+            <para>Gets or sets the path for the <see cref='T:System.Management.ManagementScope'/>.</para>
+            </summary>
+            <value>
+            <para> A <see cref='T:System.Management.ManagementPath'/> containing
+               the path to a server and namespace.</para>
+            </value>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope();
+            s.Path = new ManagementPath("root\\MyApp");
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope()
+            s.Path = New ManagementPath("root\MyApp")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+            <para>A new copy of the <see cref='T:System.Management.ManagementScope'/>.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementScope.System#ICloneable#Clone">
+            <summary>
+               <para>Clone a copy of this object.</para>
+            </summary>
+            <returns>
+               A new copy of this object.
+               object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementScope.Connect">
+             <summary>
+             <para>Connects this <see cref='T:System.Management.ManagementScope'/> to the actual WMI
+                scope.</para>
+             </summary>
+             <remarks>
+                <para>This method is called implicitly when the
+                   scope is used in an operation that requires it to be connected. Calling it
+                   explicitly allows the user to control the time of connection.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementScope s = new ManagementScope("root\\MyApp");
+            
+             //Explicit call to connect the scope object to the WMI namespace
+             s.Connect();
+            
+             //The following doesn't do any implicit scope connections because s is already connected.
+             ManagementObject o = new ManagementObject(s, "Win32_LogicalDisk='C:'", null);
+                </code>
+                <code lang='VB'>Dim s As New ManagementScope("root\\MyApp")
+            
+             'Explicit call to connect the scope object to the WMI namespace
+             s.Connect()
+            
+             'The following doesn't do any implicit scope connections because s is already connected.
+             Dim o As New ManagementObject(s, "Win32_LogicalDisk=""C:""", null)
+                </code>
+             </example>
+        </member>
+        <member name="T:System.Management.ManagementScopeConverter">
+            <summary>
+            Converts a String to a ManagementScope
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementScopeConverter.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Determines if this converter can convert an object in the given source type to the native type of the converter.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='sourceType'>A Type that represents the type you wish to convert from.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementScopeConverter.CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Gets a value indicating whether this converter can convert an object to the given destination type using the context.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='destinationType'>A Type that represents the type you wish to convert to.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementScopeConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
+            <summary>
+                 Converts the given object to another type.  The most common types to convert
+                 are to and from a string object.  The default implementation will make a call
+                 to ToString on the object if the object is valid and if the destination
+                 type is string.  If this cannot convert to the desitnation type, this will
+                 throw a NotSupportedException.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='culture'>A CultureInfo object. If a null reference (Nothing in Visual Basic) is passed, the current culture is assumed.</param>
+            <param name='value'>The Object to convert.</param>
+            <param name='destinationType'>The Type to convert the value parameter to.</param>
+            <returns>An Object that represents the converted value.</returns>
+        </member>
+        <member name="T:System.Management.MethodData">
+             <summary>
+                <para> Contains information about a WMI method.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example shows how to obtain meta data
+             // about a WMI method with a given name in a given WMI class
+            
+             class Sample_MethodData
+             {
+                 public static int Main(string[] args) {
+            
+                     // Get the "SetPowerState" method in the Win32_LogicalDisk class
+                     ManagementClass diskClass = new ManagementClass("win32_logicaldisk");
+                     MethodData m = diskClass.Methods["SetPowerState"];
+            
+                     // Get method name (albeit we already know it)
+                     Console.WriteLine("Name: " + m.Name);
+            
+                     // Get the name of the top-most class where this specific method was defined
+                     Console.WriteLine("Origin: " + m.Origin);
+            
+                     // List names and types of input parameters
+                     ManagementBaseObject inParams = m.InParameters;
+                     foreach (PropertyData pdata in inParams.Properties) {
+                         Console.WriteLine();
+                         Console.WriteLine("InParam_Name: " + pdata.Name);
+                         Console.WriteLine("InParam_Type: " + pdata.Type);
+                     }
+            
+                     // List names and types of output parameters
+                     ManagementBaseObject outParams = m.OutParameters;
+                     foreach (PropertyData pdata in outParams.Properties) {
+                         Console.WriteLine();
+                         Console.WriteLine("OutParam_Name: " + pdata.Name);
+                         Console.WriteLine("OutParam_Type: " + pdata.Type);
+                     }
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example shows how to obtain meta data
+             ' about a WMI method with a given name in a given WMI class
+            
+             Class Sample_ManagementClass
+                 Overloads Public Shared Function Main(args() As String) As Integer
+            
+                     ' Get the "SetPowerState" method in the Win32_LogicalDisk class
+                     Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                     Dim m As MethodData = diskClass.Methods("SetPowerState")
+            
+                     ' Get method name (albeit we already know it)
+                     Console.WriteLine("Name: " &amp; m.Name)
+            
+                     ' Get the name of the top-most class where
+                     ' this specific method was defined
+                     Console.WriteLine("Origin: " &amp; m.Origin)
+            
+                     ' List names and types of input parameters
+                     Dim inParams As ManagementBaseObject
+                     inParams = m.InParameters
+                     Dim pdata As PropertyData
+                     For Each pdata In inParams.Properties
+                         Console.WriteLine()
+                         Console.WriteLine("InParam_Name: " &amp; pdata.Name)
+                         Console.WriteLine("InParam_Type: " &amp; pdata.Type)
+                     Next pdata
+            
+                     ' List names and types of output parameters
+                     Dim outParams As ManagementBaseObject
+                     outParams = m.OutParameters
+                     For Each pdata in outParams.Properties
+                         Console.WriteLine()
+                         Console.WriteLine("OutParam_Name: " &amp; pdata.Name)
+                         Console.WriteLine("OutParam_Type: " &amp; pdata.Type)
+                     Next pdata
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.MethodData.Name">
+            <summary>
+               <para>Gets or sets the name of the method.</para>
+            </summary>
+            <value>
+               <para>The name of the method.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.MethodData.InParameters">
+            <summary>
+               <para> Gets or sets the input parameters to the method. Each
+                  parameter is described as a property in the object. If a parameter is both in
+                  and out, it appears in both the <see cref='P:System.Management.MethodData.InParameters'/> and <see cref='P:System.Management.MethodData.OutParameters'/>
+                  properties.</para>
+            </summary>
+            <value>
+               <para>
+                  A <see cref='T:System.Management.ManagementBaseObject'/>
+                  containing all the input parameters to the
+                  method.</para>
+            </value>
+            <remarks>
+               <para>Each parameter in the object should have an
+               <see langword='ID'/>
+               qualifier, identifying the order of the parameters in the method call.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.MethodData.OutParameters">
+            <summary>
+               <para> Gets or sets the output parameters to the method. Each
+                  parameter is described as a property in the object. If a parameter is both in
+                  and out, it will appear in both the <see cref='P:System.Management.MethodData.InParameters'/> and <see cref='P:System.Management.MethodData.OutParameters'/>
+                  properties.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> containing all the output parameters to the method. </para>
+            </value>
+            <remarks>
+               <para>Each parameter in this object should have an
+               <see langword='ID'/> qualifier to identify the
+                  order of the parameters in the method call.</para>
+               <para>The ReturnValue property is a special property of
+                  the <see cref='P:System.Management.MethodData.OutParameters'/>
+                  object and
+                  holds the return value of the method.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.MethodData.Origin">
+            <summary>
+               <para>Gets the name of the management class in which the method was first
+                  introduced in the class inheritance hierarchy.</para>
+            </summary>
+            <value>
+               A string representing the originating
+               management class name.
+            </value>
+        </member>
+        <member name="P:System.Management.MethodData.Qualifiers">
+            <summary>
+               <para>Gets a collection of qualifiers defined in the
+                  method. Each element is of type <see cref='T:System.Management.QualifierData'/>
+                  and contains information such as the qualifier name, value, and
+                  flavor.</para>
+            </summary>
+            <value>
+               A <see cref='T:System.Management.QualifierDataCollection'/> containing the
+               qualifiers for this method.
+            </value>
+            <seealso cref='T:System.Management.QualifierData'/>
+        </member>
+        <member name="T:System.Management.MethodDataCollection">
+             <summary>
+                <para> Represents the set of methods available in the collection.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates enumerate all methods in a ManagementClass object.
+             class Sample_MethodDataCollection
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("win32_logicaldisk");
+                     MethodDataCollection diskMethods = diskClass.Methods;
+                     foreach (MethodData method in diskMethods) {
+                         Console.WriteLine("Method = " + method.Name);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates enumerate all methods in a ManagementClass object.
+             Class Sample_MethodDataCollection
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("win32_logicaldisk")
+                     Dim diskMethods As MethodDataCollection = diskClass.Methods
+                     Dim method As MethodData
+                     For Each method In diskMethods
+                         Console.WriteLine("Method = " &amp; method.Name)
+                     Next method
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.Count">
+            <summary>
+            <para>Represents the number of objects in the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </summary>
+            <value>
+            <para> The number of objects in the <see cref='T:System.Management.MethodDataCollection'/>. </para>
+            </value>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.IsSynchronized">
+            <summary>
+               <para>Indicates whether the object is synchronized.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the object is synchronized;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.SyncRoot">
+            <summary>
+               <para>Represents the object to be used for synchronization.</para>
+            </summary>
+            <value>
+               <para>The object to be used for synchronization.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.CopyTo(System.Array,System.Int32)">
+            <overload>
+            <para>Copies the <see cref='T:System.Management.MethodDataCollection'/> into an array.</para>
+            </overload>
+            <summary>
+            <para> Copies the <see cref='T:System.Management.MethodDataCollection'/> into an array.</para>
+            </summary>
+            <param name='array'>The array to which to copy the collection. </param>
+            <param name='index'>The index from which to start. </param>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.CopyTo(System.Management.MethodData[],System.Int32)">
+            <summary>
+            <para>Copies the <see cref='T:System.Management.MethodDataCollection'/> to a specialized <see cref='T:System.Management.MethodData'/>
+            array.</para>
+            </summary>
+            <param name='methodArray'>The destination array to which to copy the <see cref='T:System.Management.MethodData'/> objects.</param>
+            <param name=' index'>The index in the destination array from which to start the copy.</param>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.GetEnumerator">
+            <summary>
+            <para>Returns an enumerator for the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </summary>
+            <remarks>
+               <para> Each call to this method
+                  returns a new enumerator on the collection. Multiple enumerators can be obtained
+                  for the same method collection. However, each enumerator takes a snapshot
+                  of the collection, so changes made to the collection after the enumerator was
+                  obtained are not reflected.</para>
+            </remarks>
+            <returns>An <see cref="T:System.Collections.IEnumerator"/> to enumerate through the collection.</returns>
+        </member>
+        <member name="T:System.Management.MethodDataCollection.MethodDataEnumerator">
+             <summary>
+             <para>Represents the enumerator for <see cref='T:System.Management.MethodData'/>
+             objects in the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate all methods in
+             // Win32_LogicalDisk class using MethodDataEnumerator object.
+            
+             class Sample_MethodDataEnumerator
+             {
+              public static int Main(string[] args)
+              {
+               ManagementClass diskClass = new ManagementClass("win32_logicaldisk");
+               MethodDataCollection.MethodDataEnumerator diskEnumerator =
+                diskClass.Methods.GetEnumerator();
+               while(diskEnumerator.MoveNext())
+               {
+                MethodData method = diskEnumerator.Current;
+                Console.WriteLine("Method = " + method.Name);
+               }
+               return 0;
+              }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate all methods in
+             ' Win32_LogicalDisk class using MethodDataEnumerator object.
+            
+             Class Sample_MethodDataEnumerator
+              Overloads Public Shared Function Main(args() As String) As Integer
+               Dim diskClass As New ManagementClass("win32_logicaldisk")
+               Dim diskEnumerator As _
+                    MethodDataCollection.MethodDataEnumerator = _
+                   diskClass.Methods.GetEnumerator()
+               While diskEnumerator.MoveNext()
+                Dim method As MethodData = diskEnumerator.Current
+                Console.WriteLine("Method = " &amp; method.Name)
+               End While
+               Return 0
+              End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.MethodDataEnumerator.System#Collections#IEnumerator#Current">
+            <internalonly/>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.MethodDataEnumerator.Current">
+            <summary>
+            <para>Returns the current <see cref='T:System.Management.MethodData'/> in the <see cref='T:System.Management.MethodDataCollection'/>
+            enumeration.</para>
+            </summary>
+            <value>The current <see cref='T:System.Management.MethodData'/> item in the collection.</value>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.MethodDataEnumerator.MoveNext">
+            <summary>
+            <para>Moves to the next element in the <see cref='T:System.Management.MethodDataCollection'/> enumeration.</para>
+            </summary>
+            <returns><see langword='true'/> if the enumerator was successfully advanced to the next method; <see langword='false'/> if the enumerator has passed the end of the collection.</returns>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.MethodDataEnumerator.Reset">
+            <summary>
+            <para>Resets the enumerator to the beginning of the <see cref='T:System.Management.MethodDataCollection'/> enumeration.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.Item(System.String)">
+            <summary>
+            <para>Returns the specified <see cref='T:System.Management.MethodData'/> from the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </summary>
+            <param name='methodName'>The name of the method requested.</param>
+            <value>A <see cref='T:System.Management.MethodData'/> instance containing all information about the specified method.</value>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.Remove(System.String)">
+            <summary>
+            <para>Removes a <see cref='T:System.Management.MethodData'/> from the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </summary>
+            <param name='methodName'>The name of the method to remove from the collection.</param>
+            <remarks>
+               <para>
+                  Removing <see cref='T:System.Management.MethodData'/> objects from the <see cref='T:System.Management.MethodDataCollection'/>
+                  can only be done when the class has no
+                  instances. Any other case will result in an exception.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.Add(System.String)">
+            <overload>
+            <para>Adds a <see cref='T:System.Management.MethodData'/> to the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </overload>
+            <summary>
+            <para>Adds a <see cref='T:System.Management.MethodData'/> to the <see cref='T:System.Management.MethodDataCollection'/>. This overload will
+               add a new method with no parameters to the collection.</para>
+            </summary>
+            <param name='methodName'>The name of the method to add.</param>
+            <remarks>
+            <para> Adding <see cref='T:System.Management.MethodData'/> objects to the <see cref='T:System.Management.MethodDataCollection'/> can only
+               be done when the class has no instances. Any other case will result in an
+               exception.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.Add(System.String,System.Management.ManagementBaseObject,System.Management.ManagementBaseObject)">
+            <summary>
+            <para>Adds a <see cref='T:System.Management.MethodData'/> to the <see cref='T:System.Management.MethodDataCollection'/>. This overload will add a new method with the
+               specified parameter objects to the collection.</para>
+            </summary>
+            <param name='methodName'>The name of the method to add.</param>
+            <param name=' inParameters'>The <see cref='T:System.Management.ManagementBaseObject'/> holding the input parameters to the method.</param>
+            <param name=' outParameters'>The <see cref='T:System.Management.ManagementBaseObject'/> holding the output parameters to the method.</param>
+            <remarks>
+            <para> Adding <see cref='T:System.Management.MethodData'/> objects to the <see cref='T:System.Management.MethodDataCollection'/> can only be
+               done when the class has no instances. Any other case will result in an
+               exception.</para>
+            </remarks>
+        </member>
+        <member name="T:System.Management.PropertyData">
+             <summary>
+                <para> Represents information about a WMI property.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample displays all properties that qualifies the "DeviceID" property
+             // in Win32_LogicalDisk.DeviceID='C' instance.
+             class Sample_PropertyData
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject disk =
+                         new ManagementObject("Win32_LogicalDisk.DeviceID=\"C:\"");
+                     PropertyData diskProperty = disk.Properties["DeviceID"];
+                     Console.WriteLine("Name: " + diskProperty.Name);
+                     Console.WriteLine("Type: " + diskProperty.Type);
+                     Console.WriteLine("Value: " + diskProperty.Value);
+                     Console.WriteLine("IsArray: " + diskProperty.IsArray);
+                     Console.WriteLine("IsLocal: " + diskProperty.IsLocal);
+                     Console.WriteLine("Origin: " + diskProperty.Origin);
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample displays all properties that qualifies the "DeviceID" property
+             ' in Win32_LogicalDisk.DeviceID='C' instance.
+             Class Sample_PropertyData
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim disk As New ManagementObject("Win32_LogicalDisk.DeviceID=""C:""")
+                     Dim diskProperty As PropertyData = disk.Properties("DeviceID")
+                     Console.WriteLine("Name: " &amp; diskProperty.Name)
+                     Console.WriteLine("Type: " &amp; diskProperty.Type)
+                     Console.WriteLine("Value: " &amp; diskProperty.Value)
+                     Console.WriteLine("IsArray: " &amp; diskProperty.IsArray)
+                     Console.WriteLine("IsLocal: " &amp; diskProperty.IsLocal)
+                     Console.WriteLine("Origin: " &amp; diskProperty.Origin)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.PropertyData.Name">
+            <summary>
+               <para>Gets or sets the name of the property.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               property.
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.Value">
+            <summary>
+               <para>Gets or sets the current value of the property.</para>
+            </summary>
+            <value>
+               An object containing the value of the
+               property.
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.Type">
+            <summary>
+               <para>Gets or sets the CIM type of the property.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.CimType'/> value
+               representing the CIM type of the property.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.IsLocal">
+            <summary>
+               <para>Gets or sets a value indicating whether the property has been defined in the current WMI class.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the property has been defined
+               in the current WMI class; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.IsArray">
+            <summary>
+               <para>Gets or sets a value indicating whether the property is an array.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the property is an array; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.Origin">
+            <summary>
+               <para>Gets or sets the name of the WMI class in the hierarchy in which the property was introduced.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               originating WMI class.
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.Qualifiers">
+            <summary>
+               <para>Gets or sets the set of qualifiers defined on the property.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.QualifierDataCollection'/> that represents
+               the set of qualifiers defined on the property.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.PropertyData.MapWmiValueToValue(System.Object,System.Management.CimType,System.Boolean)">
+            <summary>
+            Takes a property value returned from WMI and maps it to an
+            appropriate managed code representation.
+            </summary>
+            <param name="wmiValue"> </param>
+            <param name="type"> </param>
+            <param name="isArray"> </param>
+        </member>
+        <member name="M:System.Management.PropertyData.MapValueToWmiValue(System.Object,System.Management.CimType,System.Boolean)">
+            <summary>
+            Takes a managed code value, together with a desired property
+            </summary>
+            <param name="val"> </param>
+            <param name="type"> </param>
+            <param name="isArray"> </param>
+        </member>
+        <member name="T:System.Management.PropertyDataCollection">
+             <summary>
+                <para> Represents the set of properties of a WMI object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate properties
+             // in a ManagementObject object.
+             class Sample_PropertyDataCollection
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid = \"c:\"");
+                     PropertyDataCollection diskProperties = disk.Properties;
+                     foreach (PropertyData diskProperty in diskProperties) {
+                         Console.WriteLine("Property = " + diskProperty.Name);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate properties
+             ' in a ManagementObject object.
+             Class Sample_PropertyDataCollection
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim disk As New ManagementObject("win32_logicaldisk.deviceid=""c:""")
+                     Dim diskProperties As PropertyDataCollection = disk.Properties
+                     Dim diskProperty As PropertyData
+                     For Each diskProperty In diskProperties
+                         Console.WriteLine("Property = " &amp; diskProperty.Name)
+                     Next diskProperty
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.Count">
+            <summary>
+            <para>Gets or sets the number of objects in the <see cref='T:System.Management.PropertyDataCollection'/>.</para>
+            </summary>
+            <value>
+               <para>The number of objects in the collection.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.IsSynchronized">
+            <summary>
+               <para>Gets or sets a value indicating whether the object is synchronized.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the object is synchronized;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.SyncRoot">
+            <summary>
+               <para>Gets or sets the object to be used for synchronization.</para>
+            </summary>
+            <value>
+               <para>The object to be used for synchronization.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.CopyTo(System.Array,System.Int32)">
+            <overload>
+            <para>Copies the <see cref='T:System.Management.PropertyDataCollection'/> into an array.</para>
+            </overload>
+            <summary>
+            <para>Copies the <see cref='T:System.Management.PropertyDataCollection'/> into an array.</para>
+            </summary>
+            <param name='array'>The array to which to copy the <see cref='T:System.Management.PropertyDataCollection'/>. </param>
+            <param name='index'>The index from which to start copying. </param>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.CopyTo(System.Management.PropertyData[],System.Int32)">
+            <summary>
+            <para>Copies the <see cref='T:System.Management.PropertyDataCollection'/> to a specialized <see cref='T:System.Management.PropertyData'/> object
+               array.</para>
+            </summary>
+            <param name='propertyArray'>The destination array to contain the copied <see cref='T:System.Management.PropertyDataCollection'/>.</param>
+            <param name=' index'>The index in the destination array from which to start copying.</param>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.GetEnumerator">
+            <summary>
+            <para>Returns the enumerator for this <see cref='T:System.Management.PropertyDataCollection'/>.</para>
+            </summary>
+            <returns>
+            <para>An <see cref='T:System.Collections.IEnumerator'/>
+            that can be used to iterate through the collection.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.PropertyDataCollection.PropertyDataEnumerator">
+             <summary>
+             <para>Represents the enumerator for <see cref='T:System.Management.PropertyData'/>
+             objects in the <see cref='T:System.Management.PropertyDataCollection'/>.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate all properties in a
+             // ManagementObject using the PropertyDataEnumerator object.
+             class Sample_PropertyDataEnumerator
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject disk = new ManagementObject("Win32_LogicalDisk.DeviceID='C:'");
+                     PropertyDataCollection.PropertyDataEnumerator propertyEnumerator = disk.Properties.GetEnumerator();
+                     while(propertyEnumerator.MoveNext()) {
+                         PropertyData p = (PropertyData)propertyEnumerator.Current;
+                         Console.WriteLine("Property found: " + p.Name);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate all properties in a
+             ' ManagementObject using PropertyDataEnumerator object.
+             Class Sample_PropertyDataEnumerator
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim disk As New ManagementObject("Win32_LogicalDisk.DeviceID='C:'")
+                     Dim propertyEnumerator As _
+                       PropertyDataCollection.PropertyDataEnumerator = disk.Properties.GetEnumerator()
+                     While propertyEnumerator.MoveNext()
+                         Dim p As PropertyData = _
+                             CType(propertyEnumerator.Current, PropertyData)
+                         Console.WriteLine("Property found: " &amp; p.Name)
+                      End While
+                      Return 0
+                  End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.PropertyDataEnumerator.System#Collections#IEnumerator#Current">
+            <internalonly/>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.PropertyDataEnumerator.Current">
+            <summary>
+            <para>Gets the current <see cref='T:System.Management.PropertyData'/> in the <see cref='T:System.Management.PropertyDataCollection'/> enumeration.</para>
+            </summary>
+            <value>
+               The current <see cref='T:System.Management.PropertyData'/>
+               element in the collection.
+            </value>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.PropertyDataEnumerator.MoveNext">
+            <summary>
+            <para> Moves to the next element in the <see cref='T:System.Management.PropertyDataCollection'/>
+            enumeration.</para>
+            </summary>
+            <returns>
+            <para><see langword='true'/> if the enumerator was successfully advanced to the next element;
+            <see langword='false'/> if the enumerator has passed the end of the collection.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.PropertyDataEnumerator.Reset">
+            <summary>
+            <para>Resets the enumerator to the beginning of the <see cref='T:System.Management.PropertyDataCollection'/>
+            enumeration.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.Item(System.String)">
+            <summary>
+            <para> Returns the specified property from the <see cref='T:System.Management.PropertyDataCollection'/>, using [] syntax.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to retrieve.</param>
+            <value>
+            <para> A <see cref='T:System.Management.PropertyData'/>, based on
+               the name specified.</para>
+            </value>
+            <example>
+               <code lang='C#'>ManagementObject o = new ManagementObject("Win32_LogicalDisk.Name = 'C:'");
+            Console.WriteLine("Free space on C: drive is: ", c.Properties["FreeSpace"].Value);
+               </code>
+               <code lang='VB'>Dim o As New ManagementObject("Win32_LogicalDisk.Name=""C:""")
+            Console.WriteLine("Free space on C: drive is: " &amp; c.Properties("FreeSpace").Value)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.Remove(System.String)">
+            <summary>
+            <para>Removes a <see cref='T:System.Management.PropertyData'/> from the <see cref='T:System.Management.PropertyDataCollection'/>.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to be removed.</param>
+            <remarks>
+               <para> Properties can only be removed from class definitions,
+                  not from instances. This method is only valid when invoked on a property
+                  collection in a <see cref='T:System.Management.ManagementClass'/>.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("MyClass");
+            c.Properties.Remove("PropThatIDontWantOnThisClass");
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("MyClass")
+            c.Properties.Remove("PropThatIDontWantOnThisClass")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.Add(System.String,System.Object)">
+            <overload>
+            <para>Adds a new <see cref='T:System.Management.PropertyData'/> with the specified value.</para>
+            </overload>
+            <summary>
+            <para>Adds a new <see cref='T:System.Management.PropertyData'/> with the specified value. The value cannot
+               be null and must be convertable to a CIM type.</para>
+            </summary>
+            <param name='propertyName'>The name of the new property.</param>
+            <param name='propertyValue'>The value of the property (cannot be null).</param>
+            <remarks>
+               <para> Properties can only be added to class definitions, not
+                  to instances. This method is only valid when invoked on a <see cref='T:System.Management.PropertyDataCollection'/>
+                  in
+                  a <see cref='T:System.Management.ManagementClass'/>.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.Add(System.String,System.Object,System.Management.CimType)">
+            <summary>
+            <para>Adds a new <see cref='T:System.Management.PropertyData'/> with the specified value and CIM type.</para>
+            </summary>
+            <param name='propertyName'>The name of the property.</param>
+            <param name='propertyValue'>The value of the property (which can be null).</param>
+            <param name='propertyType'>The CIM type of the property.</param>
+            <remarks>
+               <para> Properties can only be added to class definitions, not
+                  to instances. This method is only valid when invoked on a <see cref='T:System.Management.PropertyDataCollection'/>
+                  in
+                  a <see cref='T:System.Management.ManagementClass'/>.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.Add(System.String,System.Management.CimType,System.Boolean)">
+            <summary>
+            <para>Adds a new <see cref='T:System.Management.PropertyData'/> with no assigned value.</para>
+            </summary>
+            <param name='propertyName'>The name of the property.</param>
+            <param name='propertyType'>The CIM type of the property.</param>
+            <param name='isArray'><see langword='true'/> to specify that the property is an array type; otherwise, <see langword='false'/>.</param>
+            <remarks>
+               <para> Properties can only be added to class definitions, not
+                  to instances. This method is only valid when invoked on a <see cref='T:System.Management.PropertyDataCollection'/>
+                  in
+                  a <see cref='T:System.Management.ManagementClass'/>.</para>
+            </remarks>
+        </member>
+        <member name="T:System.Management.QualifierData">
+             <summary>
+                <para> Contains information about a WMI qualifier.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate qualifiers
+             // of a ManagementClass object.
+             class Sample_QualifierData
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     diskClass.Options.UseAmendedQualifiers = true;
+                     QualifierData diskQualifier = diskClass.Qualifiers["Description"];
+                     Console.WriteLine(diskQualifier.Name + " = " + diskQualifier.Value);
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate qualifiers
+             ' of a ManagementClass object.
+             Class Sample_QualifierData
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("win32_logicaldisk")
+                     diskClass.Options.UseAmendedQualifiers = True
+                     Dim diskQualifier As QualifierData = diskClass.Qualifiers("Description")
+                     Console.WriteLine(diskQualifier.Name + " = " + diskQualifier.Value)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.QualifierData.Name">
+            <summary>
+               <para>Represents the name of the qualifier.</para>
+            </summary>
+            <value>
+               <para>The name of the qualifier.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierData.Value">
+            <summary>
+               <para>Gets or sets the value of the qualifier.</para>
+            </summary>
+            <value>
+               <para>The value of the qualifier.</para>
+            </value>
+            <remarks>
+               <para> Qualifiers can only be of the following subset of CIM
+                  types: <see langword='string'/>, <see langword='uint16'/>,
+               <see langword='uint32'/>, <see langword='sint32'/>, <see langword='uint64'/>,
+               <see langword='sint64'/>, <see langword='real32'/>, <see langword='real64'/>,
+               <see langword='bool'/>.
+                  </para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.QualifierData.IsAmended">
+            <summary>
+               <para> Gets or sets a value indicating whether the qualifier is amended.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this qualifier is amended;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+            <remarks>
+               <para> Amended qualifiers are
+                  qualifiers whose value can be localized through WMI. Localized qualifiers
+                  reside in separate namespaces in WMI and can be merged into the basic class
+                  definition when retrieved.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.QualifierData.IsLocal">
+            <summary>
+               <para>Gets or sets a value indicating whether the qualifier has been defined locally on
+                  this class or has been propagated from a base class.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the qualifier has been defined
+               locally on this class; otherwise, <see langword='false'/>. </para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierData.PropagatesToInstance">
+            <summary>
+               <para>Gets or sets a value indicating whether the qualifier should be propagated to instances of the
+                  class.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this qualifier should be
+               propagated to instances of the class; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierData.PropagatesToSubclass">
+            <summary>
+               <para>Gets or sets a value indicating whether the qualifier should be propagated to
+                  subclasses of the class.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the qualifier should be
+               propagated to subclasses of this class; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierData.IsOverridable">
+            <summary>
+               <para>Gets or sets a value indicating whether the value of the qualifier can be
+                  overridden when propagated.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the value of the qualifier
+               can be overridden when propagated; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.QualifierDataCollection">
+             <summary>
+             <para> Represents a collection of <see cref='T:System.Management.QualifierData'/> objects.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to list all qualifiers including amended
+             // qualifiers of a ManagementClass object.
+             class Sample_QualifierDataCollection
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     diskClass.Options.UseAmendedQualifiers = true;
+                     QualifierDataCollection qualifierCollection = diskClass.Qualifiers;
+                     foreach (QualifierData q in qualifierCollection) {
+                         Console.WriteLine(q.Name + " = " + q.Value);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+                   Imports System.Management
+                   ' This sample demonstrates how to list all qualifiers including amended
+                   ' qualifiers of a ManagementClass object.
+                   Class Sample_QualifierDataCollection
+                   Overloads Public Shared Function Main(args() As String) As Integer
+                   Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                   diskClass.Options.UseAmendedQualifiers = true
+                   Dim qualifierCollection As QualifierDataCollection = diskClass.Qualifiers
+                   Dim q As QualifierData
+                   For Each q In qualifierCollection
+                   Console.WriteLine(q.Name &amp; " = " &amp; q.Value)
+                   Next q
+                   Return 0
+                   End Function
+                   End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.GetTypeQualifierSet">
+            <summary>
+            Return the qualifier set associated with its type
+            Overload with use of private data member, qualifierType
+            </summary>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.GetTypeQualifierSet(System.Management.QualifierType)">
+            <summary>
+            Return the qualifier set associated with its type
+            </summary>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.Count">
+            <summary>
+            <para>Gets or sets the number of <see cref='T:System.Management.QualifierData'/> objects in the <see cref='T:System.Management.QualifierDataCollection'/>.</para>
+            </summary>
+            <value>
+               <para>The number of objects in the collection.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.IsSynchronized">
+            <summary>
+               <para>Gets or sets a value indicating whether the object is synchronized.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the object is synchronized;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.SyncRoot">
+            <summary>
+               <para>Gets or sets the object to be used for synchronization.</para>
+            </summary>
+            <value>
+               <para>The object to be used for synchronization.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.CopyTo(System.Array,System.Int32)">
+            <overload>
+            <para>Copies the <see cref='T:System.Management.QualifierDataCollection'/> into an array.</para>
+            </overload>
+            <summary>
+            <para> Copies the <see cref='T:System.Management.QualifierDataCollection'/> into an array.</para>
+            </summary>
+            <param name='array'>The array to which to copy the <see cref='T:System.Management.QualifierDataCollection'/>. </param>
+            <param name='index'>The index from which to start copying. </param>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.CopyTo(System.Management.QualifierData[],System.Int32)">
+            <summary>
+            <para>Copies the <see cref='T:System.Management.QualifierDataCollection'/> into a specialized
+            <see cref='T:System.Management.QualifierData'/>
+            array.</para>
+            </summary>
+            <param name='qualifierArray'><para>The specialized array of <see cref='T:System.Management.QualifierData'/> objects
+            to which to copy the <see cref='T:System.Management.QualifierDataCollection'/>.</para></param>
+            <param name=' index'>The index from which to start copying.</param>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.GetEnumerator">
+            <summary>
+            <para>Returns an enumerator for the <see cref='T:System.Management.QualifierDataCollection'/>. This method is strongly typed.</para>
+            </summary>
+            <returns>
+            <para>An <see cref='T:System.Collections.IEnumerator'/> that can be used to iterate through the
+               collection.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.QualifierDataCollection.QualifierDataEnumerator">
+             <summary>
+             <para>Represents the enumerator for <see cref='T:System.Management.QualifierData'/>
+             objects in the <see cref='T:System.Management.QualifierDataCollection'/>.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate qualifiers of a ManagementClass
+             // using QualifierDataEnumerator object.
+             class Sample_QualifierDataEnumerator
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     diskClass.Options.UseAmendedQualifiers = true;
+                     QualifierDataCollection diskQualifier = diskClass.Qualifiers;
+                     QualifierDataCollection.QualifierDataEnumerator
+                         qualifierEnumerator = diskQualifier.GetEnumerator();
+                     while(qualifierEnumerator.MoveNext()) {
+                         Console.WriteLine(qualifierEnumerator.Current.Name + " = " +
+                             qualifierEnumerator.Current.Value);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate qualifiers of a ManagementClass
+             ' using QualifierDataEnumerator object.
+             Class Sample_QualifierDataEnumerator
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("win32_logicaldisk")
+                     diskClass.Options.UseAmendedQualifiers = True
+                     Dim diskQualifier As QualifierDataCollection = diskClass.Qualifiers
+                     Dim qualifierEnumerator As _
+                         QualifierDataCollection.QualifierDataEnumerator = _
+                             diskQualifier.GetEnumerator()
+                     While qualifierEnumerator.MoveNext()
+                         Console.WriteLine(qualifierEnumerator.Current.Name &amp; _
+                             " = " &amp; qualifierEnumerator.Current.Value)
+                     End While
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.QualifierDataEnumerator.System#Collections#IEnumerator#Current">
+            <internalonly/>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.QualifierDataEnumerator.Current">
+            <summary>
+            <para>Gets or sets the current <see cref='T:System.Management.QualifierData'/> in the <see cref='T:System.Management.QualifierDataCollection'/> enumeration.</para>
+            </summary>
+            <value>
+            <para>The current <see cref='T:System.Management.QualifierData'/> element in the collection.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.QualifierDataEnumerator.MoveNext">
+            <summary>
+            <para> Moves to the next element in the <see cref='T:System.Management.QualifierDataCollection'/> enumeration.</para>
+            </summary>
+            <returns>
+            <para><see langword='true'/> if the enumerator was successfully advanced to the next
+               element; <see langword='false'/> if the enumerator has passed the end of the
+               collection.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.QualifierDataEnumerator.Reset">
+            <summary>
+            <para>Resets the enumerator to the beginning of the <see cref='T:System.Management.QualifierDataCollection'/> enumeration.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.Item(System.String)">
+            <summary>
+            <para> Gets the specified <see cref='T:System.Management.QualifierData'/> from the <see cref='T:System.Management.QualifierDataCollection'/>.</para>
+            </summary>
+            <param name='qualifierName'>The name of the <see cref='T:System.Management.QualifierData'/> to access in the <see cref='T:System.Management.QualifierDataCollection'/>. </param>
+            <value>
+            <para>A <see cref='T:System.Management.QualifierData'/>, based on the name specified.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.Remove(System.String)">
+            <summary>
+            <para>Removes a <see cref='T:System.Management.QualifierData'/> from the <see cref='T:System.Management.QualifierDataCollection'/> by name.</para>
+            </summary>
+            <param name='qualifierName'>The name of the <see cref='T:System.Management.QualifierData'/> to remove. </param>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.Add(System.String,System.Object)">
+            <overload>
+            <para>Adds a <see cref='T:System.Management.QualifierData'/> to the <see cref='T:System.Management.QualifierDataCollection'/>.</para>
+            </overload>
+            <summary>
+            <para>Adds a <see cref='T:System.Management.QualifierData'/> to the <see cref='T:System.Management.QualifierDataCollection'/>. This overload specifies the qualifier name and value.</para>
+            </summary>
+            <param name='qualifierName'>The name of the <see cref='T:System.Management.QualifierData'/> to be added to the <see cref='T:System.Management.QualifierDataCollection'/>. </param>
+            <param name='qualifierValue'>The value for the new qualifier. </param>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.Add(System.String,System.Object,System.Boolean,System.Boolean,System.Boolean,System.Boolean)">
+            <summary>
+            <para>Adds a <see cref='T:System.Management.QualifierData'/> to the <see cref='T:System.Management.QualifierDataCollection'/>. This overload
+               specifies all property values for a <see cref='T:System.Management.QualifierData'/> object.</para>
+            </summary>
+            <param name='qualifierName'>The qualifier name. </param>
+            <param name='qualifierValue'>The qualifier value. </param>
+            <param name='isAmended'><see langword='true'/> to specify that this qualifier is amended (flavor); otherwise, <see langword='false'/>. </param>
+            <param name='propagatesToInstance'><see langword='true'/> to propagate this qualifier to instances; otherwise, <see langword='false'/>. </param>
+            <param name='propagatesToSubclass'><see langword='true'/> to propagate this qualifier to subclasses; otherwise, <see langword='false'/>. </param>
+            <param name='isOverridable'><see langword='true'/> to specify that this qualifier's value is overridable in instances of subclasses; otherwise, <see langword='false'/>. </param>
+        </member>
+        <member name="T:System.Management.CodeLanguage">
+            <summary>
+                <para>Defines the languages supported by the code generator.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.CSharp">
+            <summary>
+               A value for generating C# code.
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.JScript">
+            <summary>
+               <para>A value for generating JScript code.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.VB">
+            <summary>
+               <para>A value for generating Visual Basic code.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.VJSharp">
+            <summary>
+               <para>A value for generating Visual J# code.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.Mcpp">
+            <summary>
+               <para>A value for generating Managed C++ code.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementClassGenerator">
+            <summary>
+               Used to generate a strongly-typed code class for a given WMI class.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.#ctor">
+            <summary>
+               <para>Creates an empty generator object. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.#ctor(System.Management.ManagementClass)">
+            <summary>
+               <para>Creates a generator object and initializes it
+                with the specified <see cref="T:System.Management.ManagementClass"/>.</para>
+            </summary>
+            <param name='cls'><see cref="T:System.Management.ManagementClass"/> object for which the code is to be generated.</param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCode(System.Boolean,System.Boolean)">
+            <summary>
+               <para>
+                  Returns a <see cref="T:System.CodeDom.CodeTypeDeclaration"/> for
+                  this class.</para>
+            </summary>
+            <param name='includeSystemProperties'>Indicates if a class for handling system properties should be included.</param>
+            <param name='systemPropertyClass'>Indicates if the generated code is for a class that handles system properties.</param>
+            <returns>
+               <para>Returns the <see cref="T:System.CodeDom.CodeTypeDeclaration"/> for the WMI class.</para>
+            </returns>
+            <remarks>
+               <para>If includeSystemProperties is <see langword="true"/>,
+                  the ManagementSystemProperties class is included in the generated class definition.
+                  This parameter is ignored if systemPropertyClass is <see langword="true"/>.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCode(System.Management.CodeLanguage,System.String,System.String)">
+            <summary>
+            Generates a strongly-typed code class for the specified language provider (C#, Visual Basic or JScript)
+            and writes it to the specified file.
+            </summary>
+            <param name="lang">The language to generate in.</param>
+            <param name="filePath">The path to the file where the generated code should be stored.</param>
+            <param name="netNamespace">The .NET namespace into which the class is generated.</param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.CheckIfClassIsProperlyInitialized">
+            <summary>
+            Checks if mandatory properties are properly initialized.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GetCodeTypeDeclarationForClass(System.Boolean)">
+            <summary>
+            This function will generate the code. This is the function which
+            should be called for generating the code.
+            </summary>
+            <param name="bIncludeSystemClassinClassDef">
+            Flag to indicate if system properties are to be included or not
+            </param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.InitializeClassObject">
+            <summary>
+            Function for initializing the class object that will be used to get all the
+            method and properties of the WMI Class for generating the code.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.InitilializePublicPrivateMembers">
+            <summary>
+            This functrion initializes the public attributes and private variables
+            list that will be used in the generated code.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ProcessNamingCollisions">
+            <summary>
+            This function will solve the naming collisions that might occur
+            due to the collision between the local objects of the generated
+            class and the properties/methos of the original WMI Class.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ResolveCollision(System.String,System.Boolean)">
+            <summary>
+            This function is used to resolve (actually generate a new name) collision
+            between the generated class properties/variables with WMI methods/properties.
+            This function safely assumes that there will be atleast one string left
+            in the series prop0, prop1 ...prop(maxInt) . Otherwise this function will
+            enter an infinite loop. May be we can avoid this through something, which
+            i will think about it later
+            </summary>
+            <param name="inString"> </param>
+            <param name="bCheckthisFirst"></param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ProcessNamespaceAndClassName">
+            <summary>
+            This function processes the WMI namespace and WMI classname and converts them to
+            the namespace used to generate the class and the classname.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GeneratePublicReadOnlyProperty(System.String,System.String,System.Object,System.Boolean,System.Boolean,System.String)">
+            <summary>
+            This function generates the code for the read only property.
+            The generated code will be of the form
+                   public &lt;propType&gt; &lt;propName&gt;{
+                       get {
+                               return (&lt;propValue&gt;);
+                           }
+                   }
+            </summary>
+            <param name="propName"> </param>
+            <param name="propType"> </param>
+            <param name="propValue"> </param>
+            <param name="isLiteral"></param>
+            <param name="isBrowsable"></param>
+            <param name="Comment"></param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateSystemPropertiesClass">
+            <summary>
+            Function for generating the helper class "ManagementSystemProperties" which is
+            used for seperating the system properties from the other properties. This is used
+            just to make the drop down list in the editor to look good.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateProperties">
+            <summary>
+            This function will enumerate all the properties (except systemproperties)
+            of the WMI class and will generate them as properties of the managed code
+            wrapper class.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ProcessPropertyQualifiers(System.Management.PropertyData,System.Boolean@,System.Boolean@,System.Boolean@,System.Boolean,System.Boolean@)">
+            <summary>
+            This function will process the qualifiers for a given WMI property and set the
+            attributes of the generated property accordingly.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GeneratePropertyHelperEnums(System.Management.PropertyData,System.String,System.Boolean)">
+            <summary>
+            This function will generate enums corresponding to the Values/Valuemap pair
+            and for the BitValues/Bitmap pair.
+            </summary>
+            <returns>
+            returns if the property is an enum. This is checked by if enum is added or not
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructPath">
+             <summary>
+             This function generated the static function which s used to construct the path
+                 private static String ConstructPath(String keyName)
+                    {
+                        //FOR NON SINGLETON CLASSES
+                        String strPath;
+                        strPath = ((("\\&lt;defNamespace&gt;:&lt;defClassName&gt;";
+                        strPath = ((_strPath) + (((".Key1=") + (key_Key1))));
+                        strPath = ((_strPath) + (((",Key2=") + ((("\"") + (((key_Key2) + ("\""))))))));
+                        return strPath;
+            
+                        //FOR SINGLETON CLASS
+                        return "\\&lt;defNameSpace&gt;:&lt;defClassName&gt;=@";
+                    }
+             </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateDefaultConstructor">
+            <summary>
+            This function generates the default constructor.
+            public Cons() {
+                   _privObject = new ManagementObject();
+                _privSystemProps = new ManagementSystemProperties(_privObject);
+            }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithKeys">
+             <summary>
+            This function create the constuctor which accepts the key values.
+            public cons(UInt32 key_Key1, String key_Key2) :this(null,&lt;ClassName&gt;.ConstructPath(&lt;key1,key2&gt;),null) {
+             }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScopeKeys">
+             <summary>
+            This function create the constuctor which accepts a scope and key values.
+            public cons(ManagementScope scope,UInt32 key_Key1, String key_Key2) :this(scope,&lt;ClassName&gt;.ConstructPath(&lt;key1,key2&gt;),null) {
+             }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithPath">
+            <summary>
+            This function generates code for the constructor which accepts ManagementPath as the parameter.
+            The generated code will look something like this
+                   public Cons(ManagementPath path) : this (null, path,null){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithPathOptions">
+            <summary>
+            This function generates code for the constructor which accepts ManagementPath and GetOptions
+            as parameters.
+            The generated code will look something like this
+                   public Cons(ManagementPath path, ObjectGetOptions options) : this (null, path,options){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScopePath">
+            <summary>
+            This function generates code for the constructor which accepts Scope as a string, path as a
+            string and GetOptions().
+            The generated code will look something like this
+                   public Cons(String scope, String path, ObjectGetOptions options) :
+                                       this (new ManagementScope(scope), new ManagementPath(path),options){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScope">
+            <summary>
+            This function generates code for the constructor which accepts ManagementScope as parameters.
+            The generated code will look something like this
+                   public Cons(ManagementScope scope, ObjectGetOptions options) : this (scope, &lt;ClassName&gt;.ConstructPath(),null){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithOptions">
+            <summary>
+            This function generates code for the constructor which accepts GetOptions
+            as parameters.
+            The generated code will look something like this
+                   public Cons(ObjectGetOptions options) : this (null, &lt;ClassName&gt;.ConstructPath(),options){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScopeOptions">
+            <summary>
+            This function generates code for the constructor which accepts ManagementScope and GetOptions
+            as parameters.
+            The generated code will look something like this
+                   public Cons(ManagementScope scope, ObjectGetOptions options) : this (scope, &lt;ClassName&gt;.ConstructPath(),options){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScopePathOptions">
+            <summary>
+            This function generated the constructor like
+                   public cons(ManagementScope scope, ManagamentPath path,ObjectGetOptions getOptions)
+                   {
+                       PrivateObject = new ManagementObject(scope,path,getOptions);
+                       PrivateSystemProperties = new ManagementSystemProperties(PrivateObject);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenarateConstructorWithLateBound">
+            <summary>
+            This function generates code for the constructor which accepts ManagementObject as the parameter.
+            The generated code will look something like this
+                   public Cons(ManagementObject theObject) {
+                   if (CheckIfProperClass(theObject.Scope, theObject.Path, theObject.Options) = true) {
+                           privObject = theObject;
+                           privSystemProps = new WmiSystemProps(privObject);
+                           curObj = privObject;
+                       }
+                       else {
+                           throw new ArgumentException("Class name doesn't match");
+                       }
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenarateConstructorWithLateBoundForEmbedded">
+             <summary>
+             This function generates code for the constructor which accepts ManagementObject as the parameter.
+             The generated code will look something like this
+                    public Cons(ManagementBaseObject theObject) {
+                    if (CheckIfProperClass(theObject) = true)
+                    {
+                        embeddedObj = theObject
+                        PrivateSystemProperties = New ManagementSystemProperties(theObject)
+                        curObj = embeddedObj
+                        isEmbedded = true
+                    }
+                    else
+                    {
+                        throw new ArgumentException("Class name doesn't match");
+                    }
+                }
+            
+             </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateInitializeObject">
+            <summary>
+            This function generated the constructor like
+                   public cons(ManagementScope scope, ManagamentPath path,ObjectGetOptions getOptions)
+                   {
+                       PrivateObject = new ManagementObject(scope,path,getOptions);
+                       PrivateSystemProperties = new ManagementSystemProperties(PrivateObject);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateMethods">
+             <summary>
+             This function generates the WMI methods as the methods in the generated class.
+             The generated code will look something like this
+                    public &lt;retType&gt; Method1(&lt;type&gt; param1, &lt;type&gt; param2,...) {
+                        ManagementBaseObject inParams = null;
+                        inParams = _privObject.GetMethodParameters("ChangeStartMode");
+                        inParams["&lt;inparam1&gt;"] = &lt;Value&gt;;
+                        inParams["&lt;inoutparam2&gt;"] = &lt;Value&gt;;
+                        ................................
+                        ManagementBaseObject outParams = _privObject.InvokeMethod("ChangeStartMode", inParams, null);
+                        inoutParam3 = (&lt;type&gt;)(outParams.Properties["&lt;inoutParam3&gt;"]);
+                        outParam4 = (String)(outParams.Properties["&lt;outParam4&gt;"]);
+                        ................................
+                        return (&lt;retType&gt;)(outParams.Properties["ReturnValue"].Value);
+                 }
+            
+                 The code generated changes if the method is static function
+                    public &lt;retType&gt; Method1(&lt;type&gt; param1, &lt;type&gt; param2,...) {
+                        ManagementBaseObject inParams = null;
+                        ManagementObject classObj = new ManagementObject(null, "WIN32_SHARE", null); // the classname
+                        inParams = classObj.GetMethodParameters("Create");
+                        inParams["&lt;inparam1&gt;"] = &lt;Value&gt;;
+                        inParams["&lt;inoutparam2&gt;"] = &lt;Value&gt;;
+                        ................................
+                        ManagementBaseObject outParams = classObj.InvokeMethod("ChangeStartMode", inParams, null);
+                        inoutParam3 = (&lt;type&gt;)(outParams.Properties["&lt;inoutParam3&gt;"]);
+                        outParam4 = (String)(outParams.Properties["&lt;outParam4&gt;"]);
+                        ................................
+                        return (&lt;retType&gt;)(outParams.Properties["ReturnValue"].Value);
+                 }
+            
+             </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithNoParameters">
+            <summary>
+            This function returns a Collectionclass for the query
+                   "Select * from &lt;ClassName&gt;"
+               This is a static method. The output is like this
+                   public static ServiceCollection All()
+                   {
+                       return GetInstances((System.Management.ManagementScope)null,(System.Management.EnumerateionOptions)null);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithCondition">
+            <summary>
+            This function will accept the condition and will return collection for the query
+                   "select * from &lt;ClassName&gt; where &lt;condition&gt;"
+               The generated code will be like
+                   public static ServiceCollection GetInstances(String Condition) {
+                       return GetInstances(null,Condition,null);
+                }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithProperties">
+            <summary>
+            This function returns the collection for the query
+                   "select &lt;parameterList&gt; from &lt;ClassName&gt;"
+               The generated output is like
+                   public static ServiceCollection GetInstances(String []selectedProperties) {
+                       return GetInstances(null,null,selectedProperties);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithWhereProperties">
+            <summary>
+            This function returns the collection for the query
+                   "select &lt;parameterList> from &lt;ClassName&gt; where &lt;WhereClause&gt;"
+               The generated output is like
+                   public static ServiceCollection GetInstances(String condition, String []selectedProperties) {
+                       return GetInstances(null,condition,selectedProperties);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithScope">
+            <summary>
+            This function returns a Collectionclass for the query
+                   "Select * from &lt;ClassName&gt;"
+               This is a static method. The output is like this
+               public static (ObjectCollection)GetInstances(System.Management.ManagementScope mgmtScope, System.Management.EnumerationOptions enumOptions)
+               {
+                   if ((mgmtScope == null))
+                   {
+                       mgmtScope = new System.Management.ManagementScope();
+                       mgmtScope.Path.NamespacePath = "root\\CimV2";
+                   }
+                   System.Management.ManagementPath pathObj = new System.Management.ManagementPath();
+                   pathObj.ClassName = "CIM_LogicalDisk";
+                   pathObj.NamespacePath = "root\\CimV2";
+                   System.Management.ManagementClass clsObject = new System.Management.ManagementClass(mgmtScope, pathObj, null);
+                   if ((enumOptions == null))
+                   {
+                       enumOptions = new System.Management.EnumerationOptions();
+                       enumOptions.EnsureLocatable = true;
+                   }
+                   return new ObjectCollection(clsObject.GetInstances(enumOptions));
+               }
+               This method takes the scope which is useful for connection to remote machine
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithScopeCondition">
+            <summary>
+            This function will accept the condition and will return collection for the query
+                   "select * from &lt;ClassName&gt; where &lt;condition&gt;"
+               The generated code will be like
+                   public static ServiceCollection GetInstances(String Condition) {
+                       return GetInstances(scope,Condition,null);
+                }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithScopeProperties">
+            <summary>
+            This function returns the collection for the query
+                   "select &lt;parameterList&gt; from &lt;ClassName&gt;"
+               The generated output is like
+                   public static ServiceCollection GetInstances(String []selectedProperties) {
+                       return GetInstances(scope,null,selectedProperties);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithScopeWhereProperties">
+            <summary>
+            This function generates the code like
+                public static ServiceCollection GetInstances(ManagementScope scope,String Condition, String[] selectedProperties)    {
+                       if (scope == null)
+                       {
+                           scope = new ManagementScope();
+                           scope.Path.NamespacePath = WMINamespace;
+                       }
+                    ManagementObjectSearcher ObjectSearcher = new ManagementObjectSearcher(scope,new SelectQuery("Win32_Service",Condition,selectedProperties));
+                       QueryOptions query = new QueryOptions();
+                       query.EnsureLocatable = true;
+                       ObjectSearcher.Options = query;
+                       return new ServiceCollection(ObjectSearcher.Get());
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GeneratePrivateMember(System.String,System.String,System.String)">
+            <summary>
+            This function will add the variable as a private member to the class.
+            The generated code will look like this
+                    private &lt;MemberType&gt; &lt;MemberName&gt;;
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GeneratePrivateMember(System.String,System.String,System.CodeDom.CodeExpression,System.Boolean,System.String)">
+            <summary>
+            This function will add the variable as a private member to the class.
+            The generated code will look like this
+                    private &lt;MemberType&gt; &lt;MemberName&gt; = &lt;initValue&gt;;
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsContainedIn(System.String,System.Collections.SortedList@)">
+            <summary>
+            This function will find a given string in the passed
+            in a case insensitive manner and will return true if the string is found.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertCIMType(System.Management.CimType,System.Boolean)">
+            <summary>
+            This function will convert the given CIMTYPE to an acceptable .NET type.
+            Since CLS doen't support lotz of the basic types, we are using .NET helper
+            classes here. We safely assume that there won't be any problem using them
+            since .NET has to be there for the System.Management.Dll to work.
+            </summary>
+            <param name="cType"> </param>
+            <param name="isArray"> </param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.isTypeInt(System.Management.CimType)">
+            <summary>
+            This function is used to determine whether the given CIMTYPE can be represented as an integer.
+            This helper function is mainly used to determine whether this type will be support by enums.
+            </summary>
+            <param name="cType"> </param>
+        </member>
+        <member name="P:System.Management.ManagementClassGenerator.GeneratedFileName">
+            <summary>
+               <para>[To be supplied.]</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementClassGenerator.GeneratedTypeName">
+            <summary>
+               <para>[To be supplied.]</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertValuesToName(System.String)">
+            <summary>
+            Function to convert a given ValueMap or BitMap name to propert enum name
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ResolveEnumNameValues(System.Collections.ArrayList,System.Collections.ArrayList@)">
+            <summary>
+            This function goes thru the names in array list and resolves any duplicates
+            if any so that these names can be added as values of enum
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsContainedInArray(System.String,System.Collections.ArrayList)">
+            <summary>
+            This function will find a given string in the passed
+            array list.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.InitializeCodeGenerator(System.Management.CodeLanguage)">
+            <summary>
+            Function to create a appropriate generator
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GetUnsignedSupport(System.Management.CodeLanguage)">
+            <summary>
+            Function which checks if the language supports Unsigned numbers
+            </summary>
+            <param name="Language">Language</param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCommitMethod">
+            <summary>
+            Function which adds commit function to commit all the changes
+            to the object to WMI
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertBitMapValueToInt32(System.String)">
+            <summary>
+            Function to convert a value in format "0x..." to a integer
+            to the object to WMI
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GetConversionFunction(System.Management.CimType)">
+            <summary>
+            Function to get the Converstion function to be used for Numeric datatypes
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsDesignerSerializationVisibilityToBeSet(System.String)">
+            <summary>
+            Checks if a given property is to be visible for Designer seriliazation
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsPropertyValueType(System.Management.CimType)">
+            <summary>
+            Checks if the given property type is represented as ValueType
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsDynamicClass">
+            <summary>
+            Gets the dynamic qualifier on the class to find if the
+            class is a dynamic class
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertToNumericValueAndAddToArray(System.Management.CimType,System.String,System.Collections.ArrayList,System.String@)">
+            <summary>
+            Converts a numberic value to appropriate type and adds it to array
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.AddClassComments(System.CodeDom.CodeTypeDeclaration)">
+            <summary>
+            Adds comments at the beginning of the class defination
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateClassNameProperty">
+            <summary>
+            Generates code for ManagementClassName Property
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateIfClassvalidFuncWithAllParams">
+            <summary>
+            Generates the functions CheckIfProperClass() which checks if the given path
+            can be represented with the generated code
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateIfClassvalidFunction">
+            <summary>
+            Generates the functions CheckIfProperClass() which checks if the given path
+            can be represented with the generated code
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCodeForRefAndDateTimeTypes(System.CodeDom.CodeIndexerExpression,System.Boolean,System.CodeDom.CodeStatementCollection,System.String,System.CodeDom.CodeVariableReferenceExpression,System.Boolean)">
+            <summary>
+            Generates code for Property Get for Cimtype.Reference and CimType.DateTime type property
+            Also generated code to initialize a variable after converting a property to DateTime and ManagementPathProperty
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.AddPropertySet(System.CodeDom.CodeIndexerExpression,System.Boolean,System.CodeDom.CodeStatementCollection,System.String,System.CodeDom.CodeVariableReferenceExpression)">
+            <summary>
+            Generates code for Property Set for Cimtype.DateTime and CimType.Reference type property
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.CreateObjectForProperty(System.String,System.CodeDom.CodeExpression)">
+            <summary>
+            Internal function used to create object. Used in adding code for Property Get for DateTime and Reference properties
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertPropertyToString(System.String,System.CodeDom.CodeExpression)">
+            <summary>
+            Internal function used to create code to convert DateTime or ManagementPath to String
+            convert a expression. Used in adding code for Property Set for DateTime and Reference properties
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCreateInstance">
+            <summary>
+            This function generates static CreateInstance to create an WMI instance.
+            public static GenClass CreateInstance() {
+                   return new GenClass(new ManagementClass(new System.Management.ManagementClass(CreatedWmiNamespace, CreatedClassName, null).CreateInstance()));
+            }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateDeleteInstance">
+            <summary>
+            This function generates static CreateInstance to create an WMI instance.
+            public static GenClass CreateInstance() {
+                   PrivateLateBoundObject.Delete();
+            }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateDateTimeConversionFunction">
+            <summary>
+            Function to genreate helper function for DMTF to DateTime and DateTime to DMTF
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateTimeSpanConversionFunction">
+            <summary>
+            Function to genreate helper function for DMTF Time interval to TimeSpan and vice versa
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.AddToDateTimeFunction">
+            <summary>
+            Generated code for function to do conversion of date from DMTF format to DateTime format
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.DateTimeConversionFunctionHelper(System.CodeDom.CodeStatementCollection,System.String,System.String,System.String,System.String,System.Int32,System.Int32)">
+            <summary>
+            Generates some common code used in conversion function for DateTime
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch">
+             <summary>
+             The ThreadDispatch class allows clients to very easily spawn a thread, specify a worker delegate to be called from the
+             spawned thread and wait until thread finishes work. This is important in cases where a new thread needs to be spawned but
+             the main thread has to wait until the spawned thread finishes. As an example of this, in WMI we spawn MTA threads and create
+             various objects in these threads to make sure we avoid marshaling cost.
+             If the worker thread returns a value it is stored in the ThreadDispatch object and accessible to clients via the Result property.
+             Also, any exception thrown is propagated from worker thread to main thread (by rethrowing orinal exception):
+            
+                 ThreadDispatch disp = new ThreadDispatch ( new ThreadDispatch.ThreadWorkerMethod  ( Class1.Func ) ) ;
+                 disp.Start ( ) ;
+            
+             Four different delegate types are supported:
+            
+                 1. Delegate with no parameter and no return value.
+                 2. Delegate with no parameter and return value.
+                 3. Delegate with parameter and no return value.
+                 4. Delegate with parameter and return value.
+            
+             </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.Exception">
+            <summary>
+            [Get] Gets the exception associated with the operation performed by thread.
+            This can be null if no exception has been thrown.
+            </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.Parameter">
+            <summary>
+            [Get/Set] The parameter to be used by worker thread. This will typically be a 'this' reference for access to instance members.
+            </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.IsBackgroundThread">
+            <summary>
+            [Get/Set] The background property of a thread. Defaults to false.
+            </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.Result">
+            <summary>
+            [Get] The result of the worker method called.
+            </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.ApartmentType">
+            <summary>
+            [Get/Set] The thread apartment type
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch.ThreadWorkerMethodWithReturn">
+            <summary>
+            Delegate declaration representing signature of worker method with return value.
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch.ThreadWorkerMethodWithReturnAndParam">
+            <summary>
+            Delegate declaration representing signature of worker method with return value and parameter.
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch.ThreadWorkerMethod">
+            <summary>
+            Delegate declaration representing signature of worker method with no return value and no parameter
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch.ThreadWorkerMethodWithParam">
+            <summary>
+            Delegate declaration representing signature of worker method with parameter.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor(System.Management.ThreadDispatch.ThreadWorkerMethodWithReturn)">
+            <summary>
+            Constructs a ThreadDispatch object with the thread worker method.
+            Default settings on the ThreadDispatch object are:
+                1. Parameter is null
+                2. Thread ApartmentState will be MTA
+                3. Background thread status will be false
+            </summary>
+            <param name="workerMethod">Delegate to be called to perform the work</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor(System.Management.ThreadDispatch.ThreadWorkerMethodWithReturnAndParam)">
+            <summary>
+            Constructs a ThreadDispatch object with the thread worker method.
+            Default settings on the ThreadDispatch object are:
+                1. Parameter is null
+                2. Thread ApartmentState will be MTA
+                3. Background thread status will be false
+            </summary>
+            <param name="workerMethod">Delegate to be called to perform the work</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor(System.Management.ThreadDispatch.ThreadWorkerMethodWithParam)">
+            <summary>
+            Constructs a ThreadDispatch object with the thread worker method.
+            Default settings on the ThreadDispatch object are:
+                1. Parameter is null
+                2. Thread ApartmentState will be MTA
+                3. Background thread status will be false
+            </summary>
+            <param name="workerMethod">Delegate to be called to perform the work</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor(System.Management.ThreadDispatch.ThreadWorkerMethod)">
+            <summary>
+            Constructs a ThreadDispatch object with the thread worker method.
+            Default settings on the ThreadDispatch object are:
+                1. Parameter is null
+                2. Thread ApartmentState will be MTA
+                3. Background thread status will be false
+            </summary>
+            <param name="workerMethod">Delegate to be called to perform the work</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.Start">
+            <summary>
+            Starts the thread execution and waits for thread to finish. If an exception occurs in the worker method
+            this method rethrows the exception.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor">
+            <summary>
+            Initializes the ThreadDispatch instance with initial values. Note that this constructor is private to avoid
+            declaring instances without specifying at least a worker delegate instance.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.InitializeThreadState(System.Object,System.Management.ThreadDispatch.ThreadWorkerMethodWithReturn,System.Threading.ApartmentState,System.Boolean)">
+            <summary>
+            Initializes the thread state members.
+            </summary>
+            <param name="threadParams">Parameters to be passed to thread</param>
+            <param name="workerMethod">The delegate to be called from thread</param>
+            <param name="aptState">The apartment of the thread created</param>
+            <param name="background">Thread is created as a background or not</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.InitializeThreadState(System.Object,System.Management.ThreadDispatch.ThreadWorkerMethodWithReturnAndParam,System.Threading.ApartmentState,System.Boolean)">
+            <summary>
+            Initializes the thread state members.
+            </summary>
+            <param name="threadParams">Parameters to be passed to thread</param>
+            <param name="workerMethod">The delegate to be called from thread</param>
+            <param name="aptState">The apartment of the thread created</param>
+            <param name="background">Thread is created as a background or not</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.InitializeThreadState(System.Object,System.Management.ThreadDispatch.ThreadWorkerMethod,System.Threading.ApartmentState,System.Boolean)">
+            <summary>
+            Initializes the thread state members.
+            </summary>
+            <param name="threadParams">Parameters to be passed to thread</param>
+            <param name="workerMethod">The delegate to be called from thread</param>
+            <param name="aptState">The apartment of the thread created</param>
+            <param name="background">Thread is created as a background or not</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.InitializeThreadState(System.Object,System.Management.ThreadDispatch.ThreadWorkerMethodWithParam,System.Threading.ApartmentState,System.Boolean)">
+            <summary>
+            Initializes the thread state members.
+            </summary>
+            <param name="threadParams">Parameters to be passed to thread</param>
+            <param name="workerMethod">The delegate to be called from thread</param>
+            <param name="aptState">The apartment of the thread created</param>
+            <param name="background">Thread is created as a background or not</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.DispatchThread">
+            <summary>
+            Starts the execution of the thread and waits until the threadFinished event is signaled before continuing
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.ThreadEntryPoint">
+            <summary>
+            Entry point for the newly created thread. This method is wrapped in a try/catch block and captures any
+            exceptions thrown from the worker method and re-throws the exception.
+            The worker method for this thread entry point has no parameter and no return value.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.ThreadEntryPointMethodWithParam">
+            <summary>
+            Entry point for the newly created thread. This method is wrapped in a try/catch block and captures any
+            exceptions thrown from the worker method and re-throws the exception.
+            The worker method for this thread entry point takes a parameter and no return value.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.ThreadEntryPointMethodWithReturn">
+            <summary>
+            Entry point for the newly created thread. This method is wrapped in a try/catch block and captures any
+            exceptions thrown from the worker method and re-throws the exception.
+            The worker method for this thread entry point has no parameter but does return a value.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.ThreadEntryPointMethodWithReturnAndParam">
+            <summary>
+            Entry point for the newly created thread. This method is wrapped in a try/catch block and captures any
+            exceptions thrown from the worker method and re-throws the exception.
+            The worker method for this thread entry point has a parameter and return value.
+            </summary>
+        </member>
+        <member name="P:System.SR.InvalidQuery">
+            <summary>The Query string supplied was invalid or improperly formed</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryDuplicatedToken">
+            <summary>The Query string supplied was invalid because it contains a duplicate token</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryNullToken">
+            <summary>The Query string supplied was invalid because a supplied token was null</summary>
+        </member>
+        <member name="P:System.SR.WorkerThreadWakeupFailed">
+            <summary>Unable to wakeup the worker thread to create an object in MTA</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotInitializedException">
+            <summary>ClassName not initialized.</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotFoundException">
+            <summary>Class name does not match.</summary>
+        </member>
+        <member name="P:System.SR.CommentAttributeProperty">
+            <summary>Every property added to the class for WMI property has attributes set to define its behavior in Visual Studio designer and also to define a TypeConverter to be used.</summary>
+        </member>
+        <member name="P:System.SR.CommentAutoCommitProperty">
+            <summary>Property to show the commit behavior for the WMI object. If true, WMI object will be automatically saved after each property modification.(ie. Put() is called after modification of a property).</summary>
+        </member>
+        <member name="P:System.SR.CommentClassBegin">
+            <summary>An Early Bound class generated for the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentConstructors">
+            <summary>Below are different overloads of constructors to initialize an instance of the class with a WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedClass">
+            <summary>Private property to hold the name of WMI class which created this class.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedWmiNamespace">
+            <summary>Private property to hold the WMI namespace in which the class resides.</summary>
+        </member>
+        <member name="P:System.SR.CommentCurrentObject">
+            <summary>The current WMI object used</summary>
+        </member>
+        <member name="P:System.SR.CommentDateConversionFunction">
+            <summary>Datetime conversion functions ToDateTime and ToDmtfDateTime are added to the class to convert DMTF datetime to System.DateTime and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentEmbeddedObject">
+            <summary>Private variable to hold the embedded property representing the instance.</summary>
+        </member>
+        <member name="P:System.SR.CommentEnumeratorImplementation">
+            <summary>Enumerator implementation for enumerating instances of the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentFlagForEmbedded">
+            <summary>Flag to indicate if the instance is an embedded object.</summary>
+        </member>
+        <member name="P:System.SR.CommentGetInstances">
+            <summary>Different overloads of GetInstances() help in enumerating instances of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentIsPropNull">
+            <summary>Functions Is&lt;PropertyName&gt;Null() are used to check if a property is NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundObject">
+            <summary>Underlying lateBound WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundProperty">
+            <summary>Property returning the underlying lateBound object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementPath">
+            <summary>The ManagementPath of the underlying WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementScope">
+            <summary>ManagementScope of the object.</summary>
+        </member>
+        <member name="P:System.SR.CommentOriginNamespace">
+            <summary>Property returns the namespace of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrivateAutoCommit">
+            <summary>Member variable to store the 'automatic commit' behavior for the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrototypeConverter">
+            <summary>TypeConverter to handle null values for ValueType properties</summary>
+        </member>
+        <member name="P:System.SR.CommentResetProperty">
+            <summary>Functions Reset&lt;PropertyName&gt; are added for Nullable Read/Write properties. These functions are used by VS designer in property browser to set a property to NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentShouldSerialize">
+            <summary>Functions ShouldSerialize&lt;PropertyName&gt; are functions used by VS property browser to check if a particular property has to be serialized. These functions are added for all ValueType properties ( properties of type Int32, BOOL etc.. which cannot be set to n ...</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticManagementScope">
+            <summary>Private member variable to hold the ManagementScope which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticScopeProperty">
+            <summary>Public static scope property which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemObject">
+            <summary>Property pointing to an embedded object to get System properties of the WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemPropertiesClass">
+            <summary>Embedded class to represent WMI system Properties.</summary>
+        </member>
+        <member name="P:System.SR.CommentTimeSpanConvertionFunction">
+            <summary>Time interval functions  ToTimeSpan and ToDmtfTimeInterval are added to the class to convert DMTF Time Interval to  System.TimeSpan and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDateTime">
+            <summary>Converts a given datetime in DMTF format to System.DateTime object.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfDateTime">
+            <summary>Converts a given System.DateTime object to DMTF datetime format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfTimeInterval">
+            <summary>Converts a given System.TimeSpan object to DMTF Time interval format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToTimeSpan">
+            <summary>Converts a given time interval in DMTF format to System.TimeSpan object.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment">
+            <summary>If the embedded property is strongly typed then, to strongly type the property to the type of</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment2">
+            <summary>the embedded object, you have to do the following things.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment3">
+            <summary>\t1. Generate Managed class for the WMI class of the embedded property. This can be done with MgmtClassGen.exe tool or from Server Explorer.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment4">
+            <summary>\t2. Include the namespace of the generated class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment5">
+            <summary>\t3. Change the property get/set functions so as return the instance of the Managed class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment6">
+            <summary>Below is a sample code.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment7">
+            <summary>VB Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment8">
+            <summary>C# Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment1">
+            <summary>public &lt;ManagedClassName of Embedded property&gt; &lt;PropertyName&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment10">
+            <summary>\t\tIf (AutoCommitProp == true &amp;&amp; isEmbedded == false)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment11">
+            <summary>\t\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment12">
+            <summary>\t\t\tPrivateLateBoundObject.Put();</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment13">
+            <summary>\t\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment14">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment15">
+            <summary>}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment2">
+            <summary>{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment3">
+            <summary>\tget</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment4">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment5">
+            <summary>\t\treturn new &lt;ManagedClassName of Embedded property&gt;((System.Management.ManagementBaseObject)(curObj["&lt;PropertyName&gt;"]));</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment6">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment7">
+            <summary>\tset</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment8">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment9">
+            <summary>\t\tcurObj["&lt;PropertyName&gt;"] = value.LateBoundObject;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment1">
+            <summary>Public Property &lt;PropertyName&gt;() As &lt;ManagedClassName of Embedded property&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment10">
+            <summary>\tEnd Set</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment2">
+            <summary>\tGet</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment3">
+            <summary>\t\tReturn New &lt;ManagedClassName of Embedded Property&gt;(CType(curObj("&lt;PropertyName&gt;"),System.Management.ManagementBaseObject))</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment4">
+            <summary>\tEnd Get</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment5">
+            <summary>\tSet(ByVal Value As &lt;ManagedClassName of Embedded property&gt;)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment6">
+            <summary>\t\tcurObj("EObject")=Value.LateBoundObject</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment7">
+            <summary>\t\tIf (AutoCommitProp = True And isEmbedded = False) Then</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment8">
+            <summary>\t\t\tPrivateLateBoundObject.Put()</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment9">
+            <summary>\t\tEnd If</summary>
+        </member>
+        <member name="P:System.SR.EmptyFilePathException">
+            <summary>FilePath cannot be empty.</summary>
+        </member>
+        <member name="P:System.SR.NamespaceNotInitializedException">
+            <summary>Namespace not initialized.</summary>
+        </member>
+        <member name="P:System.SR.NullFilePathException">
+            <summary>FilePath or code generator object is null.</summary>
+        </member>
+        <member name="P:System.SR.UnableToCreateCodeGeneratorException">
+            <summary>Unable to create code generator for '{0}'</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_SystemManagement">
+            <summary>System.Management currently is only supported for Windows desktop applications.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FullFrameworkRequired">
+            <summary>Could not find an installation of .NET Framework v4.0.30319. System.Management requires native modules from the .NET Framework to operate.</summary>
+        </member>
+        <member name="P:System.SR.LoadLibraryFailed">
+            <summary>Failed to load required native library '{0}'.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FrameworkUpdatedRequired">
+            <summary>The native library '{0}' does not have all required functions. Please, update the .NET Framework.</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryTokenExpected">
+            <summary>The Query string supplied was invalid or improperly formed. Token `{0}` is expected</summary>
+        </member>
+    </members>
+</doc>
diff --git a/packages/System.Management.6.0.0/runtimes/win/lib/netcoreapp3.1/System.Management.xml b/packages/System.Management.6.0.0/runtimes/win/lib/netcoreapp3.1/System.Management.xml
new file mode 100644
index 0000000..ea06e19
--- /dev/null
+++ b/packages/System.Management.6.0.0/runtimes/win/lib/netcoreapp3.1/System.Management.xml
@@ -0,0 +1,9755 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>System.Management</name>
+    </assembly>
+    <members>
+        <member name="T:System.Management.TextFormat">
+            <summary>
+            <para>Describes the possible text formats that can be used with <see cref='M:System.Management.ManagementBaseObject.GetText(System.Management.TextFormat)'/>.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.TextFormat.Mof">
+            <summary>
+            Managed Object Format
+            </summary>
+        </member>
+        <member name="F:System.Management.TextFormat.CimDtd20">
+            <summary>
+            XML DTD that corresponds to CIM DTD version 2.0
+            </summary>
+        </member>
+        <member name="F:System.Management.TextFormat.WmiDtd20">
+            <summary>
+            XML WMI DTD that corresponds to CIM DTD version 2.0.
+            Using this value enables a few WMI-specific extensions, like embedded objects.
+            </summary>
+        </member>
+        <member name="T:System.Management.CimType">
+            <summary>
+               <para>Describes the possible CIM types for properties, qualifiers, or method parameters.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.None">
+            <summary>
+               <para>Invalid Type</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.SInt8">
+            <summary>
+               <para>A signed 8-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.UInt8">
+            <summary>
+               <para>An unsigned 8-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.SInt16">
+            <summary>
+               <para>A signed 16-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.UInt16">
+            <summary>
+               <para>An unsigned 16-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.SInt32">
+            <summary>
+               <para>A signed 32-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.UInt32">
+            <summary>
+               <para>An unsigned 32-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.SInt64">
+            <summary>
+               <para>A signed 64-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.UInt64">
+            <summary>
+               <para>An unsigned 64-bit integer.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Real32">
+            <summary>
+               <para>A floating-point 32-bit number.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Real64">
+            <summary>
+               <para>A floating point 64-bit number.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Boolean">
+            <summary>
+               <para> A boolean.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.String">
+            <summary>
+               <para>A string.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.DateTime">
+            <summary>
+               <para> A date or time value, represented in a string in DMTF
+                  date/time format: yyyymmddHHMMSS.mmmmmmsUUU</para>
+               <para>where:</para>
+               <para>yyyymmdd - is the date in year/month/day</para>
+               <para>HHMMSS - is the time in hours/minutes/seconds</para>
+               <para>mmmmmm - is the number of microseconds in 6 digits</para>
+               <para>sUUU - is a sign (+ or -) and a 3-digit UTC offset</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Reference">
+            <summary>
+               <para>A reference to another object. This is represented by a
+                  string containing the path to the referenced object</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Char16">
+            <summary>
+               <para> A 16-bit character.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CimType.Object">
+            <summary>
+               <para>An embedded object.</para>
+               <para>Note that embedded objects differ from references in that the embedded object
+                  doesn't have a path and its lifetime is identical to the lifetime of the
+                  containing object.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ComparisonSettings">
+            <summary>
+            <para>Describes the object comparison modes that can be used with <see cref='M:System.Management.ManagementBaseObject.CompareTo(System.Management.ManagementBaseObject,System.Management.ComparisonSettings)'/>.
+               Note that these values may be combined.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IncludeAll">
+            <summary>
+               <para>A mode that compares all elements of the compared objects.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreQualifiers">
+            <summary>
+               <para>A mode that compares the objects, ignoring qualifiers.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreObjectSource">
+            <summary>
+               <para> A mode that ignores the source of the objects, namely the server
+                  and the namespace they came from, in comparison to other objects.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreDefaultValues">
+            <summary>
+               <para> A mode that ignores the default values of properties.
+                  This value is only meaningful when comparing classes.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreClass">
+            <summary>
+               <para>A mode that assumes that the objects being compared are instances of
+                  the same class. Consequently, this value causes comparison
+                  of instance-related information only. Use this flag to optimize
+                  performance. If the objects are not of the same class, the results are undefined.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreCase">
+            <summary>
+               <para> A mode that compares string values in a case-insensitive
+                  manner. This applies to strings and to qualifier values. Property and qualifier
+                  names are always compared in a case-insensitive manner whether this flag is
+                  specified or not.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ComparisonSettings.IgnoreFlavor">
+            <summary>
+               <para>A mode that ignores qualifier flavors. This flag still takes
+                  qualifier values into account, but ignores flavor distinctions such as
+                  propagation rules and override restrictions.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementBaseObject">
+            <summary>
+               <para> Contains the basic elements of a management
+                  object. It serves as a base class to more specific management object classes.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementBaseObject'/> class that is serializable.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.op_Explicit(System.Management.ManagementBaseObject)~System.IntPtr">
+            <summary>
+               <para>Provides the internal WMI object represented by a ManagementObject.</para>
+               <para>See remarks with regard to usage.</para>
+            </summary>
+            <param name='managementObject'>The <see cref='T:System.Management.ManagementBaseObject'/> that references the requested WMI object. </param>
+            <returns>
+            <para>An <see cref='T:System.IntPtr'/> representing the internal WMI object.</para>
+            </returns>
+            <remarks>
+               <para>This operator is used internally by instrumentation code. It is not intended
+                  for direct use by regular client or instrumented applications.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetBaseObject(System.Management.IWbemClassObjectFreeThreaded,System.Management.ManagementScope)">
+            <summary>
+            Factory for various types of base object
+            </summary>
+            <param name="wbemObject"> IWbemClassObject </param>
+            <param name="scope"> The scope</param>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The new cloned object.</para>
+            </returns>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.Properties">
+            <summary>
+            <para>Gets or sets a collection of <see cref='T:System.Management.PropertyData'/> objects describing the properties of the
+               management object.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.PropertyDataCollection'/> that represents the
+               properties of the management object.</para>
+            </value>
+            <seealso cref='T:System.Management.PropertyData'/>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.SystemProperties">
+            <summary>
+               <para>Gets or sets the collection of WMI system properties of the management object (for example, the
+                  class name, server, and namespace). WMI system property names begin with
+                  "__".</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.PropertyDataCollection'/> that represents the system properties of the management object.</para>
+            </value>
+            <seealso cref='T:System.Management.PropertyData'/>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.Qualifiers">
+            <summary>
+            <para>Gets or sets the collection of <see cref='T:System.Management.QualifierData'/> objects defined on the management object.
+               Each element in the collection holds information such as the qualifier name,
+               value, and flavor.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.QualifierDataCollection'/> that represents the qualifiers
+               defined on the management object.</para>
+            </value>
+            <seealso cref='T:System.Management.QualifierData'/>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.ClassPath">
+            <summary>
+               <para>Gets or sets the path to the management object's class.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementPath'/> that represents the path to the management object's class.</para>
+            </value>
+            <example>
+               <para>For example, for the \\MyBox\root\cimv2:Win32_LogicalDisk=
+                  'C:' object, the class path is \\MyBox\root\cimv2:Win32_LogicalDisk
+                  .</para>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementBaseObject.Item(System.String)">
+            <summary>
+               <para> Gets access to property values through [] notation.</para>
+            </summary>
+            <param name='propertyName'>The name of the property of interest. </param>
+            <value>
+               An <see cref='T:System.Object'/> containing the
+               value of the requested property.
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetPropertyValue(System.String)">
+            <summary>
+               <para>Gets an equivalent accessor to a property's value.</para>
+            </summary>
+            <param name='propertyName'>The name of the property of interest. </param>
+            <returns>
+               <para>The value of the specified property.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetQualifierValue(System.String)">
+            <summary>
+               <para>Gets the value of the specified qualifier.</para>
+            </summary>
+            <param name='qualifierName'>The name of the qualifier of interest. </param>
+            <returns>
+               <para>The value of the specified qualifier.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.SetQualifierValue(System.String,System.Object)">
+            <summary>
+               <para>Sets the value of the named qualifier.</para>
+            </summary>
+            <param name='qualifierName'>The name of the qualifier to set. This parameter cannot be null.</param>
+            <param name='qualifierValue'>The value to set.</param>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetPropertyQualifierValue(System.String,System.String)">
+            <summary>
+               <para>Returns the value of the specified property qualifier.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to which the qualifier belongs. </param>
+            <param name='qualifierName'>The name of the property qualifier of interest. </param>
+            <returns>
+               <para>The value of the specified qualifier.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.SetPropertyQualifierValue(System.String,System.String,System.Object)">
+            <summary>
+               <para>Sets the value of the specified property qualifier.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to which the qualifier belongs.</param>
+            <param name='qualifierName'>The name of the property qualifier of interest.</param>
+            <param name='qualifierValue'>The new value for the qualifier.</param>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetText(System.Management.TextFormat)">
+            <summary>
+               <para>Returns a textual representation of the object in the specified format.</para>
+            </summary>
+            <param name='format'>The requested textual format. </param>
+            <returns>
+               <para>The textual representation of the
+                  object in the specified format.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.Equals(System.Object)">
+            <summary>
+               <para>Compares two management objects.</para>
+            </summary>
+            <param name='obj'>An object to compare with this instance.</param>
+            <returns>
+            <see langword='true'/> if
+            <paramref name="obj"/> is an instance of <see cref='T:System.Management.ManagementBaseObject'/> and represents
+               the same object as this instance; otherwise, <see langword='false'/>.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.GetHashCode">
+            <summary>
+                <para>Serves as a hash function for a particular type, suitable for use in hashing algorithms and data structures like a hash table.</para>
+                   <para>The hash code for ManagementBaseObjects is based on the MOF for the WbemObject that this instance is based on.  Two different ManagementBaseObject instances pointing to the same WbemObject in WMI will have the same mof and thus the same hash code.  Changing a property value of an object will change the hash code. </para>
+            </summary>
+            <returns>
+                <para>A hash code for the current object. </para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.CompareTo(System.Management.ManagementBaseObject,System.Management.ComparisonSettings)">
+            <summary>
+               <para>Compares this object to another, based on specified options.</para>
+            </summary>
+            <param name='otherObject'>The object to which to compare this object. </param>
+            <param name='settings'>Options on how to compare the objects. </param>
+            <returns>
+            <para><see langword='true'/> if the objects compared are equal
+               according to the given options; otherwise, <see langword='false'/>
+               .</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementBaseObject.SetPropertyValue(System.String,System.Object)">
+            <summary>
+               <para>Sets the value of the named property.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to be changed.</param>
+            <param name='propertyValue'>The new value for this property.</param>
+        </member>
+        <member name="T:System.Management.ManagementClass">
+             <summary>
+                <para> Represents a CIM management class from WMI. CIM (Common Information Model) classes
+                        represent management information including hardware, software, processes, etc.
+                        For more information about the CIM classes available in Windows search for "win32 classes".</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates getting information about a class using the ManagementClass object
+             class Sample_ManagementClass
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     diskClass.Get();
+                     Console.WriteLine("Logical Disk class has " + diskClass.Properties.Count + " properties");
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates getting information about a class using the ManagementClass object
+             Class Sample_ManagementClass
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                     diskClass.Get()
+                     Console.WriteLine(("Logical Disk class has " &amp; _
+                                        diskClass.Properties.Count.ToString() &amp; _
+                                        " properties"))
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetManagementClass(System.Management.IWbemClassObjectFreeThreaded,System.Management.ManagementClass)">
+            <summary>
+            Internal factory for classes, used when deriving a class
+            or cloning a class. For these purposes we always mark
+            the class as "bound".
+            </summary>
+            <param name="wbemObject">The underlying WMI object</param>
+            <param name="mgObj">Seed class from which we will get initialization info</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.ManagementClass'/> class.
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class. This is the
+               default constructor.</para>
+            </summary>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass();
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass()
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.Management.ManagementPath)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class initialized to the
+               given path.</para>
+            </summary>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> specifying which WMI class to bind to.</param>
+            <remarks>
+            <para>The <paramref name="path"/> parameter must specify a WMI class
+               path.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass(
+                new ManagementPath("Win32_LogicalDisk"));
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass( _
+                New ManagementPath("Win32_LogicalDisk"))
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class initialized to the given path.</para>
+            </summary>
+            <param name='path'>The path to the WMI class.</param>
+            <example>
+               <code lang='C#'>ManagementClass c = new
+                  ManagementClass("Win32_LogicalDisk");
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("Win32_LogicalDisk")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.Management.ManagementPath,System.Management.ObjectGetOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class initialized to the
+               given WMI class path using the specified options.</para>
+            </summary>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> representing the WMI class path.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> representing the options to use when retrieving this class.</param>
+            <example>
+               <code lang='C#'>ManagementPath p = new ManagementPath("Win32_Process");
+            //Options specify that amended qualifiers are to be retrieved along with the class
+            ObjectGetOptions o = new ObjectGetOptions(null, true);
+            ManagementClass c = new ManagementClass(p,o);
+               </code>
+               <code lang='VB'>Dim p As New ManagementPath("Win32_Process")
+            ' Options specify that amended qualifiers are to be retrieved along with the class
+            Dim o As New ObjectGetOptions(Null, True)
+            Dim c As New ManagementClass(p,o)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.String,System.Management.ObjectGetOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class initialized to the given WMI class path
+               using the specified options.</para>
+            </summary>
+            <param name='path'>The path to the WMI class.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> representing the options to use when retrieving the WMI class.</param>
+            <example>
+               <code lang='C#'>//Options specify that amended qualifiers should be retrieved along with the class
+            ObjectGetOptions o = new ObjectGetOptions(null, true);
+            ManagementClass c = new ManagementClass("Win32_ComputerSystem",o);
+               </code>
+               <code lang='VB'>' Options specify that amended qualifiers should be retrieved along with the class
+            Dim o As New ObjectGetOptions(Null, True)
+            Dim c As New ManagementClass("Win32_ComputerSystem",o)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.Management.ManagementScope,System.Management.ManagementPath,System.Management.ObjectGetOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class for the specified
+               WMI class in the specified scope and with the specified options.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> that specifies the scope (server and namespace) where the WMI class resides. </param>
+            <param name=' path'>A <see cref='T:System.Management.ManagementPath'/> that represents the path to the WMI class in the specified scope.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> that specifies the options to use when retrieving the WMI class.</param>
+            <remarks>
+               <para> The path can be specified as a full
+                  path (including server and namespace). However, if a scope is specified, it will
+                  override the first portion of the full path.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope("\\\\MyBox\\root\\cimv2");
+            ManagementPath p = new ManagementPath("Win32_Environment");
+            ObjectGetOptions o = new ObjectGetOptions(null, true);
+            ManagementClass c = new ManagementClass(s, p, o);
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope("\\MyBox\root\cimv2")
+            Dim p As New ManagementPath("Win32_Environment")
+            Dim o As New ObjectGetOptions(Null, True)
+            Dim c As New ManagementClass(s, p, o)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.#ctor(System.String,System.String,System.Management.ObjectGetOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementClass'/> class for the specified WMI class, in the
+               specified scope, and with the specified options.</para>
+            </summary>
+            <param name='scope'>The scope in which the WMI class resides.</param>
+            <param name=' path'>The path to the WMI class within the specified scope.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> that specifies the options to use when retrieving the WMI class.</param>
+            <remarks>
+               <para> The path can be specified as a full
+                  path (including server and namespace). However, if a scope is specified, it will
+                  override the first portion of the full path.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("\\\\MyBox\\root\\cimv2",
+                                                    "Win32_Environment",
+                                                    new ObjectGetOptions(null, true));
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("\\MyBox\root\cimv2", _
+                                         "Win32_Environment", _
+                                         new ObjectGetOptions(Null, True))
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementClass.Path">
+            <summary>
+               <para>Gets or sets the path of the WMI class to
+                  which the <see cref='T:System.Management.ManagementClass'/>
+                  object is bound.</para>
+            </summary>
+            <value>
+               <para>The path of the object's class.</para>
+            </value>
+            <remarks>
+               <para> When the property is set to a new value,
+                  the <see cref='T:System.Management.ManagementClass'/>
+                  object will be
+                  disconnected from any previously-bound WMI class. Reconnect to the new WMI class path.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass();
+            c.Path = "Win32_Environment";
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass()
+            c.Path = "Win32_Environment"
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementClass.Derivation">
+            <summary>
+               <para> Gets or sets an array containing all WMI classes in the
+                  inheritance hierarchy from this class to the top.</para>
+            </summary>
+            <value>
+               A string collection containing the
+               names of all WMI classes in the inheritance hierarchy of this class.
+            </value>
+            <remarks>
+               <para>This property is read-only.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("Win32_LogicalDisk");
+            foreach (string s in c.Derivation)
+                Console.WriteLine("Further derived from : ", s);
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("Win32_LogicalDisk")
+            Dim s As String
+            For Each s In c.Derivation
+                Console.WriteLine("Further derived from : " &amp; s)
+            Next s
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementClass.Methods">
+            <summary>
+            <para>Gets or sets a collection of <see cref='T:System.Management.MethodData'/> objects that
+               represent the methods defined in the WMI class.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.MethodDataCollection'/> representing the methods defined in the WMI class.</para>
+            </value>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("Win32_Process");
+            foreach (Method m in c.Methods)
+                Console.WriteLine("This class contains this method : ", m.Name);
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("Win32_Process")
+            Dim m As Method
+            For Each m in c.Methods
+                 Console.WriteLine("This class contains this method : " &amp; m.Name)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetInstances">
+            <overload>
+               Returns the collection of
+               all instances of the class.
+            </overload>
+            <summary>
+               <para>Returns the collection of all instances of the class.</para>
+            </summary>
+            <returns>
+            <para>A collection of the <see cref='T:System.Management.ManagementObject'/> objects
+               representing the instances of the class.</para>
+            </returns>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("Win32_Process");
+            foreach (ManagementObject o in c.GetInstances())
+                 Console.WriteLine("Next instance of Win32_Process : ", o.Path);
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("Win32_Process")
+            Dim o As ManagementObject
+            For Each o In c.GetInstances()
+                 Console.WriteLine("Next instance of Win32_Process : " &amp; o.Path)
+            Next o
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetInstances(System.Management.EnumerationOptions)">
+            <summary>
+               <para>Returns the collection of all instances of the class using the specified options.</para>
+            </summary>
+            <param name='options'>The additional operation options.</param>
+            <returns>
+            <para>A collection of the <see cref='T:System.Management.ManagementObject'/> objects
+               representing the instances of the class, according to the specified options.</para>
+            </returns>
+            <example>
+               <code lang='C#'>EnumerationOptions opt = new EnumerationOptions();
+            //Will enumerate instances of the given class and any subclasses.
+            o.enumerateDeep = true;
+            ManagementClass c = new ManagementClass("CIM_Service");
+            foreach (ManagementObject o in c.GetInstances(opt))
+                Console.WriteLine(o["Name"]);
+               </code>
+               <code lang='VB'>Dim opt As New EnumerationOptions()
+            'Will enumerate instances of the given class and any subclasses.
+            o.enumerateDeep = True
+            Dim c As New ManagementClass("CIM_Service")
+            Dim o As ManagementObject
+            For Each o In c.GetInstances(opt)
+                Console.WriteLine(o["Name"])
+            Next o
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetInstances(System.Management.ManagementOperationObserver)">
+             <summary>
+                <para>Returns the collection of all instances of the class, asynchronously.</para>
+             </summary>
+             <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+             <example>
+                <code lang='C#'>ManagementClass c = new ManagementClass("Win32_Share");
+             MyHandler h = new MyHandler();
+             ManagementOperationObserver ob = new ManagementOperationObserver();
+             ob.ObjectReady += new ObjectReadyEventHandler (h.NewObject);
+             ob.Completed += new CompletedEventHandler (h.Done);
+            
+             c.GetInstances(ob);
+            
+             while (!h.Completed)
+                 System.Threading.Thread.Sleep (1000);
+            
+             //Here you can use the object
+             Console.WriteLine(o["SomeProperty"]);
+            
+             public class MyHandler
+             {
+                 private bool completed = false;
+            
+                 public void NewObject(object sender, ObjectReadyEventArgs e) {
+                     Console.WriteLine("New result arrived !", ((ManagementObject)(e.NewObject))["Name"]);
+                 }
+            
+                 public void Done(object sender, CompletedEventArgs e) {
+                     Console.WriteLine("async Get completed !");
+                     completed = true;
+                 }
+            
+                 public bool Completed {
+                     get {
+                         return completed;
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Dim c As New ManagementClass("Win32_Share")
+             Dim h As New MyHandler()
+             Dim ob As New ManagementOperationObserver()
+             ob.ObjectReady += New ObjectReadyEventHandler(h.NewObject)
+             ob.Completed += New CompletedEventHandler(h.Done)
+            
+             c.GetInstances(ob)
+            
+             While Not h.Completed
+                 System.Threading.Thread.Sleep(1000)
+             End While
+            
+             'Here you can use the object
+             Console.WriteLine(o("SomeProperty"))
+            
+             Public Class MyHandler
+                 Private completed As Boolean = false
+            
+                 Public Sub Done(sender As Object, e As EventArrivedEventArgs)
+                     Console.WriteLine("async Get completed !")
+                 completed = True
+                 End Sub
+            
+                 Public ReadOnly Property Completed() As Boolean
+                     Get
+                         Return completed
+                 End Get
+                 End Property
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetInstances(System.Management.ManagementOperationObserver,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Returns the collection of all instances of the class, asynchronously, using
+                  the specified options.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+            <param name=' options'>The specified additional options for getting the instances.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetSubclasses">
+            <overload>
+               Returns the collection of
+               all derived classes for the class.
+            </overload>
+            <summary>
+               <para>Returns the collection of all subclasses for the class.</para>
+            </summary>
+            <returns>
+            <para>A collection of the <see cref='T:System.Management.ManagementObject'/> objects that
+               represent the subclasses of the WMI class.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetSubclasses(System.Management.EnumerationOptions)">
+             <summary>
+                <para>Retrieves the subclasses of the class using the specified
+                   options.</para>
+             </summary>
+             <param name='options'>The specified additional options for retrieving subclasses of the class.</param>
+             <returns>
+             <para>A collection of the <see cref='T:System.Management.ManagementObject'/> objects
+                representing the subclasses of the WMI class, according to the specified
+                options.</para>
+             </returns>
+             <example>
+                <code lang='C#'>EnumerationOptions opt = new EnumerationOptions();
+            
+             //Causes return of deep subclasses as opposed to only immediate ones.
+             opt.enumerateDeep = true;
+            
+             ManagementObjectCollection c = (new
+                   ManagementClass("Win32_Share")).GetSubclasses(opt);
+                </code>
+                <code lang='VB'>Dim opt As New EnumerationOptions()
+            
+             'Causes return of deep subclasses as opposed to only immediate ones.
+             opt.enumerateDeep = true
+            
+             Dim cls As New ManagementClass("Win32_Share")
+             Dim c As ManagementObjectCollection
+            
+             c = cls.GetSubClasses(opt)
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetSubclasses(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Returns the collection of all classes derived from this class, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetSubclasses(System.Management.ManagementOperationObserver,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Retrieves all classes derived from this class, asynchronously, using the specified
+                  options.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+            <param name='options'>The specified additional options to use in the derived class retrieval.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.Derive(System.String)">
+             <summary>
+                <para>Derives a new class from this class.</para>
+             </summary>
+             <param name='newClassName'>The name of the new class to be derived.</param>
+             <returns>
+             <para>A new <see cref='T:System.Management.ManagementClass'/>
+             that represents a new WMI class derived from the original class.</para>
+             </returns>
+             <remarks>
+                <para>Note that the newly returned class has not been committed
+                   until the <see cref='M:System.Management.ManagementObject.Put'/> method is explicitly called.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementClass existingClass = new ManagementClass("CIM_Service");
+                ManagementClass newClass = existingClass.Derive("My_Service");
+                newClass.Put(); //to commit the new class to the WMI repository.
+                </code>
+                <code lang='VB'>Dim existingClass As New ManagementClass("CIM_Service")
+             Dim newClass As ManagementClass
+            
+             newClass = existingClass.Derive("My_Service")
+             newClass.Put()  'to commit the new class to the WMI repository.
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.CreateInstance">
+             <summary>
+                <para>Creates a new instance of the WMI class.</para>
+             </summary>
+             <returns>
+             <para>A <see cref='T:System.Management.ManagementObject'/> that represents a new
+                instance of the WMI class.</para>
+             </returns>
+             <remarks>
+                <para>Note that the new instance is not committed until the
+                <see cref='M:System.Management.ManagementObject.Put'/> method is called. Before committing it, the key properties must
+                   be specified.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementClass envClass = new ManagementClass("Win32_Environment");
+                ManagementObject newInstance =
+                   existingClass.CreateInstance("My_Service");
+                newInstance["Name"] = "Cori";
+                newInstance.Put(); //to commit the new instance.
+                </code>
+                <code lang='VB'>Dim envClass As New ManagementClass("Win32_Environment")
+             Dim newInstance As ManagementObject
+            
+             newInstance = existingClass.CreateInstance("My_Service")
+             newInstance("Name") = "Cori"
+             newInstance.Put()  'to commit the new instance.
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para> The cloned
+                  object.</para>
+            </returns>
+            <remarks>
+               <para>Note that this does not create a copy of the
+                  WMI class; only an additional representation is created.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses">
+             <overload>
+                Retrieves classes related
+                to the WMI class.
+             </overload>
+             <summary>
+                <para> Retrieves classes related to the WMI class.</para>
+             </summary>
+             <returns>
+             <para>A collection of the <see cref='T:System.Management.ManagementClass'/> or <see cref='T:System.Management.ManagementObject'/>
+             objects that represents WMI classes or instances related to
+             the WMI class.</para>
+             </returns>
+             <remarks>
+                <para>The method queries the WMI schema for all
+                   possible associations that the WMI class may have with other classes, or in rare
+                   cases, to instances.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementClass c = new ManagementClass("Win32_LogicalDisk");
+            
+             foreach (ManagementClass r in c.GetRelatedClasses())
+                 Console.WriteLine("Instances of {0} may have
+                                    relationships to this class", r["__CLASS"]);
+                </code>
+                <code lang='VB'>Dim c As New ManagementClass("Win32_LogicalDisk")
+             Dim r As ManagementClass
+            
+             For Each r In c.GetRelatedClasses()
+                 Console.WriteLine("Instances of {0} may have relationships _
+                                    to this class", r("__CLASS"))
+             Next r
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.String)">
+            <summary>
+               <para> Retrieves classes related to the WMI class.</para>
+            </summary>
+            <param name='relatedClass'><para>The class from which resulting classes have to be derived.</para></param>
+            <returns>
+               A collection of classes related to
+               this class.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.String,System.String,System.String,System.String,System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+               <para> Retrieves classes related to the WMI class based on the specified
+                  options.</para>
+            </summary>
+            <param name=' relatedClass'><para>The class from which resulting classes have to be derived.</para></param>
+            <param name=' relationshipClass'> The relationship type which resulting classes must have with the source class.</param>
+            <param name=' relationshipQualifier'>This qualifier must be present on the relationship.</param>
+            <param name=' relatedQualifier'>This qualifier must be present on the resulting classes.</param>
+            <param name=' relatedRole'>The resulting classes must have this role in the relationship.</param>
+            <param name=' thisRole'>The source class must have this role in the relationship.</param>
+            <param name=' options'>The options for retrieving the resulting classes.</param>
+            <returns>
+               <para>A collection of classes related to
+                  this class.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para> Retrieves classes
+                  related to the WMI class, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para> Retrieves classes related to the WMI class, asynchronously, given the related
+                  class name.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+            <param name=' relatedClass'>The name of the related class.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelatedClasses(System.Management.ManagementOperationObserver,System.String,System.String,System.String,System.String,System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+               <para> Retrieves classes related to the
+                  WMI class, asynchronously, using the specified options.</para>
+            </summary>
+            <param name='watcher'>Handler for progress and results of the asynchronous operation.</param>
+            <param name=' relatedClass'><para>The class from which resulting classes have to be derived.</para></param>
+            <param name=' relationshipClass'> The relationship type which resulting classes must have with the source class.</param>
+            <param name=' relationshipQualifier'>This qualifier must be present on the relationship.</param>
+            <param name=' relatedQualifier'>This qualifier must be present on the resulting classes.</param>
+            <param name=' relatedRole'>The resulting classes must have this role in the relationship.</param>
+            <param name=' thisRole'>The source class must have this role in the relationship.</param>
+            <param name=' options'>The options for retrieving the resulting classes.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses">
+            <overload>
+               Retrieves relationship
+               classes that relate the class to others.
+            </overload>
+            <summary>
+               <para>Retrieves relationship classes that relate the class to others.</para>
+            </summary>
+            <returns>
+               <para>A collection of association classes
+                  that relate the class to any other class.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.String)">
+            <summary>
+               <para>Retrieves relationship classes that relate the class to others, where the
+                  endpoint class is the specified class.</para>
+            </summary>
+            <param name='relationshipClass'>The endpoint class for all relationship classes returned.</param>
+            <returns>
+               <para>A collection of association classes
+                  that relate the class to the specified class.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.String,System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+               <para> Retrieves relationship classes that relate this class to others, according to
+                  specified options.</para>
+            </summary>
+            <param name='relationshipClass'><para> All resulting relationship classes must derive from this class.</para></param>
+            <param name=' relationshipQualifier'>Resulting relationship classes must have this qualifier.</param>
+            <param name=' thisRole'>The source class must have this role in the resulting relationship classes.</param>
+            <param name=' options'>Specifies options for retrieving the results.</param>
+            <returns>
+               <para>A collection of association classes
+                  that relate this class to others, according to the specified options.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Retrieves relationship classes that relate the class to others,
+                  asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para>Retrieves relationship classes that relate the class to the specified WMI class,
+                  asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to handle the asynchronous operation's progress. </param>
+            <param name=' relationshipClass'>The WMI class to which all returned relationships should point.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetRelationshipClasses(System.Management.ManagementOperationObserver,System.String,System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Retrieves relationship classes that relate the class according to the specified
+                  options, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The handler for progress and results of the asynchronous operation.</param>
+            <param name='relationshipClass'><para>The class from which all resulting relationship classes must derive.</para></param>
+            <param name=' relationshipQualifier'>The qualifier which the resulting relationship classes must have.</param>
+            <param name=' thisRole'>The role which the source class must have in the resulting relationship classes.</param>
+            <param name=' options'> The options for retrieving the results.</param>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetStronglyTypedClassCode(System.Boolean,System.Boolean)">
+             <overload>
+                <para>Generates a strongly-typed class for a given WMI class.</para>
+             </overload>
+             <summary>
+                <para>Generates a strongly-typed class for a given WMI class.</para>
+             </summary>
+             <param name='includeSystemClassInClassDef'><see langword='true'/> if the class for managing system properties must be included; otherwise, <see langword='false'/>.</param>
+             <param name='systemPropertyClass'><see langword='true'/> if the generated class will manage system properties; otherwise, <see langword='false'/>.</param>
+             <returns>
+             <para>A <see cref='T:System.CodeDom.CodeTypeDeclaration'/> instance
+                representing the declaration for the strongly-typed class.</para>
+             </returns>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+             using System.CodeDom;
+             using System.IO;
+             using System.CodeDom.Compiler;
+             using Microsoft.CSharp;
+            
+             void GenerateCSharpCode()
+             {
+                   string strFilePath = "C:\\temp\\LogicalDisk.cs";
+                   CodeTypeDeclaration ClsDom;
+            
+                   ManagementClass cls1 = new ManagementClass(null,"Win32_LogicalDisk",null);
+                   ClsDom = cls1.GetStronglyTypedClassCode(false,false);
+            
+                   ICodeGenerator cg = (new CSharpCodeProvider()).CreateGenerator ();
+                   CodeNamespace cn = new CodeNamespace("TestNamespace");
+            
+                   // Add any imports to the code
+                   cn.Imports.Add (new CodeNamespaceImport("System"));
+                   cn.Imports.Add (new CodeNamespaceImport("System.ComponentModel"));
+                   cn.Imports.Add (new CodeNamespaceImport("System.Management"));
+                   cn.Imports.Add(new CodeNamespaceImport("System.Collections"));
+            
+                   // Add class to the namespace
+                   cn.Types.Add (ClsDom);
+            
+                   //Now create the filestream (output file)
+                   TextWriter tw = new StreamWriter(new
+                   FileStream (strFilePath,FileMode.Create));
+            
+                   // And write it to the file
+                   cg.GenerateCodeFromNamespace (cn, tw, new CodeGeneratorOptions());
+            
+                   tw.Close();
+             }
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementClass.GetStronglyTypedClassCode(System.Management.CodeLanguage,System.String,System.String)">
+             <summary>
+                <para>Generates a strongly-typed class for a given WMI class. This function generates code for Visual Basic,
+                   C#, or JScript, depending on the input parameters.</para>
+             </summary>
+             <param name='lang'>The language of the code to be generated.</param>
+             <param name='filePath'>The path of the file where the code is to be written.</param>
+             <param name='classNamespace'>The .NET namespace into which the class should be generated. If this is empty, the namespace will be generated from the WMI namespace.</param>
+             <returns>
+             <para><see langword='true'/>, if the method succeeded;
+                otherwise, <see langword='false'/> .</para>
+             </returns>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             ManagementClass cls = new ManagementClass(null,"Win32_LogicalDisk",null,"");
+             cls.GetStronglyTypedClassCode(CodeLanguage.CSharp,"C:\temp\Logicaldisk.cs",String.Empty);
+                </code>
+             </example>
+        </member>
+        <member name="T:System.Management.ManagementDateTimeConverter">
+             <summary>
+                <para> Provides methods to convert DMTF datetime and time interval to CLR compliant
+                <see cref='T:System.DateTime'/> and <see cref='T:System.TimeSpan'/> format and vice versa.
+                </para>
+             </summary>
+             <example>
+                <code lang='C#'>
+             using System;
+             using System.Management;
+            
+             // The sample below demonstrates the various conversions that can be done using ManagementDateTimeConverter class
+             class Sample_ManagementDateTimeConverterClass
+             {
+                 public static int Main(string[] args)
+                 {
+                     string dmtfDate = "20020408141835.999999-420";
+                     string dmtfTimeInterval = "00000010122532:123456:000";
+            
+                     // Converting DMTF datetime to System.DateTime
+                     DateTime dt = ManagementDateTimeConverter.ToDateTime(dmtfDate);
+            
+                     // Converting System.DateTime to DMTF datetime
+                     string dmtfDate = ManagementDateTimeConverter.ToDateTime(DateTime.Now);
+            
+                     // Converting DMTF timeinterval to System.TimeSpan
+                     System.TimeSpan tsRet = ManagementDateTimeConverter. ToTimeSpan(dmtfTimeInterval);
+            
+                     //Converting System.TimeSpan to DMTF time interval format
+                     System.TimeSpan ts = new System.TimeSpan(10,12,25,32,456);
+                     string dmtfTimeInt  = ManagementDateTimeConverter.ToDmtfTimeInterval(ts);
+            
+                     return 0;
+            
+                 }
+             }
+                </code>
+                <code lang='VB'>
+             Imports System
+             Imports System.Management
+            
+             'The sample below demonstrates the various conversions that can be done using ManagementDateTimeConverter class
+             Class Sample_ManagementClass
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim dmtfDate As String = "20020408141835.999999-420"
+                     Dim dmtfTimeInterval As String = "00000010122532:123456:000"
+            
+                     'Converting DMTF datetime and intervals to System.DateTime
+                     Dim dt As DateTime = ManagementDateTimeConverter.ToDateTime(dmtfDate)
+            
+                     'Converting System.DateTime to DMTF datetime
+                     dmtfDate = ManagementDateTimeConverter.ToDateTime(DateTime.Now)
+            
+                     ' Converting DMTF timeinterval to System.TimeSpan
+                     Dim tsRet As System.TimeSpan = ManagementDateTimeConverter.ToTimeSpan(dmtfTimeInterval)
+            
+                     'Converting System.TimeSpan to DMTF time interval format
+                     Dim ts As System.TimeSpan = New System.TimeSpan(10, 12, 25, 32, 456)
+                     String dmtfTimeInt = ManagementDateTimeConverter.ToDmtfTimeInterval(ts)
+            
+                     Return 0
+                 End Function
+             End Class
+            
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementDateTimeConverter.ToDateTime(System.String)">
+            <summary>
+            <para>Converts a given DMTF datetime to <see cref='T:System.DateTime'/> object. The returned DateTime will be in the
+                       current TimeZone of the system.</para>
+            </summary>
+            <param name='dmtfDate'>A string representing the datetime in DMTF format.</param>
+            <returns>
+            <para>A <see cref='T:System.DateTime'/> object that represents the given DMTF datetime.</para>
+            </returns>
+            <remarks>
+                       <para> Date and time in WMI is represented in DMTF datetime format. This format is explained in WMI SDK documentation.
+                           DMTF datetime string has an UTC offset which this datetime string represents.
+                            During conversion to <see cref='T:System.DateTime'/>, UTC offset is used to convert the date to the
+                           current timezone. According to DMTF format a particular field can be represented by the character
+                           '*'. This will be converted to the MinValue of this field that can be represented in <see cref='T:System.DateTime'/>.
+                       </para>
+            </remarks>
+            <example>
+               <code lang='C#'>
+            // Convert a DMTF datetime to System.DateTime
+            DateTime date = ManagementDateTimeConverter.ToDateTime("20020408141835.999999-420");
+               </code>
+               <code lang='VB'>
+            ' Convert a DMTF datetime to System.DateTime
+            Dim date as DateTime = ManagementDateTimeConverter.ToDateTime("20020408141835.999999-420")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementDateTimeConverter.ToDmtfDateTime(System.DateTime)">
+             <summary>
+             <para>Converts a given <see cref='T:System.DateTime'/> object to DMTF format.</para>
+            
+             </summary>
+             <param name='date'>A <see cref='T:System.DateTime'/> object representing the datetime to be converted to DMTF datetime.</param>
+             <returns>
+             <para>A string that represents the DMTF datetime for the given DateTime object.</para>
+             </returns>
+             <remarks>
+                        <para> Date and time in WMI is represented in DMTF datetime format. This format is explained in WMI SDK documentation.
+                            The DMTF datetime string represented will be with respect to the UTC offset of the
+                            current timezone. The lowest precision in DMTF is microseconds and
+                            in <see cref='T:System.DateTime'/> is Ticks , which is equivalent to 100 of nanoseconds.
+                             During conversion these Ticks are converted to microseconds and rounded
+                             off to the nearest microsecond.
+                        </para>
+             </remarks>
+             <example>
+                <code lang='C#'>
+             // Convert the current time in System.DateTime to DMTF format
+             string dmtfDateTime = ManagementDateTimeConverter.ToDmtfDateTime(DateTime.Now);
+                </code>
+                <code lang='VB'>
+             ' Convert the current time in System.DateTime to DMTF format
+             Dim dmtfDateTime as String = ManagementDateTimeConverter.ToDmtfDateTime(DateTime.Now)
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementDateTimeConverter.ToTimeSpan(System.String)">
+            <summary>
+            <para>Converts a given DMTF time interval to <see cref='T:System.TimeSpan'/> object.</para>
+            </summary>
+            <param name='dmtfTimespan'>A string represesentation of the DMTF time interval.</param>
+            <returns>
+            <para>A <see cref='T:System.TimeSpan'/> object that represents the given DMTF time interval.</para>
+            </returns>
+            <remarks>
+                       <para> Time interval in WMI is represented in DMTF format. This format is explained in WMI SDK documentation.
+                               If the DMTF time interval value is more than that of
+                               <see cref='F:System.TimeSpan.MaxValue'/> then <see cref='T:System.ArgumentOutOfRangeException'/> is thrown.
+                       </para>
+            </remarks>
+            <example>
+               <code lang='C#'>
+            // Convert a DMTF time interval to System.TimeSpan
+            TimeSpan dmtfTimeInterval = ManagementDateTimeConverter.ToTimeSpan("00000010122532:123456:000");
+               </code>
+               <code lang='VB'>
+            ' Convert a DMTF time interval to System.TimeSpan
+            Dim ts as TimeSpan = ManagementDateTimeConverter.ToTimeSpan("00000010122532:123456:000")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementDateTimeConverter.ToDmtfTimeInterval(System.TimeSpan)">
+            <summary>
+            <para>Converts a given <see cref='T:System.TimeSpan'/> object to DMTF time interval.</para>
+            </summary>
+            <param name='timespan'> A <see cref='T:System.TimeSpan'/> object representing the datetime to be converted to DMTF time interval.
+            </param>
+            <returns>
+            <para>A string that represents the DMTF time interval for the given TimeSpan object.</para>
+            </returns>
+            <remarks>
+                       <para> Time interval in WMI is represented in DMTF datetime format. This format
+                           is explained in WMI SDK documentation. The lowest precision in
+                           DMTF is microseconds and in <see cref='T:System.TimeSpan'/> is Ticks , which is equivalent
+                           to 100 of nanoseconds.During conversion these Ticks are converted to
+                           microseconds and rounded off to the nearest microsecond.
+                       </para>
+            </remarks>
+            <example>
+               <code lang='C#'>
+            // Construct a Timespan object and convert it to DMTF format
+            System.TimeSpan ts = new System.TimeSpan(10,12,25,32,456);
+            String dmtfTimeInterval = ManagementDateTimeConverter.ToDmtfTimeInterval(ts);
+               </code>
+               <code lang='VB'>
+            // Construct a Timespan object and convert it to DMTF format
+            Dim ts as System.TimeSpan = new System.TimeSpan(10,12,25,32,456)
+            Dim dmtfTimeInterval as String = ManagementDateTimeConverter.ToDmtfTimeInterval(ts)
+               </code>
+            </example>
+        </member>
+        <member name="T:System.Management.ManagementEventArgs">
+            <summary>
+               <para>Represents the virtual base class to hold event data for WMI events.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementEventArgs.#ctor(System.Object)">
+            <summary>
+            Constructor. This is not callable directly by applications.
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which trigerred the event.</param>
+        </member>
+        <member name="P:System.Management.ManagementEventArgs.Context">
+            <summary>
+               <para> Gets the operation context echoed back
+                  from the operation that triggered the event.</para>
+            </summary>
+            <value>
+               A WMI context object containing
+               context information provided by the operation that triggered the event.
+            </value>
+        </member>
+        <member name="T:System.Management.ObjectReadyEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementOperationObserver.ObjectReady'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ObjectReadyEventArgs.#ctor(System.Object,System.Management.ManagementBaseObject)">
+            <summary>
+            Constructor.
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which triggerred the event.</param>
+            <param name="wmiObject">The newly arrived WmiObject.</param>
+        </member>
+        <member name="P:System.Management.ObjectReadyEventArgs.NewObject">
+            <summary>
+               <para> Gets the newly-returned object.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> representing the
+               newly-returned object.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.CompletedEventArgs">
+            <summary>
+            <para> Holds event data for the <see cref='E:System.Management.ManagementOperationObserver.Completed'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.CompletedEventArgs.#ctor(System.Object,System.Int32,System.Management.ManagementBaseObject)">
+            <summary>
+            Constructor.
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which trigerred the event.</param>
+            <param name="status">The completion status of the operation.</param>
+            <param name="wmiStatusObject">Additional status information
+            encapsulated within a WmiObject. This may be null.</param>
+        </member>
+        <member name="P:System.Management.CompletedEventArgs.StatusObject">
+            <summary>
+               <para>Gets or sets additional status information
+                  within a WMI object. This may be null.</para>
+            </summary>
+            <value>
+            <para><see langword='null '/> if an error did not occur. Otherwise, may be non-null if the provider
+               supports extended error information.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.CompletedEventArgs.Status">
+            <summary>
+               <para>Gets the completion status of the operation.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementStatus'/> value
+               indicating the return code of the operation.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.ObjectPutEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementOperationObserver.ObjectPut'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ObjectPutEventArgs.#ctor(System.Object,System.Management.ManagementPath)">
+            <summary>
+            Constructor
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which trigerred the event.</param>
+            <param name="path">The WmiPath representing the identity of the
+            object that has been put.</param>
+        </member>
+        <member name="P:System.Management.ObjectPutEventArgs.Path">
+            <summary>
+               <para> Gets the identity of the
+                  object that has been put.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementPath'/> containing the path of the object that has
+               been put.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.ProgressEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementOperationObserver.Progress'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ProgressEventArgs.#ctor(System.Object,System.Int32,System.Int32,System.String)">
+            <summary>
+            Constructor
+            </summary>
+            <param name="context">The operation context which is echoed back
+            from the operation which trigerred the event.</param>
+            <param name="upperBound">A quantity representing the total
+            amount of work required to be done by the operation.</param>
+            <param name="current">A quantity representing the current
+            amount of work required to be done by the operation. This is
+            always less than or equal to upperBound.</param>
+            <param name="message">Optional additional information regarding
+            operation progress.</param>
+        </member>
+        <member name="P:System.Management.ProgressEventArgs.UpperBound">
+            <summary>
+               <para> Gets the total
+                  amount of work required to be done by the operation.</para>
+            </summary>
+            <value>
+               An integer representing the total
+               amount of work for the operation.
+            </value>
+        </member>
+        <member name="P:System.Management.ProgressEventArgs.Current">
+            <summary>
+               <para> Gets the current amount of work
+                  done by the operation. This is always less than or equal to <see cref='P:System.Management.ProgressEventArgs.UpperBound'/>.</para>
+            </summary>
+            <value>
+               <para>An integer representing the current amount of work
+                  already completed by the operation.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ProgressEventArgs.Message">
+            <summary>
+               <para>Gets or sets optional additional information regarding the operation's progress.</para>
+            </summary>
+            <value>
+               A string containing additional
+               information regarding the operation's progress.
+            </value>
+        </member>
+        <member name="T:System.Management.EventArrivedEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementEventWatcher.EventArrived'/> event.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.EventArrivedEventArgs.NewEvent">
+            <summary>
+               <para> Gets the WMI event that was delivered.</para>
+            </summary>
+            <value>
+               The object representing the WMI event.
+            </value>
+        </member>
+        <member name="T:System.Management.StoppedEventArgs">
+            <summary>
+            <para>Holds event data for the <see cref='E:System.Management.ManagementEventWatcher.Stopped'/> event.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.StoppedEventArgs.Status">
+            <summary>
+               <para> Gets the completion status of the operation.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementStatus'/> value representing the status of the
+               operation.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.EventArrivedEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementEventWatcher.EventArrived'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.StoppedEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementEventWatcher.Stopped'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementEventWatcher">
+             <summary>
+                <para> Subscribes to temporary event notifications
+                   based on a specified event query.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to subscribe to an event using the ManagementEventWatcher object.
+             class Sample_ManagementEventWatcher
+             {
+                 public static int Main(string[] args) {
+            
+                     //For the example, we'll put a class into the repository, and watch
+                     //for class deletion events when the class is deleted.
+                     ManagementClass newClass = new ManagementClass();
+                     newClass["__CLASS"] = "TestDeletionClass";
+                     newClass.Put();
+            
+                     //Set up an event watcher and a handler for the event
+                     ManagementEventWatcher watcher = new ManagementEventWatcher(
+                         new WqlEventQuery("__ClassDeletionEvent"));
+                     MyHandler handler = new MyHandler();
+                     watcher.EventArrived += new EventArrivedEventHandler(handler.Arrived);
+            
+                     //Start watching for events
+                     watcher.Start();
+            
+                     // For the purpose of this sample, we delete the class to trigger the event
+                     // and wait for two seconds before terminating the consumer
+                     newClass.Delete();
+            
+                     System.Threading.Thread.Sleep(2000);
+            
+                     //Stop watching
+                     watcher.Stop();
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler {
+                     public void Arrived(object sender, EventArrivedEventArgs e) {
+                         Console.WriteLine("Class Deleted = " +
+                            ((ManagementBaseObject)e.NewEvent["TargetClass"])["__CLASS"]);
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to subscribe an event using the ManagementEventWatcher object.
+             Class Sample_ManagementEventWatcher
+                 Public Shared Sub Main()
+            
+                     ' For the example, we'll put a class into the repository, and watch
+                     ' for class deletion events when the class is deleted.
+                     Dim newClass As New ManagementClass()
+                     newClass("__CLASS") = "TestDeletionClass"
+                     newClass.Put()
+            
+                     ' Set up an event watcher and a handler for the event
+                     Dim watcher As _
+                         New ManagementEventWatcher(New WqlEventQuery("__ClassDeletionEvent"))
+                     Dim handler As New MyHandler()
+                     AddHandler watcher.EventArrived, AddressOf handler.Arrived
+            
+                     ' Start watching for events
+                     watcher.Start()
+            
+                     ' For the purpose of this sample, we delete the class to trigger the event
+                     ' and wait for two seconds before terminating the consumer
+                     newClass.Delete()
+            
+                     System.Threading.Thread.Sleep(2000)
+            
+                     ' Stop watching
+                     watcher.Stop()
+            
+                 End Sub
+            
+                 Public Class MyHandler
+                     Public Sub Arrived(sender As Object, e As EventArrivedEventArgs)
+                         Console.WriteLine("Class Deleted = " &amp; _
+                             CType(e.NewEvent("TargetClass"), ManagementBaseObject)("__CLASS"))
+                     End Sub
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor">
+            <overload>
+               Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class.
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class. For further
+               initialization, set the properties on the object. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.Management.EventQuery)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class when given a WMI event query.</para>
+            </summary>
+            <param name='query'>An <see cref='T:System.Management.EventQuery'/> object representing a WMI event query, which determines the events for which the watcher will listen.</param>
+            <remarks>
+               <para>The namespace in which the watcher will be listening for
+                  events is the default namespace that is currently set.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class when given a WMI event query in the
+               form of a string.</para>
+            </summary>
+            <param name='query'> A WMI event query, which defines the events for which the watcher will listen.</param>
+            <remarks>
+               <para>The namespace in which the watcher will be listening for
+                  events is the default namespace that is currently set.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.Management.ManagementScope,System.Management.EventQuery)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/>
+            class that listens for events conforming to the given WMI event query.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> object representing the scope (namespace) in which the watcher will listen for events.</param>
+            <param name=' query'>An <see cref='T:System.Management.EventQuery'/> object representing a WMI event query, which determines the events for which the watcher will listen.</param>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/>
+            class that listens for events conforming to the given WMI event query. For this
+            variant, the query and the scope are specified as strings.</para>
+            </summary>
+            <param name='scope'> The management scope (namespace) in which the watcher will listen for events.</param>
+            <param name=' query'> The query that defines the events for which the watcher will listen.</param>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.String,System.String,System.Management.EventWatcherOptions)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class that listens for
+               events conforming to the given WMI event query, according to the specified options. For
+               this variant, the query and the scope are specified as strings. The options
+               object can specify options such as a timeout and context information.</para>
+            </summary>
+            <param name='scope'>The management scope (namespace) in which the watcher will listen for events.</param>
+            <param name=' query'>The query that defines the events for which the watcher will listen.</param>
+            <param name='options'>An <see cref='T:System.Management.EventWatcherOptions'/> object representing additional options used to watch for events. </param>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.#ctor(System.Management.ManagementScope,System.Management.EventQuery,System.Management.EventWatcherOptions)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementEventWatcher'/> class
+               that listens for events conforming to the given WMI event query, according to the specified
+               options. For this variant, the query and the scope are specified objects. The
+               options object can specify options such as timeout and context information.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> object representing the scope (namespace) in which the watcher will listen for events.</param>
+            <param name=' query'>An <see cref='T:System.Management.EventQuery'/> object representing a WMI event query, which determines the events for which the watcher will listen.</param>
+            <param name='options'>An <see cref='T:System.Management.EventWatcherOptions'/> object representing additional options used to watch for events. </param>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.Finalize">
+            <summary>
+               <para>Ensures that outstanding calls are cleared. This is the destructor for the object.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementEventWatcher.EventArrived">
+            <summary>
+               <para> Occurs when a new event arrives.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementEventWatcher.Stopped">
+            <summary>
+               <para> Occurs when a subscription is canceled.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementEventWatcher.Scope">
+            <summary>
+               <para>Gets or sets the scope in which to watch for events (namespace or scope).</para>
+            </summary>
+            <value>
+               <para> The scope in which to watch for events (namespace or scope).</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementEventWatcher.Query">
+            <summary>
+               <para>Gets or sets the criteria to apply to events.</para>
+            </summary>
+            <value>
+               <para> The criteria to apply to the events, which is equal to the event query.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementEventWatcher.Options">
+            <summary>
+               <para>Gets or sets the options used to watch for events.</para>
+            </summary>
+            <value>
+               <para>The options used to watch for events.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.WaitForNextEvent">
+            <summary>
+               <para>Waits for the next event that matches the specified query to arrive, and
+                  then returns it.</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> representing the
+               newly arrived event.</para>
+            </returns>
+            <remarks>
+               <para>If the event watcher object contains options with
+                  a specified timeout, the API will wait for the next event only for the specified
+                  amount of time; otherwise, the API will be blocked until the next event occurs.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.Start">
+            <summary>
+               <para>Subscribes to events with the given query and delivers
+                  them, asynchronously, through the <see cref='E:System.Management.ManagementEventWatcher.EventArrived'/> event.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementEventWatcher.Stop">
+            <summary>
+               <para>Cancels the subscription whether it is synchronous or asynchronous.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementStatus">
+            <summary>
+               <para>Represents the enumeration of all WMI error codes that are currently defined.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NoError">
+            <summary>
+               The operation was successful.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.False">
+            <summary>
+               <para> This value is returned when no more objects
+                  are available, the number of objects returned is less than the number requested,
+                  or at the end of an enumeration. It is also returned when the method is called
+                  with a value of 0 for the "uCount" parameter.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ResetToDefault">
+            <summary>
+               <para>An overridden property was deleted. This value is
+                  returned to signal that the original, non-overridden value has been restored as a
+                  result of the deletion.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Different">
+            <summary>
+               <para> The compared items (such as objects and classes)
+                  are not identical.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Timedout">
+            <summary>
+               <para> A call timed out. This is not an
+                  error condition; therefore, some results may have been returned.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NoMoreData">
+            <summary>
+               <para> No more data is available from the enumeration; the
+                  user should terminate the enumeration. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.OperationCanceled">
+            <summary>
+               <para> The operation was
+                  canceled.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Pending">
+            <summary>
+               <para>A request is still in progress; however, the results are not
+                  yet available.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.DuplicateObjects">
+            <summary>
+               <para> More than one copy of the same object was detected in
+                  the result set of an enumeration. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PartialResults">
+            <summary>
+               <para>The user did not receive all of the requested objects
+                  because of inaccessible resources (other than security violations).</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Failed">
+            <summary>
+               <para>The call failed.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NotFound">
+            <summary>
+               <para> The object could not be found. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.AccessDenied">
+            <summary>
+               The current user does not have permission to perform the
+               action.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ProviderFailure">
+            <summary>
+               <para> The provider failed after
+                  initialization. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.TypeMismatch">
+            <summary>
+               A type mismatch occurred.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.OutOfMemory">
+            <summary>
+               There was not enough memory for the operation.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidContext">
+            <summary>
+               <para>The context object is not valid.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidParameter">
+            <summary>
+               <para> One of the parameters to the call is not correct.
+               </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NotAvailable">
+            <summary>
+               <para> The resource, typically a remote server, is not
+                  currently available. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CriticalError">
+            <summary>
+               <para>An internal, critical, and unexpected error occurred.
+                  Report this error to Microsoft Product Support Services.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidStream">
+            <summary>
+               <para>One or more network packets were corrupted during a remote session.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NotSupported">
+            <summary>
+               <para> The feature or operation is not supported. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidSuperclass">
+            <summary>
+               The specified base class is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidNamespace">
+            <summary>
+               <para> The specified namespace could not be found. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidObject">
+            <summary>
+               The specified instance is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidClass">
+            <summary>
+               The specified class is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ProviderNotFound">
+            <summary>
+               A provider referenced in the schema does not have a
+               corresponding registration.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidProviderRegistration">
+            <summary>
+               A provider referenced in the schema has an incorrect or
+               incomplete registration.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ProviderLoadFailure">
+            <summary>
+               COM cannot locate a provider referenced in the schema.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InitializationFailure">
+            <summary>
+             A component, such as a provider, failed to initialize for internal reasons.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.TransportFailure">
+            <summary>
+               A networking error that prevents normal operation has
+               occurred.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidOperation">
+            <summary>
+               <para> The requested operation is not valid. This error usually
+                  applies to invalid attempts to delete classes or properties. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidQuery">
+            <summary>
+               The query was not syntactically valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidQueryType">
+            <summary>
+               <para>The requested query language is not supported.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.AlreadyExists">
+            <summary>
+            <para>In a put operation, the <see langword='wbemChangeFlagCreateOnly'/>
+            flag was specified, but the instance already exists.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.OverrideNotAllowed">
+            <summary>
+               <para>The add operation cannot be performed on the qualifier
+                  because the owning object does not permit overrides.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PropagatedQualifier">
+            <summary>
+               <para> The user attempted to delete a qualifier that was not
+                  owned. The qualifier was inherited from a parent class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PropagatedProperty">
+            <summary>
+               <para> The user attempted to delete a property that was not
+                  owned. The property was inherited from a parent class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.Unexpected">
+            <summary>
+               The client made an unexpected and illegal sequence of
+               calls.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.IllegalOperation">
+            <summary>
+               <para>The user requested an illegal operation, such as
+                  spawning a class from an instance.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotBeKey">
+            <summary>
+               <para> There was an illegal attempt to specify a key qualifier
+                  on a property that cannot be a key. The keys are specified in the class
+                  definition for an object and cannot be altered on a per-instance basis.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.IncompleteClass">
+            <summary>
+               <para>The current object is not a valid class definition.
+                  Either it is incomplete, or it has not been registered with WMI using
+               <see cref='M:System.Management.ManagementObject.Put'/>().</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidSyntax">
+            <summary>
+               Reserved for future use.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NondecoratedObject">
+            <summary>
+               Reserved for future use.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ReadOnly">
+            <summary>
+               <para>The property that you are attempting to modify is read-only.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ProviderNotCapable">
+            <summary>
+               <para> The provider cannot perform the requested operation, such
+                  as requesting a query that is too complex, retrieving an instance, creating or
+                  updating a class, deleting a class, or enumerating a class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ClassHasChildren">
+            <summary>
+               <para>An attempt was made to make a change that would
+                  invalidate a derived class.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ClassHasInstances">
+            <summary>
+               <para> An attempt has been made to delete or modify a class that
+                  has instances. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.QueryNotImplemented">
+            <summary>
+               Reserved for future use.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.IllegalNull">
+            <summary>
+               <para> A value of null was specified for a property that may
+                  not be null, such as one that is marked by a <see langword='Key'/>, <see langword='Indexed'/>, or
+               <see langword='Not_Null'/> qualifier.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidQualifierType">
+            <summary>
+               <para> The value provided for a qualifier was not a
+                  legal qualifier type.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidPropertyType">
+            <summary>
+               The CIM type specified for a property is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ValueOutOfRange">
+            <summary>
+               <para> The request was made with an out-of-range value, or is
+                  incompatible with the type. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotBeSingleton">
+            <summary>
+               <para>An illegal attempt was made to make a class singleton,
+                  such as when the class is derived from a non-singleton class.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidCimType">
+            <summary>
+               The CIM type specified is not valid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidMethod">
+            <summary>
+               The requested method is not available.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidMethodParameters">
+            <summary>
+               <para> The parameters provided for the method are not valid.
+               </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.SystemProperty">
+            <summary>
+               There was an attempt to get qualifiers on a system
+               property.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidProperty">
+            <summary>
+               The property type is not recognized.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CallCanceled">
+            <summary>
+               <para> An asynchronous process has been canceled internally or
+                  by the user. Note that because of the timing and nature of the asynchronous
+                  operation, the operation may not have been truly canceled. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ShuttingDown">
+            <summary>
+               <para>The user has requested an operation while WMI is in the
+                  process of quitting.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PropagatedMethod">
+            <summary>
+               <para> An attempt was made to reuse an existing method name from
+                  a base class, and the signatures did not match. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnsupportedParameter">
+            <summary>
+               <para> One or more parameter values, such as a query text, is
+                  too complex or unsupported. WMI is requested to retry the operation
+                  with simpler parameters. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MissingParameterID">
+            <summary>
+               A parameter was missing from the method call.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidParameterID">
+            <summary>
+               A method parameter has an invalid <see langword='ID'/> qualifier.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NonconsecutiveParameterIDs">
+            <summary>
+            <para> One or more of the method parameters have <see langword='ID'/>
+            qualifiers that are out of sequence. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ParameterIDOnRetval">
+            <summary>
+            <para> The return value for a method has an <see langword='ID'/> qualifier.
+            </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidObjectPath">
+            <summary>
+               The specified object path was invalid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.OutOfDiskSpace">
+            <summary>
+               <para> There is not enough free disk space to continue the
+                  operation. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.BufferTooSmall">
+            <summary>
+               <para> The supplied buffer was too small to hold all the objects
+                  in the enumerator or to read a string property. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnsupportedPutExtension">
+            <summary>
+               The provider does not support the requested put
+               operation.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnknownObjectType">
+            <summary>
+               <para> An object with an incorrect type or version was
+                  encountered during marshaling. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnknownPacketType">
+            <summary>
+               <para> A packet with an incorrect type or version was
+                  encountered during marshaling. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MarshalVersionMismatch">
+            <summary>
+               The packet has an unsupported version.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MarshalInvalidSignature">
+            <summary>
+               <para>The packet is corrupted.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidQualifier">
+            <summary>
+               An attempt has been made to mismatch qualifiers, such as
+               putting [key] on an object instead of a property.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidDuplicateParameter">
+            <summary>
+               A duplicate parameter has been declared in a CIM method.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.TooMuchData">
+            <summary>
+               <para> Reserved for future use. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ServerTooBusy">
+            <summary>
+               <para>The delivery of an event has failed. The provider may
+                  choose to re-raise the event.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidFlavor">
+            <summary>
+               The specified flavor was invalid.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CircularReference">
+            <summary>
+               <para> An attempt has been made to create a reference that is
+                  circular (for example, deriving a class from itself). </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnsupportedClassUpdate">
+            <summary>
+               The specified class is not supported.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotChangeKeyInheritance">
+            <summary>
+               <para> An attempt was made to change a key when instances or derived
+                  classes are already using the key. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotChangeIndexInheritance">
+            <summary>
+               <para> An attempt was made to change an index when instances or derived
+                  classes are already using the index. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.TooManyProperties">
+            <summary>
+               <para> An attempt was made to create more properties than the
+                  current version of the class supports. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UpdateTypeMismatch">
+            <summary>
+               <para> A property was redefined with a conflicting type in a
+                  derived class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UpdateOverrideNotAllowed">
+            <summary>
+               <para> An attempt was made in a derived class to override a
+                  non-overrideable qualifier. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UpdatePropagatedMethod">
+            <summary>
+               <para> A method was redeclared with a conflicting signature in a
+                  derived class. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MethodNotImplemented">
+            <summary>
+               An attempt was made to execute a method not marked with
+               [implemented] in any relevant class.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MethodDisabled">
+            <summary>
+               <para> An attempt was made to execute a method marked with
+                  [disabled]. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.RefresherBusy">
+            <summary>
+               <para> The refresher is busy with another operation. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UnparsableQuery">
+            <summary>
+               <para> The filtering query is syntactically invalid. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.NotEventClass">
+            <summary>
+               The FROM clause of a filtering query references a class
+               that is not an event class.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MissingGroupWithin">
+            <summary>
+               A GROUP BY clause was used without the corresponding
+               GROUP WITHIN clause.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.MissingAggregationList">
+            <summary>
+               A GROUP BY clause was used. Aggregation on all properties
+               is not supported.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PropertyNotAnObject">
+            <summary>
+               <para> Dot notation was used on a property that is not an
+                  embedded object. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.AggregatingByObject">
+            <summary>
+               A GROUP BY clause references a property that is an
+               embedded object without using dot notation.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.UninterpretableProviderQuery">
+            <summary>
+               An event provider registration query
+               (<see langword='__EventProviderRegistration'/>) did not specify the classes for which
+               events were provided.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.BackupRestoreWinmgmtRunning">
+            <summary>
+               <para> An request was made to back up or restore the repository
+                  while WinMgmt.exe was using it. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.QueueOverflow">
+            <summary>
+               <para> The asynchronous delivery queue overflowed from the
+                  event consumer being too slow. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.PrivilegeNotHeld">
+            <summary>
+               The operation failed because the client did not have the
+               necessary security privilege.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.InvalidOperator">
+            <summary>
+               <para>The operator is not valid for this property type.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.LocalCredentials">
+            <summary>
+               <para> The user specified a username, password, or authority on a
+                  local connection. The user must use an empty user name and password and rely on
+                  default security. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.CannotBeAbstract">
+            <summary>
+               <para> The class was made abstract when its base class is not
+                  abstract. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.AmendedObject">
+            <summary>
+               <para> An amended object was used in a put operation without the
+                  WBEM_FLAG_USE_AMENDED_QUALIFIERS flag being specified. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.ClientTooSlow">
+            <summary>
+               The client was not retrieving objects quickly enough from
+               an enumeration.
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.RegistrationTooBroad">
+            <summary>
+               <para> The provider registration overlaps with the system event
+                  domain. </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementStatus.RegistrationTooPrecise">
+            <summary>
+               <para> A WITHIN clause was not used in this query. </para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementException">
+             <summary>
+                <para> Represents management exceptions.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to display error
+             // information stored in a ManagementException object.
+             class Sample_ManagementException
+             {
+                 public static int Main(string[] args)
+                 {
+                     try
+                     {
+                         ManagementObject disk =
+                             new ManagementObject("Win32_LogicalDisk.DeviceID='BAD:'");
+                         disk.Get(); // throws ManagementException
+                         Console.WriteLine("This shouldn't be displayed.");
+                     }
+                     catch (ManagementException e)
+                     {
+                       Console.WriteLine("ErrorCode " + e.ErrorCode);
+                       Console.WriteLine("Message " + e.Message);
+                       Console.WriteLine("Source " + e.Source);
+                       if (e.ErrorInformation) //extended error object
+                           Console.WriteLine("Extended Description : " + e.ErrorInformation["Description"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to display error
+             ' information stored in a ManagementException object.
+             Class Sample_ManagementException
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Try
+                         Dim disk As New ManagementObject("Win32_LogicalDisk.DeviceID='BAD:'")
+                         disk.Get() ' throws ManagementException
+                         Console.WriteLine("This shouldn't be displayed.")
+                     Catch e As ManagementException
+                         Console.WriteLine("ErrorCode " &amp; e.ErrorCode)
+                         Console.WriteLine("Message " &amp; e.Message)
+                         Console.WriteLine("Source " &amp; e.Source)
+                         If e.ErrorInformation != Nothing Then 'extended error object
+                             Console.WriteLine("Extended Description : " &amp; e.ErrorInformation("Description"))
+                         End If
+                     End Try
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementException'/> class that is serializable.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="M:System.Management.ManagementException.#ctor">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementException'/> class</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementException.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementException'/>
+            class with a specified error message.</para>
+            <param name='message'>The message that describes the error.</param>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementException.#ctor(System.String,System.Exception)">
+            <summary>
+            <para>Initializes a empty new instance of the <see cref='T:System.Management.ManagementException'/> class </para>
+            <param name='message'>The message that describes the error.</param>
+            <param name='innerException'>The exception that is the cause of the current exception. If the innerException
+            parameter is not a null reference (Nothing in Visual Basic), the current exception is raised in a catch
+            block that handles the inner exception.</param>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Populates the <see cref='T:System.Runtime.Serialization.SerializationInfo'/> object with the data needed to
+               serialize the <see cref='T:System.Management.ManagementException'/>
+               object.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="P:System.Management.ManagementException.ErrorInformation">
+            <summary>
+               <para>Gets the extended error object provided by WMI.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> representing the
+               extended error object provided by WMI, if available; <see langword='null'/>
+               otherwise.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementException.ErrorCode">
+            <summary>
+               <para>Gets the error code reported by WMI, which caused this exception.</para>
+            </summary>
+            <value>
+               A <see cref='T:System.Management.ManagementStatus'/> value representing the error code returned by
+               the WMI operation.
+            </value>
+        </member>
+        <member name="T:System.Management.ManagementNamedValueCollection">
+            <summary>
+               <para> Represents a collection of named values
+                  suitable for use as context information to WMI operations. The
+                  names are case-insensitive.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.ManagementNamedValueCollection'/> class.
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementNamedValueCollection'/> class, which is empty. This is
+               the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementNamedValueCollection'/> class that is serializable
+               and uses the specified <see cref='T:System.Runtime.Serialization.SerializationInfo'/>
+               and <see cref='T:System.Runtime.Serialization.StreamingContext'/>.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.GetContext">
+            <summary>
+               <para>Internal method to return an IWbemContext representation
+               of the named value collection.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.Add(System.String,System.Object)">
+            <summary>
+               <para> Adds a single-named value to the collection.</para>
+            </summary>
+            <param name=' name'>The name of the new value.</param>
+            <param name=' value'>The value to be associated with the name.</param>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.Remove(System.String)">
+            <summary>
+               <para> Removes a single-named value from the collection.
+                  If the collection does not contain an element with the
+                  specified name, the collection remains unchanged and no
+                  exception is thrown.</para>
+            </summary>
+            <param name=' name'>The name of the value to be removed.</param>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.RemoveAll">
+            <summary>
+               <para>Removes all entries from the collection.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementNamedValueCollection.Clone">
+            <summary>
+               <para>Creates a clone of the collection. Individual values
+                  are cloned. If a value does not support cloning, then a <see cref='T:System.NotSupportedException'/>
+                  is thrown. </para>
+            </summary>
+            <returns>
+               The new copy of the collection.
+            </returns>
+        </member>
+        <member name="P:System.Management.ManagementNamedValueCollection.Item(System.String)">
+            <summary>
+               <para>Returns the value associated with the specified name from this collection.</para>
+            </summary>
+            <param name=' name'>The name of the value to be returned.</param>
+            <value>
+            <para>An <see cref='T:System.Object'/> containing the
+               value of the specified item in this collection.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.IdentifierChangedEventHandler">
+            <summary>
+            Delegate definition for the IdentifierChanged event.
+            This event is used to signal the ManagementObject that an identifying property
+            has been changed. Identifying properties are the ones that identify the object,
+            namely the scope, path and options.
+            </summary>
+        </member>
+        <member name="T:System.Management.InternalObjectPutEventHandler">
+            <summary>
+            Delegate definition for InternalObjectPut event. This is used so that
+            the WmiEventSink can signal to this object that the async Put call has
+            completed.
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementObject">
+             <summary>
+                <para> Represents a data management object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates reading a property of a ManagementObject.
+             class Sample_ManagementObject
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject disk = new ManagementObject(
+                         "win32_logicaldisk.deviceid=\"c:\"");
+                     disk.Get();
+                     Console.WriteLine("Logical Disk Size = " + disk["Size"] + " bytes");
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates reading a property of a ManagementObject.
+             Class Sample_ManagementObject
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim disk As New ManagementObject("win32_logicaldisk.deviceid=""c:""")
+                     disk.Get()
+                     Console.WriteLine(("Logical Disk Size = " &amp; disk("Size").ToString() _
+                         &amp; " bytes"))
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor">
+             <overload>
+                Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class.
+             </overload>
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class. This is the
+                default constructor.</para>
+             </summary>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject();
+            
+             //Now set the path on this object to bind it to a 'real' manageable entity
+             o.Path = new ManagementPath("Win32_LogicalDisk='c:'");
+            
+             //Now it can be used
+             Console.WriteLine(o["FreeSpace"]);
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject()
+             Dim mp As New ManagementPath("Win32_LogicalDisk='c:'")
+            
+             'Now set the path on this object to bind it to a 'real' manageable entity
+             o.Path = mp
+            
+             'Now it can be used
+             Console.WriteLine(o("FreeSpace"))
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.Management.ManagementPath)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class for the specified WMI
+               object path. The path is provided as a <see cref='T:System.Management.ManagementPath'/>.</para>
+            </summary>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> that contains a path to a WMI object.</param>
+            <example>
+               <code lang='C#'>ManagementPath p = new ManagementPath("Win32_Service.Name='Alerter'");
+            ManagementObject o = new ManagementObject(p);
+               </code>
+               <code lang='VB'>Dim p As New ManagementPath("Win32_Service.Name=""Alerter""")
+            Dim o As New ManagementObject(p)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.String)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class for the specified WMI object path. The path
+                is provided as a string.</para>
+             </summary>
+             <param name='path'>A WMI path.</param>
+             <remarks>
+                <para>If the specified path is a relative path only (a server
+                   or namespace is not specified), the default path is the local machine, and the
+                   default namespace is the <see cref='P:System.Management.ManagementPath.DefaultPath'/>
+                   path (by default, root\cimv2). If the user specifies a
+                   full path, the default settings are overridden.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject("Win32_Service.Name='Alerter'");
+            
+             //or with a full path :
+            
+             ManagementObject o = new ManagementObject("\\\\MyServer\\root\\MyApp:MyClass.Key='abc'");
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject("Win32_Service.Name=""Alerter""")
+            
+             //or with a full path :
+            
+             Dim o As New ManagementObject("\\\\MyServer\\root\\MyApp:MyClass.Key=""abc""");
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.Management.ManagementPath,System.Management.ObjectGetOptions)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class bound to the specified
+                WMI path, including the specified additional options.</para>
+             </summary>
+             <param name='path'>A <see cref='T:System.Management.ManagementPath'/> containing the WMI path.</param>
+             <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> containing additional options for binding to the WMI object. This parameter could be null if default options are to be used.</param>
+             <example>
+                <code lang='C#'>ManagementPath p = new ManagementPath("Win32_ComputerSystem.Name='MyMachine'");
+            
+             //Set options for no context info, but requests amended qualifiers
+             //to be contained in the object
+             ObjectGetOptions opt = new ObjectGetOptions(null, true);
+            
+             ManagementObject o = new ManagementObject(p, opt);
+            
+             Console.WriteLine(o.GetQualifierValue("Description"));
+                </code>
+                <code lang='VB'>Dim p As New ManagementPath("Win32_ComputerSystem.Name=""MyMachine""")
+            
+             'Set options for no context info, but requests amended qualifiers
+             'to be contained in the object
+             Dim opt As New ObjectGetOptions(null, true)
+            
+             Dim o As New ManagementObject(p, opt)
+            
+             Console.WriteLine(o.GetQualifierValue("Description"));
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.String,System.Management.ObjectGetOptions)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class bound to the specified WMI path, including the
+                specified additional options. In this variant, the path can be specified as a
+                string.</para>
+             </summary>
+             <param name='path'>The WMI path to the object.</param>
+             <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> representing options to get the specified WMI object.</param>
+             <example>
+                <code lang='C#'>//Set options for no context info,
+             //but requests amended qualifiers to be contained in the object
+             ObjectGetOptions opt = new ObjectGetOptions(null, true);
+            
+             ManagementObject o = new ManagementObject("Win32_ComputerSystem.Name='MyMachine'", opt);
+            
+             Console.WriteLine(o.GetQualifierValue("Description"));
+                </code>
+                <code lang='VB'>'Set options for no context info,
+             'but requests amended qualifiers to be contained in the object
+             Dim opt As New ObjectGetOptions(null, true)
+            
+             Dim o As New ManagementObject("Win32_ComputerSystem.Name=""MyMachine""", opt);
+            
+             Console.WriteLine(o.GetQualifierValue("Description"))
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.Management.ManagementScope,System.Management.ManagementPath,System.Management.ObjectGetOptions)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/>
+            class bound to the specified WMI path that includes the specified options.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> representing the scope in which the WMI object resides. In this version, scopes can only be WMI namespaces.</param>
+            <param name=' path'>A <see cref='T:System.Management.ManagementPath'/> representing the WMI path to the manageable object.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> specifying additional options for getting the object.</param>
+            <remarks>
+               <para> Because WMI paths can be relative or full, a conflict between the scope and the path
+                  specified may arise. However, if a scope is specified and
+                  a relative WMI path is specified, then there is no conflict. The
+                  following are some possible conflicts: </para>
+               <para> If a scope is not specified and a relative WMI
+                  path is specified, then the scope will default to the local machine's <see cref='P:System.Management.ManagementPath.DefaultPath'/>. </para>
+               <para> If a scope is not specified and a full WMI path is
+                  specified, then the scope will be inferred from the scope portion of the full
+                  path. For example, the full WMI path: <c>\\MyMachine\root\MyNamespace:MyClass.Name='abc'</c> will
+               represent the WMI object 'MyClass.Name='abc'" in the scope
+               '\\MyMachine\root\MyNamespace'. </para>
+            If a scope is specified and a full WMI path is specified, then the scope
+            will override the scope portion of the full path. For example, if the following
+            scope was specified: \\MyMachine\root\MyScope, and the following full path was
+            specified: \\MyMachine\root\MyNamespace:MyClass.Name='abc', then look for the
+            following <c>object:
+            \\MyMachine\root\MyScope:MyClass.Name=
+            'abc'</c>
+            (the scope part of the full path is ignored).
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope("\\\\MyMachine\\root\\cimv2");
+            ManagementPath p = new ManagementPath("Win32_LogicalDisk.Name='c:'");
+            ManagementObject o = new ManagementObject(s,p);
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope("\\MyMachine\root\cimv2");
+            Dim p As New ManagementPath("Win32_LogicalDisk.Name=""c:""");
+            Dim o As New ManagementObject(s,p);
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.String,System.String,System.Management.ObjectGetOptions)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class
+               bound to the specified WMI path, and includes the specified options. The scope and
+               the path are specified as strings.</para>
+            </summary>
+            <param name='scopeString'>The scope for the WMI object.</param>
+            <param name=' pathString'>The WMI object path.</param>
+            <param name=' options'>An <see cref='T:System.Management.ObjectGetOptions'/> representing additional options for getting the WMI object.</param>
+            <remarks>
+               <para>See the equivalent overload for details.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>GetObjectOptions opt = new GetObjectOptions(null, true);
+            ManagementObject o = new ManagementObject("root\\MyNamespace", "MyClass.Name='abc'", opt);
+               </code>
+               <code lang='VB'>Dim opt As New GetObjectOptions(null, true)
+            Dim o As New ManagementObject("root\MyNamespace", "MyClass.Name=""abc""", opt);
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObject'/> class that is serializable.</para>
+            </summary>
+            <param name='info'>The <see cref='T:System.Runtime.Serialization.SerializationInfo'/> to populate with data.</param>
+            <param name='context'>The destination (see <see cref='T:System.Runtime.Serialization.StreamingContext'/> ) for this serialization.</param>
+        </member>
+        <member name="P:System.Management.ManagementObject.Scope">
+             <summary>
+                <para> Gets or sets the scope in which this object resides.</para>
+             </summary>
+             <value>
+             <para> A <see cref='T:System.Management.ManagementScope'/>.</para>
+             </value>
+             <remarks>
+                <para>
+                   Changing
+                   this property after the management object has been bound to a WMI object in
+                   a particular namespace results in releasing the original WMI object. This causes the management object to
+                   be rebound to the new object specified by the new path properties and scope
+                   values. </para>
+                <para>The rebinding is performed in a "lazy" manner, that is, only when a requested
+                   value requires the management object to be bound to the WMI object. Changes can
+                   be made to more than just this property before attempting to rebind (for example, modifying the scope
+                   and path properties simultaneously).</para>
+             </remarks>
+             <example>
+                <code lang='C#'>//Create the object with the default namespace (root\cimv2)
+             ManagementObject o = new ManagementObject();
+            
+             //Change the scope (=namespace) of this object to the one specified.
+             o.Scope = new ManagementScope("root\\MyAppNamespace");
+                </code>
+                <code lang='VB'>'Create the object with the default namespace (root\cimv2)
+             Dim o As New ManagementObject()
+            
+             'Change the scope (=namespace) of this object to the one specified.
+             o.Scope = New ManagementScope("root\MyAppNamespace")
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementObject.Path">
+             <summary>
+                <para> Gets or sets the object's WMI path.</para>
+             </summary>
+             <value>
+             <para>A <see cref='T:System.Management.ManagementPath'/> representing the object's path.</para>
+             </value>
+             <remarks>
+                <para>
+                   Changing the property after the management
+                   object has been bound to a WMI object in a particular namespace results in releasing
+                   the original WMI object. This causes the management object to be rebound to
+                   the new object specified by the new path properties and scope values.</para>
+                <para>The rebinding is performed in a "lazy" manner, that is, only when a requested
+                   value requires the management object to be bound to the WMI object. Changes can
+                   be made to more than just the property before attempting to rebind (for example,
+                   modifying the scope and path properties simultaneously).</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject();
+            
+             //Specify the WMI path to which this object should be bound to
+             o.Path = new ManagementPath("MyClass.Name='MyName'");
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject()
+            
+             'Specify the WMI path to which this object should be bound to
+             o.Path = New ManagementPath("MyClass.Name=""MyName""");
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementObject.Options">
+             <summary>
+                <para>
+                   Gets or
+                   sets additional information to use when retrieving the object.</para>
+             </summary>
+             <value>
+             <para>An <see cref='T:System.Management.ObjectGetOptions'/> to use when retrieving the object.</para>
+             </value>
+             <remarks>
+                <para> When the property is
+                   changed after the management object has been bound to a WMI object, the management object
+                   is disconnected from the original WMI object and later rebound using the new
+                   options.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>//Contains default options
+             ManagementObject o = new ManagementObject("MyClass.Name='abc'");
+            
+             //Replace default options, in this case requesting retrieval of
+             //amended qualifiers along with the WMI object.
+             o.Options = new ObjectGetOptions(null, true);
+                </code>
+                <code lang='VB'>'Contains default options
+             Dim o As New ManagementObject("MyClass.Name=""abc""")
+            
+             'Replace default options, in this case requesting retrieval of
+             'amended qualifiers along with the WMI object.
+             o.Options = New ObjectGetOptions(null, true)
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementObject.ClassPath">
+             <summary>
+                <para>Gets or sets the path to the object's class.</para>
+             </summary>
+             <value>
+             <para>A <see cref='T:System.Management.ManagementPath'/> representing the path to the object's
+                class.</para>
+             </value>
+             <remarks>
+                <para>This property is read-only.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject("MyClass.Name='abc'");
+            
+             //Get the class definition for the object above.
+             ManagementClass c = new ManagementClass(o.ClassPath);
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject("MyClass.Name=""abc""")
+            
+             'Get the class definition for the object above.
+             Dim c As New ManagementClass(o.ClassPath);
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.Get">
+             <overload>
+                Binds to the management object.
+             </overload>
+             <summary>
+                <para> Binds to the management object.</para>
+             </summary>
+             <remarks>
+                <para> The method is implicitly
+                   invoked at the first attempt to get or set information to the WMI object. It
+                   can also be explicitly invoked at the user's discretion, to better control the
+                   timing and manner of retrieval.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject("MyClass.Name='abc'");
+             string s = o["SomeProperty"]; //this causes an implicit Get().
+            
+             //or :
+            
+             ManagementObject o= new ManagementObject("MyClass.Name= 'abc'");
+             o.Get(); //explicitly
+             //Now it's faster because the object has already been retrieved.
+             string s = o["SomeProperty"];
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject("MyClass.Name=""abc""")
+             string s = o("SomeProperty") 'this causes an implicit Get().
+            
+             'or :
+            
+             Dim o As New ManagementObject("MyClass.Name= ""abc""")
+             o.Get()  'explicitly
+             'Now it's faster because the object has already been retrieved.
+             string s = o("SomeProperty");
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.Get(System.Management.ManagementOperationObserver)">
+             <summary>
+                <para> Binds to the management object asynchronously.</para>
+             </summary>
+             <param name='watcher'>The object to receive the results of the operation as events.</param>
+             <remarks>
+                <para>The method will issue the request to get the object
+                   and then will immediately return. The results of the operation will then be
+                   delivered through events being fired on the watcher object provided.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementObject o = new ManagementObject("MyClass.Name='abc'");
+            
+             //Set up handlers for asynchronous get
+             MyHandler h = new MyHandler();
+             ManagementOperationObserver ob = new ManagementOperationObserver();
+             ob.Completed += new CompletedEventHandler(h.Done);
+            
+             //Get the object asynchronously
+             o.Get(ob);
+            
+             //Wait until operation is completed
+             while (!h.Completed)
+                 System.Threading.Thread.Sleep (1000);
+            
+             //Here we can use the object
+             Console.WriteLine(o["SomeProperty"]);
+            
+             public class MyHandler
+             {
+                 private bool completed = false;
+            
+                 public void Done(object sender, CompletedEventArgs e) {
+                     Console.WriteLine("async Get completed !");
+                     completed = true;
+                 }
+            
+                 public bool Completed {
+                     get {
+                         return completed;
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Dim o As New ManagementObject("MyClass.Name=""abc""")
+            
+             'Set up handlers for asynchronous get
+             Dim h As New MyHandler()
+             Dim ob As New ManagementOperationObserver()
+             ob.Completed += New CompletedEventHandler(h.Done)
+            
+             'Get the object asynchronously
+             o.Get(ob)
+            
+             'Wait until operation is completed
+             While Not h.Completed
+                 System.Threading.Thread.Sleep(1000)
+             End While
+            
+             'Here we can use the object
+             Console.WriteLine(o("SomeProperty"))
+            
+             Public Class MyHandler
+                 Private _completed As Boolean = false;
+            
+                 Public Sub Done(sender As Object, e As EventArrivedEventArgs)
+                     Console.WriteLine("async Get completed !")
+                     _completed = True
+                 End Sub
+            
+                 Public ReadOnly Property Completed() As Boolean
+                    Get
+                        Return _completed
+                    End Get
+                 End Property
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated">
+            <overload>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </overload>
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementObjectCollection'/> containing the
+               related objects.</para>
+            </returns>
+            <remarks>
+               <para> The operation is equivalent to an ASSOCIATORS OF query where ResultClass = relatedClass.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementObject o = new ManagementObject("Win32_Service='Alerter'");
+            foreach (ManagementBaseObject b in o.GetRelated())
+                Console.WriteLine("Object related to Alerter service : ", b.Path);
+               </code>
+               <code lang='VB'>Dim o As New ManagementObject("Win32_Service=""Alerter""")
+            Dim b As ManagementBaseObject
+            For Each b In o.GetRelated()
+                Console.WriteLine("Object related to Alerter service : ", b.Path)
+            Next b
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.String)">
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <param name='relatedClass'>A class of related objects. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementObjectCollection'/> containing the related objects.
+            </returns>
+            <example>
+               <code lang='C#'>ManagementObject o = new ManagementObject("Win32_Service='Alerter'");
+            foreach (ManagementBaseObject b in o.GetRelated("Win32_Service")
+                Console.WriteLine("Service related to the Alerter service {0} is {1}", b["Name"], b["State"]);
+               </code>
+               <code lang='VB'>Dim o As New ManagementObject("Win32_Service=""Alerter""");
+            Dim b As ManagementBaseObject
+            For Each b in o.GetRelated("Win32_Service")
+                Console.WriteLine("Service related to the Alerter service {0} is {1}", b("Name"), b("State"))
+            Next b
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.String,System.String,System.String,System.String,System.String,System.String,System.Boolean,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <param name='relatedClass'>The class of the related objects. </param>
+            <param name='relationshipClass'>The relationship class of interest. </param>
+            <param name='relationshipQualifier'>The qualifier required to be present on the relationship class. </param>
+            <param name='relatedQualifier'>The qualifier required to be present on the related class. </param>
+            <param name='relatedRole'>The role that the related class is playing in the relationship. </param>
+            <param name='thisRole'>The role that this class is playing in the relationship. </param>
+            <param name='classDefinitionsOnly'>When this method returns, it contains only class definitions for the instances that match the query. </param>
+            <param name='options'>Extended options for how to execute the query. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementObjectCollection'/> containing the related objects.
+            </returns>
+            <remarks>
+               <para>This operation is equivalent to an ASSOCIATORS OF query where ResultClass = &lt;relatedClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para> Gets a collection of objects
+                  related to the object (associators) asynchronously. This call returns immediately, and a
+                  delegate is called when the results are available.</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <param name='relatedClass'>The class of related objects. </param>
+            <remarks>
+               <para>This operation is equivalent to an ASSOCIATORS OF query where ResultClass = &lt;relatedClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelated(System.Management.ManagementOperationObserver,System.String,System.String,System.String,System.String,System.String,System.String,System.Boolean,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Gets a collection of objects related to the object (associators).</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <param name='relatedClass'>The class of the related objects. </param>
+            <param name='relationshipClass'>The relationship class of interest. </param>
+            <param name='relationshipQualifier'>The qualifier required to be present on the relationship class. </param>
+            <param name='relatedQualifier'>The qualifier required to be present on the related class. </param>
+            <param name='relatedRole'>The role that the related class is playing in the relationship. </param>
+            <param name='thisRole'>The role that this class is playing in the relationship. </param>
+            <param name='classDefinitionsOnly'>Return only class definitions for the instances that match the query. </param>
+            <param name='options'>Extended options for how to execute the query.</param>
+            <remarks>
+               <para>This operation is equivalent to an ASSOCIATORS OF query where ResultClass = &lt;relatedClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships">
+            <overload>
+               Gets a collection of associations to the object.
+            </overload>
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementObjectCollection'/> containing the association objects.</para>
+            </returns>
+            <remarks>
+               <para> The operation is equivalent to a REFERENCES OF query.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.String)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='relationshipClass'>The associations to include. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementObjectCollection'/> containing the association objects.
+            </returns>
+            <remarks>
+               <para>This operation is equivalent to a REFERENCES OF query where the AssocClass = &lt;relationshipClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.String,System.String,System.String,System.Boolean,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='relationshipClass'>The type of relationship of interest. </param>
+            <param name='relationshipQualifier'>The qualifier to be present on the relationship. </param>
+            <param name='thisRole'>The role of this object in the relationship. </param>
+            <param name='classDefinitionsOnly'>When this method returns, it contains only the class definitions for the result set. </param>
+            <param name='options'>The extended options for the query execution. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementObjectCollection'/> containing the association objects.
+            </returns>
+            <remarks>
+               <para>This operation is equivalent to a REFERENCES OF query with possibly all the extensions.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <remarks>
+            This operation is equivalent to a REFERENCES OF query
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <param name='relationshipClass'>The associations to include. </param>
+            <remarks>
+               <para>This operation is equivalent to a REFERENCES OF query where the AssocClass = &lt;relationshipClass&gt;.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetRelationships(System.Management.ManagementOperationObserver,System.String,System.String,System.String,System.Boolean,System.Management.EnumerationOptions)">
+            <summary>
+               <para>Gets a collection of associations to the object.</para>
+            </summary>
+            <param name='watcher'>The object to use to return results. </param>
+            <param name='relationshipClass'>The type of relationship of interest. </param>
+            <param name='relationshipQualifier'>The qualifier to be present on the relationship. </param>
+            <param name='thisRole'>The role of this object in the relationship. </param>
+            <param name='classDefinitionsOnly'>When this method returns, it contains only the class definitions for the result set. </param>
+            <param name='options'>The extended options for the query execution. </param>
+            <remarks>
+               <para>This operation is equivalent to a REFERENCES OF query with possibly all the extensions.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.Put">
+            <overload>
+               Commits the changes to the object.
+            </overload>
+            <summary>
+               <para>Commits the changes to the object.</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementPath'/> containing the path to the committed
+               object.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.Put(System.Management.PutOptions)">
+            <summary>
+               <para>Commits the changes to the object.</para>
+            </summary>
+            <param name='options'>The options for how to commit the changes. </param>
+            <returns>
+               A <see cref='T:System.Management.ManagementPath'/> containing the path to the committed object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.Put(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Commits the changes to the object, asynchronously.</para>
+            </summary>
+            <param name='watcher'>A <see cref='T:System.Management.ManagementOperationObserver'/> used to handle the progress and results of the asynchronous operation.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.Put(System.Management.ManagementOperationObserver,System.Management.PutOptions)">
+            <summary>
+               <para>Commits the changes to the object asynchronously and
+                  using the specified options.</para>
+            </summary>
+            <param name='watcher'>A <see cref='T:System.Management.ManagementOperationObserver'/> used to handle the progress and results of the asynchronous operation.</param>
+            <param name=' options'>A <see cref='T:System.Management.PutOptions'/> used to specify additional options for the commit operation.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementPath)">
+            <overload>
+               Copies the object to a different location.
+            </overload>
+            <summary>
+               <para>Copies the object to a different location.</para>
+            </summary>
+            <param name='path'>The <see cref='T:System.Management.ManagementPath'/> to which the object should be copied. </param>
+            <returns>
+               <para>The new path of the copied object.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.String)">
+            <summary>
+               <para>Copies the object to a different location.</para>
+            </summary>
+            <param name='path'>The path to which the object should be copied. </param>
+            <returns>
+               The new path of the copied object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.String,System.Management.PutOptions)">
+            <summary>
+               <para>Copies the object to a different location.</para>
+            </summary>
+            <param name='path'>The path to which the object should be copied.</param>
+            <param name='options'>The options for how the object should be put.</param>
+            <returns>
+               The new path of the copied object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementPath,System.Management.PutOptions)">
+            <summary>
+               <para>Copies the object to a different location.</para>
+            </summary>
+            <param name='path'>The <see cref='T:System.Management.ManagementPath'/> to which the object should be copied.</param>
+            <param name='options'>The options for how the object should be put.</param>
+            <returns>
+               The new path of the copied object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementOperationObserver,System.Management.ManagementPath)">
+            <summary>
+               <para>Copies the object to a different location, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> specifying the path to which the object should be copied.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementOperationObserver,System.String)">
+            <summary>
+               <para>Copies the object to a different location, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='path'> The path to which the object should be copied.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementOperationObserver,System.String,System.Management.PutOptions)">
+            <summary>
+               <para>Copies the object to a different location, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='path'>The path to which the object should be copied.</param>
+            <param name='options'>The options for how the object should be put.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.CopyTo(System.Management.ManagementOperationObserver,System.Management.ManagementPath,System.Management.PutOptions)">
+            <summary>
+               <para>Copies the object to a different location, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='path'>The path to which the object should be copied.</param>
+            <param name='options'>The options for how the object should be put.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.Delete">
+            <overload>
+               Deletes the object.
+            </overload>
+            <summary>
+               <para>Deletes the object.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementObject.Delete(System.Management.DeleteOptions)">
+            <summary>
+               <para>Deletes the object.</para>
+            </summary>
+            <param name='options'>The options for how to delete the object. </param>
+        </member>
+        <member name="M:System.Management.ManagementObject.Delete(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Deletes the object.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.Delete(System.Management.ManagementOperationObserver,System.Management.DeleteOptions)">
+            <summary>
+               <para>Deletes the object.</para>
+            </summary>
+            <param name='watcher'>The object that will receive the results of the operation.</param>
+            <param name='options'>The options for how to delete the object.</param>
+        </member>
+        <member name="M:System.Management.ManagementObject.InvokeMethod(System.String,System.Object[])">
+             <overload>
+                <para>Invokes a method on the object.</para>
+             </overload>
+             <summary>
+                <para>
+                   Invokes a method on the object.</para>
+             </summary>
+             <param name='methodName'>The name of the method to execute. </param>
+             <param name='args'>An array containing parameter values. </param>
+             <returns>
+                <para>The value returned by the method.</para>
+             </returns>
+             <remarks>
+                <para>If the method is static, the execution
+                   should still succeed.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates invoking a WMI method using an array of arguments.
+             public class InvokeMethod
+             {
+                 public static void Main()
+                 {
+            
+                     //Get the object on which the method will be invoked
+                     ManagementClass processClass = new ManagementClass("Win32_Process");
+            
+                     //Create an array containing all arguments for the method
+                     object[] methodArgs = {"notepad.exe", null, null, 0};
+            
+                     //Execute the method
+                     object result = processClass.InvokeMethod ("Create", methodArgs);
+            
+                     //Display results
+                     Console.WriteLine ("Creation of process returned: " + result);
+                     Console.WriteLine ("Process id: " + methodArgs[3]);
+                 }
+            
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates invoking a WMI method using an array of arguments.
+             Class InvokeMethod
+                 Public Overloads Shared Function Main(ByVal args() As String) As Integer
+            
+                     ' Get the object on which the method will be invoked
+                     Dim processClass As New ManagementClass("Win32_Process")
+            
+                     ' Create an array containing all arguments for the method
+                     Dim methodArgs() As Object = {"notepad.exe", Nothing, Nothing, 0}
+            
+                     ' Execute the method
+                     Dim result As Object = processClass.InvokeMethod("Create", methodArgs)
+            
+                     'Display results
+                     Console.WriteLine("Creation of process returned: {0}", result)
+                     Console.WriteLine("Process id: {0}", methodArgs(3))
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.InvokeMethod(System.Management.ManagementOperationObserver,System.String,System.Object[])">
+            <summary>
+               <para>Invokes a method on the object, asynchronously.</para>
+            </summary>
+            <param name='watcher'>The object to receive the results of the operation.</param>
+            <param name='methodName'>The name of the method to execute. </param>
+            <param name='args'>An array containing parameter values. </param>
+            <remarks>
+               <para>If the method is static, the execution
+                  should still succeed.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.InvokeMethod(System.String,System.Management.ManagementBaseObject,System.Management.InvokeMethodOptions)">
+             <summary>
+                <para>Invokes a method on the WMI object. The input and output
+                   parameters are represented as <see cref='T:System.Management.ManagementBaseObject'/>
+                   objects.</para>
+             </summary>
+             <param name='methodName'>The name of the method to execute.</param>
+             <param name=' inParameters'>A <see cref='T:System.Management.ManagementBaseObject'/> holding the input parameters to the method.</param>
+             <param name=' options'>An <see cref='T:System.Management.InvokeMethodOptions'/> containing additional options for the execution of the method.</param>
+             <returns>
+             <para>A <see cref='T:System.Management.ManagementBaseObject'/> containing the
+                output parameters and return value of the executed method.</para>
+             </returns>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates invoking a WMI method using parameter objects
+             public class InvokeMethod
+             {
+                 public static void Main()
+                 {
+            
+                     //Get the object on which the method will be invoked
+                     ManagementClass processClass = new ManagementClass("Win32_Process");
+            
+                     //Get an input parameters object for this method
+                     ManagementBaseObject inParams = processClass.GetMethodParameters("Create");
+            
+                     //Fill in input parameter values
+                     inParams["CommandLine"] = "calc.exe";
+            
+                     //Execute the method
+                     ManagementBaseObject outParams = processClass.InvokeMethod ("Create", inParams, null);
+            
+                     //Display results
+                     //Note: The return code of the method is provided in the "returnValue" property of the outParams object
+                     Console.WriteLine("Creation of calculator process returned: " + outParams["returnValue"]);
+                     Console.WriteLine("Process ID: " + outParams["processId"]);
+                }
+             }
+                </code>
+                <code lang='VB'>
+             Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates invoking a WMI method using parameter objects
+             Class InvokeMethod
+                 Public Overloads Shared Function Main(ByVal args() As String) As Integer
+            
+                     ' Get the object on which the method will be invoked
+                     Dim processClass As New ManagementClass("Win32_Process")
+            
+                      ' Get an input parameters object for this method
+                     Dim inParams As ManagementBaseObject = processClass.GetMethodParameters("Create")
+            
+                     ' Fill in input parameter values
+                     inParams("CommandLine") = "calc.exe"
+            
+                     ' Execute the method
+                     Dim outParams As ManagementBaseObject = processClass.InvokeMethod("Create", inParams, Nothing)
+            
+                     ' Display results
+                     ' Note: The return code of the method is provided in the "returnValue" property of the outParams object
+                     Console.WriteLine("Creation of calculator process returned: {0}", outParams("returnValue"))
+                     Console.WriteLine("Process ID: {0}", outParams("processId"))
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObject.InvokeMethod(System.Management.ManagementOperationObserver,System.String,System.Management.ManagementBaseObject,System.Management.InvokeMethodOptions)">
+            <summary>
+               <para>Invokes a method on the object, asynchronously.</para>
+            </summary>
+            <param name='watcher'>A <see cref='T:System.Management.ManagementOperationObserver'/> used to handle the asynchronous execution's progress and results.</param>
+            <param name=' methodName'>The name of the method to be executed.</param>
+            <param name=' inParameters'><para>A <see cref='T:System.Management.ManagementBaseObject'/> containing the input parameters for the method.</para></param>
+            <param name=' options'>An <see cref='T:System.Management.InvokeMethodOptions'/> containing additional options used to execute the method.</param>
+            <remarks>
+               <para>The method invokes the specified method execution and then
+                  returns. Progress and results are reported through events on the <see cref='T:System.Management.ManagementOperationObserver'/>.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.GetMethodParameters(System.String)">
+            <summary>
+            <para>Returns a <see cref='T:System.Management.ManagementBaseObject'/> representing the list of input parameters for a method.</para>
+            </summary>
+            <param name='methodName'>The name of the method. </param>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> containing the
+               input parameters to the method.</para>
+            </returns>
+            <remarks>
+               <para> Gets the object containing the input parameters to a
+                  method, and then fills in the values and passes the object to the <see cref='M:System.Management.ManagementObject.InvokeMethod(System.String,System.Management.ManagementBaseObject,System.Management.InvokeMethodOptions)'/> call.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementObject.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The copied object.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObject.ToString">
+            <summary>
+               <para>Returns the full path of the object. This is an override of the
+                  default object implementation.</para>
+            </summary>
+            <returns>
+               <para> The full path of
+                  the object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.ManagementObjectCollection">
+             <summary>
+                <para> Represents different collections of management objects
+                   retrieved through WMI. The objects in this collection are of <see cref='T:System.Management.ManagementBaseObject'/>-derived types, including <see cref='T:System.Management.ManagementObject'/> and <see cref='T:System.Management.ManagementClass'/>
+                   .</para>
+                <para> The collection can be the result of a WMI
+                   query executed through a <see cref='T:System.Management.ManagementObjectSearcher'/> object, or an enumeration of
+                   management objects of a specified type retrieved through a <see cref='T:System.Management.ManagementClass'/> representing that type.
+                   In addition, this can be a collection of management objects related in a specified
+                   way to a specific management object - in this case the collection would
+                   be retrieved through a method such as <see cref='M:System.Management.ManagementObject.GetRelated'/>.</para>
+             <para>The collection can be walked using the <see cref='T:System.Management.ManagementObjectCollection.ManagementObjectEnumerator'/> and objects in it can be inspected or
+                manipulated for various management tasks.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to enumerate instances of a ManagementClass object.
+             class Sample_ManagementObjectCollection
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     ManagementObjectCollection disks = diskClass.GetInstances();
+                     foreach (ManagementObject disk in disks) {
+                         Console.WriteLine("Disk = " + disk["deviceid"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to enumerate instances of a ManagementClass object.
+             Class Sample_ManagementObjectCollection
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                     Dim disks As ManagementObjectCollection = diskClass.GetInstances()
+                     Dim disk As ManagementObject
+                     For Each disk In disks
+                         Console.WriteLine("Disk = " &amp; disk("deviceid").ToString())
+                     Next disk
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.Finalize">
+            <summary>
+            <para>Disposes of resources the object is holding. This is the destructor for the object.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.Dispose">
+            <summary>
+            Releases resources associated with this object. After this
+            method has been called, an attempt to use this object will
+            result in an ObjectDisposedException being thrown.
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.Count">
+            <summary>
+               <para>Represents the number of objects in the collection.</para>
+            </summary>
+            <value>
+               <para>The number of objects in the collection.</para>
+            </value>
+            <remarks>
+               <para>This property is very expensive - it requires that
+               all members of the collection be enumerated.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.IsSynchronized">
+            <summary>
+               <para>Represents whether the object is synchronized.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/>, if the object is synchronized;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.SyncRoot">
+            <summary>
+               <para>Represents the object to be used for synchronization.</para>
+            </summary>
+            <value>
+               <para> The object to be used for synchronization.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.CopyTo(System.Array,System.Int32)">
+            <overload>
+               Copies the collection to an array.
+            </overload>
+            <summary>
+               <para> Copies the collection to an array.</para>
+            </summary>
+            <param name='array'>An array to copy to. </param>
+            <param name='index'>The index to start from. </param>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.CopyTo(System.Management.ManagementBaseObject[],System.Int32)">
+            <summary>
+            <para>Copies the items in the collection to a <see cref='T:System.Management.ManagementBaseObject'/>
+            array.</para>
+            </summary>
+            <param name='objectCollection'>The target array.</param>
+            <param name=' index'>The index to start from.</param>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.GetEnumerator">
+            <summary>
+               <para>Returns the enumerator for the collection. If the collection was retrieved from an operation that
+            specified the EnumerationOptions.Rewindable = false only one iteration through this enumerator is allowed.
+            Note that this applies to using the Count property of the collection as well since an iteration over the collection
+            is required. Due to this, code using the Count property should never specify EnumerationOptions.Rewindable = false.
+            </para>
+            </summary>
+            <returns>
+               An <see cref='T:System.Collections.IEnumerator'/>that can be used to iterate through the
+               collection.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.System#Collections#IEnumerable#GetEnumerator">
+            <internalonly/>
+            <summary>
+               <para>Returns an enumerator that can iterate through a collection.</para>
+            </summary>
+            <returns>
+               An <see cref='T:System.Collections.IEnumerator'/> that can be used to iterate
+               through the collection.
+            </returns>
+        </member>
+        <member name="T:System.Management.ManagementObjectCollection.ManagementObjectEnumerator">
+             <summary>
+                <para>Represents the enumerator on the collection.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to enumerate all logical disks
+             // using the ManagementObjectEnumerator object.
+             class Sample_ManagementObjectEnumerator
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     ManagementObjectCollection disks = diskClass.GetInstances();
+                     ManagementObjectCollection.ManagementObjectEnumerator disksEnumerator =
+                         disks.GetEnumerator();
+                     while(disksEnumerator.MoveNext()) {
+                         ManagementObject disk = (ManagementObject)disksEnumerator.Current;
+                        Console.WriteLine("Disk found: " + disk["deviceid"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+                   Imports System.Management
+                   ' This sample demonstrates how to enumerate all logical disks
+                   ' using ManagementObjectEnumerator object.
+                   Class Sample_ManagementObjectEnumerator
+                   Overloads Public Shared Function Main(args() As String) As Integer
+                   Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                   Dim disks As ManagementObjectCollection = diskClass.GetInstances()
+                   Dim disksEnumerator As _
+                   ManagementObjectCollection.ManagementObjectEnumerator = _
+                   disks.GetEnumerator()
+                   While disksEnumerator.MoveNext()
+                   Dim disk As ManagementObject = _
+                   CType(disksEnumerator.Current, ManagementObject)
+                   Console.WriteLine("Disk found: " &amp; disk("deviceid"))
+                   End While
+                   Return 0
+                   End Function
+                   End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.Finalize">
+            <summary>
+            <para>Disposes of resources the object is holding. This is the destructor for the object.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.Dispose">
+            <summary>
+            Releases resources associated with this object. After this
+            method has been called, an attempt to use this object will
+            result in an ObjectDisposedException being thrown.
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.Current">
+            <summary>
+            <para>Gets the current <see cref='T:System.Management.ManagementBaseObject'/> that this enumerator points
+               to.</para>
+            </summary>
+            <value>
+               <para>The current object in the enumeration.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.System#Collections#IEnumerator#Current">
+            <internalonly/>
+            <summary>
+               <para>Returns the current object in the enumeration.</para>
+            </summary>
+            <value>
+               <para>The current object in the enumeration.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.MoveNext">
+            <summary>
+               Indicates whether the enumerator has moved to
+               the next object in the enumeration.
+            </summary>
+            <returns>
+            <para><see langword='true'/>, if the enumerator was
+               successfully advanced to the next element; <see langword='false'/> if the enumerator has
+               passed the end of the collection.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObjectCollection.ManagementObjectEnumerator.Reset">
+            <summary>
+               <para>Resets the enumerator to the beginning of the collection.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementObjectSearcher">
+             <summary>
+                <para> Retrieves a collection of management objects based
+                   on a specified query.</para>
+                <para>This class is one of the more commonly used entry points to retrieving
+                   management information. For example, it can be used to enumerate all disk
+                   drives, network adapters, processes and many more management objects on a
+                   system, or to query for all network connections that are up, services that are
+                   paused etc. </para>
+                <para>When instantiated, an instance of this class takes as input a WMI
+                   query represented in an <see cref='T:System.Management.ObjectQuery'/> or it's derivatives, and optionally a <see cref='T:System.Management.ManagementScope'/> representing the WMI namespace
+                   to execute the query in. It can also take additional advanced
+                   options in an <see cref='T:System.Management.EnumerationOptions'/> object. When the Get() method on this object
+                   is invoked, the ManagementObjectSearcher executes the given query in the
+                   specified scope and returns a collection of management objects that match the
+                   query in a <see cref='T:System.Management.ManagementObjectCollection'/>.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates perform a query using
+             // ManagementObjectSearcher object.
+             class Sample_ManagementObjectSearcher
+             {
+                 public static int Main(string[] args) {
+                     ManagementObjectSearcher searcher = new
+                         ManagementObjectSearcher("select * from win32_share");
+                     foreach (ManagementObject share in searcher.Get()) {
+                         Console.WriteLine("Share = " + share["Name"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates perform a query using
+             ' ManagementObjectSearcher object.
+             Class Sample_ManagementObjectSearcher
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim searcher As New ManagementObjectSearcher("SELECT * FROM Win32_Share")
+                     Dim share As ManagementObject
+                     For Each share In searcher.Get()
+                         Console.WriteLine("Share = " &amp; share("Name").ToString())
+                     Next share
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor">
+            <overload>
+               Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class. After some properties on
+               this object are set, the object can be used to invoke a query for management information. This is the default
+               constructor.</para>
+            </summary>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s = new ManagementObjectSearcher();
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher()
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used
+               to invoke the specified query for management information.</para>
+            </summary>
+            <param name='queryString'>The WMI query to be invoked by the object.</param>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s =
+                new ManagementObjectSearcher("SELECT * FROM Win32_Service");
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher("SELECT * FROM Win32_Service")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.Management.ObjectQuery)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used to invoke the
+               specified query for management information.</para>
+            </summary>
+            <param name='query'>An <see cref='T:System.Management.ObjectQuery'/> representing the query to be invoked by the searcher.</param>
+            <example>
+               <code lang='C#'>SelectQuery q = new SelectQuery("Win32_Service", "State='Running'");
+            ManagementObjectSearcher s = new ManagementObjectSearcher(q);
+               </code>
+               <code lang='VB'>Dim q As New SelectQuery("Win32_Service", "State=""Running""")
+            Dim s As New ManagementObjectSearcher(q)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used to invoke the
+               specified query in the specified scope.</para>
+            </summary>
+            <param name='scope'>The scope in which to query.</param>
+            <param name=' queryString'>The query to be invoked.</param>
+            <remarks>
+            <para>If no scope is specified, the default scope (<see cref='P:System.Management.ManagementPath.DefaultPath'/>) is used.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s = new ManagementObjectSearcher(
+                                           "root\\MyApp",
+                                           "SELECT * FROM MyClass WHERE MyProp=5");
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher( _
+                                           "root\MyApp", _
+                                           "SELECT * FROM MyClass WHERE MyProp=5")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.Management.ManagementScope,System.Management.ObjectQuery)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used to invoke the
+               specified query in the specified scope.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> representing the scope in which to invoke the query.</param>
+            <param name=' query'>An <see cref='T:System.Management.ObjectQuery'/> representing the query to be invoked.</param>
+            <remarks>
+            <para>If no scope is specified, the default scope (<see cref='P:System.Management.ManagementPath.DefaultPath'/>) is
+               used.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementScope myScope = new ManagementScope("root\\MyApp");
+            SelectQuery q = new SelectQuery("Win32_Environment", "User=&lt;system&gt;");
+            ManagementObjectSearcher s = new ManagementObjectSearcher(myScope,q);
+               </code>
+               <code lang='VB'>Dim myScope As New ManagementScope("root\MyApp")
+            Dim q As New SelectQuery("Win32_Environment", "User=&lt;system&gt;")
+            Dim s As New ManagementObjectSearcher(myScope,q)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.String,System.String,System.Management.EnumerationOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class used to invoke the specified
+               query, in the specified scope, and with the specified options.</para>
+            </summary>
+            <param name='scope'>The scope in which the query should be invoked.</param>
+            <param name=' queryString'>The query to be invoked.</param>
+            <param name=' options'>An <see cref='T:System.Management.EnumerationOptions'/> specifying additional options for the query.</param>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s = new ManagementObjectSearcher(
+                "root\\MyApp",
+                "SELECT * FROM MyClass",
+                new EnumerationOptions(null, InfiniteTimeout, 1, true, false, true);
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher( _
+                "root\MyApp", _
+                "SELECT * FROM MyClass", _
+                New EnumerationOptions(Null, InfiniteTimeout, 1, True, False, True)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.#ctor(System.Management.ManagementScope,System.Management.ObjectQuery,System.Management.EnumerationOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementObjectSearcher'/> class to be
+               used to invoke the specified query in the specified scope, with the specified
+               options.</para>
+            </summary>
+            <param name='scope'>A <see cref='T:System.Management.ManagementScope'/> specifying the scope of the query</param>
+            <param name=' query'>An <see cref='T:System.Management.ObjectQuery'/> specifying the query to be invoked</param>
+            <param name=' options'>An <see cref='T:System.Management.EnumerationOptions'/> specifying additional options to be used for the query.</param>
+            <example>
+               <code lang='C#'>ManagementScope scope = new ManagementScope("root\\MyApp");
+            SelectQuery q = new SelectQuery("SELECT * FROM MyClass");
+            EnumerationOptions o = new EnumerationOptions(null, InfiniteTimeout, 1, true, false, true);
+            ManagementObjectSearcher s = new ManagementObjectSearcher(scope, q, o);
+               </code>
+               <code lang='VB'>Dim scope As New ManagementScope("root\MyApp")
+            Dim q As New SelectQuery("SELECT * FROM MyClass")
+            Dim o As New EnumerationOptions(Null, InfiniteTimeout, 1, True, False, True)
+            Dim s As New ManagementObjectSearcher(scope, q, o)
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementObjectSearcher.Scope">
+            <summary>
+               <para>Gets or sets the scope in which to look for objects (the scope represents a WMI namespace).</para>
+            </summary>
+            <value>
+               <para> The scope (namespace) in which to look for objects.</para>
+            </value>
+            <remarks>
+               <para>When the value of this property is changed,
+                  the <see cref='T:System.Management.ManagementObjectSearcher'/>
+                  is re-bound to the new scope.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementObjectSearcher s = new ManagementObjectSearcher();
+            s.Scope = new ManagementScope("root\\MyApp");
+               </code>
+               <code lang='VB'>Dim s As New ManagementObjectSearcher()
+            Dim ms As New ManagementScope ("root\MyApp")
+            s.Scope = ms
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.ManagementObjectSearcher.Query">
+            <summary>
+               <para> Gets or sets the query to be invoked in the
+                  searcher (that is, the criteria to be applied to the search for management objects).</para>
+            </summary>
+            <value>
+               <para> The criteria to apply to the query.</para>
+            </value>
+            <remarks>
+            <para>When the value of this property is changed, the <see cref='T:System.Management.ManagementObjectSearcher'/>
+            is reset to use the new query.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ManagementObjectSearcher.Options">
+            <summary>
+               <para>Gets or sets the options for how to search for objects.</para>
+            </summary>
+            <value>
+               <para>The options for how to search for objects.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.Get">
+            <overload>
+               Invokes the specified WMI query and returns the resulting collection.
+            </overload>
+            <summary>
+               <para>Invokes the specified WMI query and returns the
+                  resulting collection.</para>
+            </summary>
+            <returns>
+            <para>A <see cref='T:System.Management.ManagementObjectCollection'/> containing the objects that match the
+               specified query.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementObjectSearcher.Get(System.Management.ManagementOperationObserver)">
+            <summary>
+               <para>Invokes the WMI query, asynchronously, and binds to a watcher to deliver the results.</para>
+            </summary>
+            <param name='watcher'>The watcher that raises events triggered by the operation. </param>
+        </member>
+        <member name="T:System.Management.ObjectReadyEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementOperationObserver.ObjectReady'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.CompletedEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementOperationObserver.Completed'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ProgressEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementOperationObserver.Progress'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ObjectPutEventHandler">
+            <summary>
+            <para>Represents the method that will handle the <see cref='E:System.Management.ManagementOperationObserver.ObjectPut'/> event.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementOperationObserver">
+             <summary>
+                <para>Used to manage asynchronous operations and handle management information and events received asynchronously.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to read a ManagementObject asychronously
+             // using the ManagementOperationObserver object.
+            
+             class Sample_ManagementOperationObserver {
+                 public static int Main(string[] args) {
+            
+                     //Set up a handler for the asynchronous callback
+                     ManagementOperationObserver observer = new ManagementOperationObserver();
+                     MyHandler completionHandler = new MyHandler();
+                     observer.Completed += new CompletedEventHandler(completionHandler.Done);
+            
+                     //Invoke the asynchronous read of the object
+                     ManagementObject disk = new ManagementObject("Win32_logicaldisk='C:'");
+                     disk.Get(observer);
+            
+                     //For the purpose of this sample, we keep the main
+                     // thread alive until the asynchronous operation is completed.
+            
+                     while (!completionHandler.IsComplete) {
+                         System.Threading.Thread.Sleep(500);
+                     }
+            
+                     Console.WriteLine("Size= " + disk["Size"] + " bytes.");
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler
+                 {
+                     private bool isComplete = false;
+            
+                     public void Done(object sender, CompletedEventArgs e) {
+                         isComplete = true;
+                     }
+            
+                     public bool IsComplete {
+                         get {
+                             return isComplete;
+                         }
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to read a ManagementObject asychronously
+             ' using the ManagementOperationObserver object.
+            
+             Class Sample_ManagementOperationObserver
+                 Overloads Public Shared Function Main(args() As String) As Integer
+            
+                     'Set up a handler for the asynchronous callback
+                     Dim observer As New ManagementOperationObserver()
+                     Dim completionHandler As New MyHandler()
+                     AddHandler observer.Completed, AddressOf completionHandler.Done
+            
+                     ' Invoke the object read asynchronously
+                     Dim disk As New ManagementObject("Win32_logicaldisk='C:'")
+                     disk.Get(observer)
+            
+                     ' For the purpose of this sample, we keep the main
+                     ' thread alive until the asynchronous operation is finished.
+                     While Not completionHandler.IsComplete Then
+                         System.Threading.Thread.Sleep(500)
+                     End While
+            
+                     Console.WriteLine("Size = " + disk("Size").ToString() &amp; " bytes")
+            
+                     Return 0
+                 End Function
+            
+                 Public Class MyHandler
+                     Private _isComplete As Boolean = False
+            
+                     Public Sub Done(sender As Object, e As CompletedEventArgs)
+                         _isComplete = True
+                     End Sub 'Done
+            
+                     Public ReadOnly Property IsComplete() As Boolean
+                         Get
+                             Return _isComplete
+                         End Get
+                     End Property
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="E:System.Management.ManagementOperationObserver.ObjectReady">
+            <summary>
+               <para> Occurs when a new object is available.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementOperationObserver.Completed">
+            <summary>
+               <para> Occurs when an operation has completed.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementOperationObserver.Progress">
+            <summary>
+               <para> Occurs to indicate the progress of an ongoing operation.</para>
+            </summary>
+        </member>
+        <member name="E:System.Management.ManagementOperationObserver.ObjectPut">
+            <summary>
+               <para> Occurs when an object has been successfully committed.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementOperationObserver.#ctor">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementOperationObserver'/> class. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementOperationObserver.Cancel">
+            <summary>
+               <para> Cancels all outstanding operations.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementOperationObserver.FireObjectReady(System.Management.ObjectReadyEventArgs)">
+            <summary>
+            Fires the ObjectReady event to whomsoever is listening
+            </summary>
+            <param name="args"> </param>
+        </member>
+        <member name="T:System.Management.WmiDelegateInvoker">
+            <summary>
+            This class handles the posting of events to delegates. For each event
+            it queues a set of requests (one per target delegate) to the thread pool
+            to handle the event. It ensures that no single delegate can throw
+            an exception that prevents the event from reaching any other delegates.
+            It also ensures that the sender does not signal the processing of the
+            WMI event as "done" until all target delegates have signalled that they are
+            done.
+            </summary>
+        </member>
+        <member name="M:System.Management.WmiDelegateInvoker.FireEventToDelegates(System.MulticastDelegate,System.Management.ManagementEventArgs)">
+            <summary>
+            Custom handler for firing a WMI event to a list of delegates. We use
+            the process thread pool to handle the firing.
+            </summary>
+            <param name="md">The MulticastDelegate representing the collection
+            of targets for the event</param>
+            <param name="args">The accompanying event arguments</param>
+        </member>
+        <member name="T:System.Management.AuthenticationLevel">
+            <summary>
+               <para>Describes the authentication level to be used to connect to WMI. This is used for the COM connection to WMI.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Default">
+            <summary>
+               <para>The default COM authentication level. WMI uses the default Windows Authentication setting.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.None">
+            <summary>
+               <para> No COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Connect">
+            <summary>
+               <para> Connect-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Call">
+            <summary>
+               <para> Call-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Packet">
+            <summary>
+               <para> Packet-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.PacketIntegrity">
+            <summary>
+               <para>Packet Integrity-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.PacketPrivacy">
+            <summary>
+               <para>Packet Privacy-level COM authentication.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.AuthenticationLevel.Unchanged">
+            <summary>
+               <para>The default COM authentication level. WMI uses the default Windows Authentication setting.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ImpersonationLevel">
+            <summary>
+               <para>Describes the impersonation level to be used to connect to WMI.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Default">
+            <summary>
+               <para>Default impersonation.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Anonymous">
+            <summary>
+               <para> Anonymous COM impersonation level that hides the
+                  identity of the caller. Calls to WMI may fail
+                  with this impersonation level.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Identify">
+            <summary>
+               <para> Identify-level COM impersonation level that allows objects
+                  to query the credentials of the caller. Calls to
+                  WMI may fail with this impersonation level.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Impersonate">
+            <summary>
+               <para> Impersonate-level COM impersonation level that allows
+                  objects to use the credentials of the caller. This is the recommended impersonation level for WMI calls.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ImpersonationLevel.Delegate">
+            <summary>
+               <para> Delegate-level COM impersonation level that allows objects
+                  to permit other objects to use the credentials of the caller. This
+                  level, which will work with WMI calls but may constitute an unnecessary
+                  security risk, is supported only under Windows 2000.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.PutType">
+            <summary>
+               <para>Describes the possible effects of saving an object to WMI when
+                  using <see cref='M:System.Management.ManagementObject.Put'/>.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.PutType.None">
+            <summary>
+               <para> Invalid Type </para>
+            </summary>
+        </member>
+        <member name="F:System.Management.PutType.UpdateOnly">
+            <summary>
+               <para> Updates an existing object
+                  only; does not create a new object.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.PutType.CreateOnly">
+            <summary>
+               <para> Creates an object only;
+                  does not update an existing object.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.PutType.UpdateOrCreate">
+            <summary>
+               <para> Saves the object, whether
+                  updating an existing object or creating a new object.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementOptions">
+            <summary>
+               <para>
+                  Provides an abstract base class for all Options objects.</para>
+               <para>Options objects are used to customize different management operations. </para>
+               <para>Use one of the Options classes derived from this class, as
+                  indicated by the signature of the operation being performed.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.ManagementOptions.InfiniteTimeout">
+            <summary>
+               <para> Specifies an infinite timeout.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementOptions.Context">
+            <summary>
+               <para> Gets or sets a WMI context object. This is a
+                  name-value pairs list to be passed through to a WMI provider that supports
+                  context information for customized operation.</para>
+            </summary>
+            <value>
+               <para>A name-value pairs list to be passed through to a WMI provider that
+                  supports context information for customized operation.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementOptions.Timeout">
+            <summary>
+               <para>Gets or sets the timeout to apply to the operation.
+                  Note that for operations that return collections, this timeout applies to the
+                  enumeration through the resulting collection, not the operation itself
+                  (the <see cref='P:System.Management.EnumerationOptions.ReturnImmediately'/>
+                  property is used for the latter).</para>
+               This property is used to indicate that the operation should be performed semisynchronously.
+            </summary>
+            <value>
+            <para>The default value for this property is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/>
+            , which means the operation will block.
+            The value specified must be positive.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.EnumerationOptions">
+             <summary>
+                <para>Provides a base class for query and enumeration-related options
+                   objects.</para>
+                <para>Use this class to customize enumeration of management
+                   objects, traverse management object relationships, or query for
+                   management objects.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to enumerate all top-level WMI classes
+             // and subclasses in root/cimv2 namespace.
+             class Sample_EnumerationOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass newClass = new ManagementClass();
+                     EnumerationOptions options = new EnumerationOptions();
+                     options.EnumerateDeep = false;
+                     foreach (ManagementObject o in newClass.GetSubclasses(options)) {
+                         Console.WriteLine(o["__Class"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to enumerate all top-level WMI classes
+             ' and subclasses in root/cimv2 namespace.
+             Class Sample_EnumerationOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim newClass As New ManagementClass()
+                     Dim options As New EnumerationOptions()
+                     options.EnumerateDeep = False
+                     Dim o As ManagementObject
+                     For Each o In newClass.GetSubclasses(options)
+                         Console.WriteLine(o("__Class"))
+                     Next o
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.ReturnImmediately">
+            <summary>
+               <para>Gets or sets a value indicating whether the invoked operation should be
+                  performed in a synchronous or semisynchronous fashion. If this property is set
+                  to <see langword='true'/>, the enumeration is invoked and the call returns immediately. The actual
+                  retrieval of the results will occur when the resulting collection is walked.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the invoked operation should
+               be performed in a synchronous or semisynchronous fashion; otherwise,
+            <see langword='false'/>. The default value is <see langword='true'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.BlockSize">
+            <summary>
+               <para> Gets or sets the block size
+                  for block operations. When enumerating through a collection, WMI will return results in
+                  groups of the specified size.</para>
+            </summary>
+            <value>
+               <para>The default value is 1.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.Rewindable">
+            <summary>
+               <para>Gets or sets a value indicating whether the collection is assumed to be
+                  rewindable. If <see langword='true'/>, the objects in the
+                  collection will be kept available for multiple enumerations. If
+               <see langword='false'/>, the collection
+                  can only be enumerated one time.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the collection is assumed to
+               be rewindable; otherwise, <see langword='false'/>. The default value is
+            <see langword='true'/>.</para>
+            </value>
+            <remarks>
+               <para>A rewindable collection is more costly in memory
+                  consumption as all the objects need to be kept available at the same time.
+                  In a collection defined as non-rewindable, the objects are discarded after being returned
+                  in the enumeration.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.UseAmendedQualifiers">
+            <summary>
+               <para> Gets or sets a value indicating whether the objects returned from
+                  WMI should contain amended information. Typically, amended information is localizable
+                  information attached to the WMI object, such as object and property
+                  descriptions.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the objects returned from WMI
+               should contain amended information; otherwise, <see langword='false'/>. The
+               default value is <see langword='false'/>.</para>
+            </value>
+            <remarks>
+               <para>If descriptions and other amended information are not of
+                  interest, setting this property to <see langword='false'/>
+                  is more
+                  efficient.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.EnsureLocatable">
+            <summary>
+               <para>Gets or sets a value indicating whether to the objects returned should have
+                  locatable information in them. This ensures that the system properties, such as
+               <see langword='__PATH'/>, <see langword='__RELPATH'/>, and
+               <see langword='__SERVER'/>, are non-NULL. This flag can only be used in queries,
+                  and is ignored in enumerations.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if WMI
+               should ensure all returned objects have valid paths; otherwise,
+            <see langword='false'/>. The default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.PrototypeOnly">
+            <summary>
+               <para>Gets or sets a value indicating whether the query should return a
+                  prototype of the result set instead of the actual results. This flag is used for
+                  prototyping.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the
+               query should return a prototype of the result set instead of the actual results;
+               otherwise, <see langword='false'/>. The default value is
+            <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.DirectRead">
+            <summary>
+               <para> Gets or sets a value indicating whether direct access to the WMI provider is requested for the specified class,
+                  without any regard to its base class or derived classes.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if only
+               objects of the specified class should be received, without regard to derivation
+               or inheritance; otherwise, <see langword='false'/>. The default value is
+            <see langword='false'/>. </para>
+            </value>
+        </member>
+        <member name="P:System.Management.EnumerationOptions.EnumerateDeep">
+            <summary>
+               <para> Gets or sets a value indicating whether recursive enumeration is requested
+                  into all classes derived from the specified base class. If
+               <see langword='false'/>, only immediate derived
+                  class members are returned.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if recursive enumeration is requested
+               into all classes derived from the specified base class; otherwise,
+            <see langword='false'/>. The default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.EnumerationOptions.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.EnumerationOptions'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EnumerationOptions'/>
+            class with default values (see the individual property descriptions
+            for what the default values are). This is the default constructor. </para>
+            </summary>
+        </member>
+        <member name="M:System.Management.EnumerationOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan,System.Int32,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean,System.Boolean)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EnumerationOptions'/> class to be used for queries or enumerations,
+               allowing the user to specify values for the different options.</para>
+            </summary>
+            <param name='context'>The options context object containing provider-specific information that can be passed through to the provider.</param>
+            <param name=' timeout'>The timeout value for enumerating through the results.</param>
+            <param name=' blockSize'>The number of items to retrieve at one time from WMI.</param>
+            <param name=' rewindable'><see langword='true'/> to specify whether the result set is rewindable (=allows multiple traversal or one-time); otherwise, <see langword='false'/>.</param>
+            <param name=' returnImmediatley'><see langword='true'/> to specify whether the operation should return immediately (semi-sync) or block until all results are available; otherwise, <see langword='false'/> .</param>
+            <param name=' useAmendedQualifiers'><see langword='true'/> to specify whether the returned objects should contain amended (locale-aware) qualifiers; otherwise, <see langword='false'/> .</param>
+            <param name=' ensureLocatable'><see langword='true'/> to specify to WMI that it should ensure all returned objects have valid paths; otherwise, <see langword='false'/> .</param>
+            <param name=' prototypeOnly'><see langword='true'/> to return a prototype of the result set instead of the actual results; otherwise, <see langword='false'/> .</param>
+            <param name=' directRead'><see langword='true'/> to retrieve objects of only the specified class only or from derived classes as well; otherwise, <see langword='false'/> .</param>
+            <param name=' enumerateDeep'><see langword='true'/> to specify recursive enumeration in subclasses; otherwise, <see langword='false'/> .</param>
+        </member>
+        <member name="M:System.Management.EnumerationOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.EventWatcherOptions">
+             <summary>
+                <para> Specifies options for management event watching.</para>
+                <para>Use this class to customize subscriptions for watching management events. </para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to listen to an event using ManagementEventWatcher object.
+             class Sample_EventWatcherOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass newClass = new ManagementClass();
+                     newClass["__CLASS"] = "TestDeletionClass";
+                     newClass.Put();
+            
+                     EventWatcherOptions options = new EventWatcherOptions();
+                     ManagementEventWatcher watcher = new ManagementEventWatcher(null,
+                                                                                 new WqlEventQuery("__classdeletionevent"),
+                                                                                 options);
+                     MyHandler handler = new MyHandler();
+                     watcher.EventArrived += new EventArrivedEventHandler(handler.Arrived);
+                     watcher.Start();
+            
+                     // Delete class to trigger event
+                     newClass.Delete();
+            
+                     //For the purpose of this example, we will wait
+                     // two seconds before main thread terminates.
+                     System.Threading.Thread.Sleep(2000);
+            
+                     watcher.Stop();
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler
+                 {
+                    public void Arrived(object sender, EventArrivedEventArgs e) {
+                        Console.WriteLine("Class Deleted= " +
+                            ((ManagementBaseObject)e.NewEvent["TargetClass"])["__CLASS"]);
+                    }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to listen to an event using the ManagementEventWatcher object.
+             Class Sample_EventWatcherOptions
+                 Public Shared Sub Main()
+                     Dim newClass As New ManagementClass()
+                     newClass("__CLASS") = "TestDeletionClass"
+                     newClass.Put()
+            
+                     Dim options As _
+                         New EventWatcherOptions()
+                     Dim watcher As New ManagementEventWatcher( _
+                         Nothing, _
+                         New WqlEventQuery("__classdeletionevent"), _
+                         options)
+                     Dim handler As New MyHandler()
+                     AddHandler watcher.EventArrived, AddressOf handler.Arrived
+                     watcher.Start()
+            
+                     ' Delete class to trigger event
+                     newClass.Delete()
+            
+                     ' For the purpose of this example, we will wait
+                     ' two seconds before main thread terminates.
+                     System.Threading.Thread.Sleep(2000)
+                     watcher.Stop()
+                 End Sub
+            
+                 Public Class MyHandler
+                     Public Sub Arrived(sender As Object, e As EventArrivedEventArgs)
+                         Console.WriteLine("Class Deleted = " &amp; _
+                             CType(e.NewEvent("TargetClass"), ManagementBaseObject)("__CLASS"))
+                     End Sub
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.EventWatcherOptions.BlockSize">
+            <summary>
+               <para>Gets or sets the block size for block operations. When waiting for events, this
+                  value specifies how many events to wait for before returning.</para>
+            </summary>
+            <value>
+               <para>The default value is 1.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.EventWatcherOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EventWatcherOptions'/> class. </para>
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.EventWatcherOptions'/> class for event watching, using default values.
+               This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.EventWatcherOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan,System.Int32)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.EventWatcherOptions'/> class with the given
+               values.</para>
+            </summary>
+            <param name='context'>The options context object containing provider-specific information to be passed through to the provider. </param>
+            <param name=' timeout'>The timeout to wait for the next events.</param>
+            <param name=' blockSize'>The number of events to wait for in each block.</param>
+        </member>
+        <member name="M:System.Management.EventWatcherOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="T:System.Management.ObjectGetOptions">
+             <summary>
+                <para> Specifies options for getting a management object.</para>
+                Use this class to customize retrieval of a management object.
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to set a timeout value and list
+             // all amended qualifiers in a ManagementClass object.
+             class Sample_ObjectGetOptions
+             {
+                 public static int Main(string[] args) {
+                     // Request amended qualifiers
+                     ObjectGetOptions options =
+                         new ObjectGetOptions(null, new TimeSpan(0,0,0,5), true);
+                     ManagementClass diskClass =
+                         new ManagementClass("root/cimv2", "Win32_Process", options);
+                     foreach (QualifierData qualifier in diskClass.Qualifiers) {
+                         Console.WriteLine(qualifier.Name + ":" + qualifier.Value);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to set a timeout value and list
+             ' all amended qualifiers in a ManagementClass object.
+             Class Sample_ObjectGetOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     ' Request amended qualifiers
+                     Dim options As _
+                         New ObjectGetOptions(Nothing, New TimeSpan(0, 0, 0, 5), True)
+                     Dim diskClass As New ManagementClass( _
+                         "root/cimv2", _
+                         "Win32_Process", _
+                         options)
+                     Dim qualifier As QualifierData
+                     For Each qualifier In diskClass.Qualifiers
+                         Console.WriteLine(qualifier.Name &amp; ":" &amp; qualifier.Value)
+                     Next qualifier
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ObjectGetOptions.UseAmendedQualifiers">
+            <summary>
+               <para> Gets or sets a value indicating whether the objects returned from WMI should
+                  contain amended information. Typically, amended information is localizable information
+                  attached to the WMI object, such as object and property descriptions.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the objects returned from WMI
+               should contain amended information; otherwise, <see langword='false'/>. The
+               default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ObjectGetOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectGetOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectGetOptions'/> class for getting a WMI object, using
+               default values. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ObjectGetOptions.#ctor(System.Management.ManagementNamedValueCollection)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectGetOptions'/> class for getting a WMI object, using the
+               specified provider-specific context.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs context object to be passed through to the provider.</param>
+        </member>
+        <member name="M:System.Management.ObjectGetOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan,System.Boolean)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectGetOptions'/> class for getting a WMI object,
+               using the given options values.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs context object to be passed through to the provider.</param>
+            <param name=' timeout'>The length of time to let the operation perform before it times out. The default is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/> .</param>
+            <param name=' useAmendedQualifiers'><see langword='true'/> if the returned objects should contain amended (locale-aware) qualifiers; otherwise, <see langword='false'/>. </param>
+        </member>
+        <member name="M:System.Management.ObjectGetOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.PutOptions">
+             <summary>
+                <para> Specifies options for committing management
+                   object changes.</para>
+                <para>Use this class to customize how values are saved to a management object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to specify a PutOptions using
+             // PutOptions object when saving a ManagementClass object to
+             // the WMI respository.
+             class Sample_PutOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass newClass = new ManagementClass("root/default",
+                                                                    String.Empty,
+                                                                    null);
+                     newClass["__Class"] = "class999xc";
+            
+                     PutOptions options = new PutOptions();
+                     options.Type = PutType.UpdateOnly;
+            
+                     try
+                     {
+                         newClass.Put(options); //will fail if the class doesn't already exist
+                     }
+                     catch (ManagementException e)
+                     {
+                         Console.WriteLine("Couldn't update class: " + e.ErrorCode);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to specify a PutOptions using
+             ' PutOptions object when saving a ManagementClass object to
+             ' WMI respository.
+             Class Sample_PutOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim newClass As New ManagementClass( _
+                        "root/default", _
+                        String.Empty, _
+                        Nothing)
+                     newClass("__Class") = "class999xc"
+            
+                     Dim options As New PutOptions()
+                     options.Type = PutType.UpdateOnly 'will fail if the class doesn't already exist
+            
+                     Try
+                         newClass.Put(options)
+                     Catch e As ManagementException
+                         Console.WriteLine("Couldn't update class: " &amp; e.ErrorCode)
+                     End Try
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.PutOptions.UseAmendedQualifiers">
+            <summary>
+               <para> Gets or sets a value indicating whether the objects returned from WMI should
+                  contain amended information. Typically, amended information is localizable information
+                  attached to the WMI object, such as object and property descriptions.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the objects returned from WMI
+               should contain amended information; otherwise, <see langword='false'/>. The
+               default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PutOptions.Type">
+            <summary>
+               <para>Gets or sets the type of commit to be performed for the object.</para>
+            </summary>
+            <value>
+            <para>The default value is <see cref='F:System.Management.PutType.UpdateOrCreate'/>.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.PutOptions.#ctor">
+            <overload>
+            <para> Initializes a new instance of the <see cref='T:System.Management.PutOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.PutOptions'/> class for put operations, using default values.
+               This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.PutOptions.#ctor(System.Management.ManagementNamedValueCollection)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.PutOptions'/> class for committing a WMI object, using the
+               specified provider-specific context.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs context object to be passed through to the provider.</param>
+        </member>
+        <member name="M:System.Management.PutOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan,System.Boolean,System.Management.PutType)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.PutOptions'/> class for committing a WMI object, using
+               the specified option values.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs object to be passed through to the provider. </param>
+            <param name=' timeout'>The length of time to let the operation perform before it times out. The default is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/> .</param>
+            <param name=' useAmendedQualifiers'><see langword='true'/> if the returned objects should contain amended (locale-aware) qualifiers; otherwise, <see langword='false'/>. </param>
+            <param name=' putType'> The type of commit to be performed (update or create).</param>
+        </member>
+        <member name="M:System.Management.PutOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.DeleteOptions">
+             <summary>
+                <para> Specifies options for deleting a management
+                   object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to specify a timeout value
+             // when deleting a ManagementClass object.
+             class Sample_DeleteOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass newClass = new ManagementClass();
+                     newClass["__CLASS"] = "ClassToDelete";
+                     newClass.Put();
+            
+                     // Set deletion options: delete operation timeout value
+                     DeleteOptions opt = new DeleteOptions(null, new TimeSpan(0,0,0,5));
+            
+                     ManagementClass dummyClassToDelete =
+                         new ManagementClass("ClassToDelete");
+                     dummyClassToDelete.Delete(opt);
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to specify a timeout value
+             ' when deleting a ManagementClass object.
+             Class Sample_DeleteOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim newClass As New ManagementClass()
+                     newClass("__CLASS") = "ClassToDelete"
+                     newClass.Put()
+            
+                     ' Set deletion options: delete operation timeout value
+                     Dim opt As New DeleteOptions(Nothing, New TimeSpan(0, 0, 0, 5))
+            
+                     Dim dummyClassToDelete As New ManagementClass("ClassToDelete")
+                     dummyClassToDelete.Delete(opt)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.DeleteOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.DeleteOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.DeleteOptions'/> class for the delete operation, using default values.
+               This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.DeleteOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.DeleteOptions'/> class for a delete operation, using
+               the specified values.</para>
+            </summary>
+            <param name='context'>A provider-specific, named-value pairs object to be passed through to the provider. </param>
+            <param name='timeout'>The length of time to let the operation perform before it times out. The default value is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/> . Setting this parameter will invoke the operation semisynchronously.</param>
+        </member>
+        <member name="M:System.Management.DeleteOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>A cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.InvokeMethodOptions">
+             <summary>
+                <para> Specifies options for invoking a management method.</para>
+                <para>Use this class to customize the execution of a method on a management
+                   object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to stop a system service.
+             class Sample_InvokeMethodOptions
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject service =
+                         new ManagementObject("win32_service=\"winmgmt\"");
+                     InvokeMethodOptions options = new InvokeMethodOptions();
+                     options.Timeout = new TimeSpan(0,0,0,5);
+            
+                     ManagementBaseObject outParams = service.InvokeMethod("StopService", null, options);
+            
+                     Console.WriteLine("Return Status = " + outParams["ReturnValue"]);
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to stop a system service.
+             Class Sample_InvokeMethodOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim service As New ManagementObject("win32_service=""winmgmt""")
+                     Dim options As New InvokeMethodOptions()
+                     options.Timeout = New TimeSpan(0, 0, 0, 5)
+            
+                     Dim outParams As ManagementBaseObject = service.InvokeMethod( _
+                         "StopService", _
+                         Nothing, _
+                         options)
+            
+                     Console.WriteLine("Return Status = " &amp; _
+                         outParams("ReturnValue").ToString())
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.InvokeMethodOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.InvokeMethodOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.InvokeMethodOptions'/> class for the <see cref='M:System.Management.ManagementObject.InvokeMethod(System.String,System.Management.ManagementBaseObject,System.Management.InvokeMethodOptions)'/> operation, using default values.
+               This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.InvokeMethodOptions.#ctor(System.Management.ManagementNamedValueCollection,System.TimeSpan)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.InvokeMethodOptions'/> class for an invoke operation using
+               the specified values.</para>
+            </summary>
+            <param name=' context'>A provider-specific, named-value pairs object to be passed through to the provider. </param>
+            <param name='timeout'>The length of time to let the operation perform before it times out. The default value is <see cref='F:System.Management.ManagementOptions.InfiniteTimeout'/> . Setting this parameter will invoke the operation semisynchronously.</param>
+        </member>
+        <member name="M:System.Management.InvokeMethodOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.ConnectionOptions">
+             <summary>
+                <para> Specifies all settings required to make a WMI connection.</para>
+                <para>Use this class to customize a connection to WMI made via a
+                   ManagementScope object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example demonstrates how to connect to remote machine
+             // using supplied credentials.
+             class Sample_ConnectionOptions
+             {
+                 public static int Main(string[] args) {
+                     ConnectionOptions options = new ConnectionOptions();
+                     options.Username = "domain\\username";
+                     options.Password = "password";
+                     ManagementScope scope = new ManagementScope(
+                         "\\\\servername\\root\\cimv2",
+                         options);
+                     try {
+                         scope.Connect();
+                         ManagementObject disk = new ManagementObject(
+                             scope,
+                             new ManagementPath("Win32_logicaldisk='c:'"),
+                             null);
+                         disk.Get();
+                     }
+                     catch (Exception e) {
+                         Console.WriteLine("Failed to connect: " + e.Message);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example demonstrates how to connect to remote machine
+             ' using supplied credentials.
+             Class Sample_ConnectionOptions
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim options As New ConnectionOptions()
+                     options.Username = "domain\username"
+                     options.Password = "password"
+                     Dim scope As New ManagementScope("\\servername\root\cimv2", options)
+                     Try
+                         scope.Connect()
+                         Dim disk As New ManagementObject(scope, _
+                             New ManagementPath("Win32_logicaldisk='c:'"), Nothing)
+                         disk.Get()
+                     Catch e As UnauthorizedAccessException
+                         Console.WriteLine(("Failed to connect: " + e.Message))
+                     End Try
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Locale">
+            <summary>
+               <para>Gets or sets the locale to be used for the connection operation.</para>
+            </summary>
+            <value>
+               <para>The default value is DEFAULTLOCALE.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Username">
+            <summary>
+               <para>Gets or sets the user name to be used for the connection operation.</para>
+            </summary>
+            <value>
+               <para>Null if the connection will use the currently logged-on user; otherwise, a string representing the user name. The default value is null.</para>
+            </value>
+            <remarks>
+               <para>If the user name is from a domain other than the current
+                  domain, the string may contain the domain name and user name, separated by a backslash:</para>
+               <c>
+                  <para>string username = "EnterDomainHere\\EnterUsernameHere";</para>
+               </c>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Password">
+            <summary>
+               <para>Sets the password for the specified user. The value can be set, but not retrieved.</para>
+            </summary>
+            <value>
+               <para> The default value is null. If the user name is also
+                  null, the credentials used will be those of the currently logged-on user.</para>
+            </value>
+            <remarks>
+               <para> A blank string ("") specifies a valid
+                  zero-length password.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.SecurePassword">
+            <summary>
+               <para>Sets the secure password for the specified user. The value can be set, but not retrieved.</para>
+            </summary>
+            <value>
+               <para> The default value is null. If the user name is also
+                  null, the credentials used will be those of the currently logged-on user.</para>
+            </value>
+            <remarks>
+               <para> A blank securestring ("") specifies a valid
+                  zero-length password.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Authority">
+            <summary>
+               <para>Gets or sets the authority to be used to authenticate the specified user.</para>
+            </summary>
+            <value>
+               <para>If not null, this property can contain the name of the
+                  Windows NT/Windows 2000 domain in which to obtain the user to
+                  authenticate.</para>
+            </value>
+            <remarks>
+               <para>
+                  The property must be passed
+                  as follows: If it begins with the string "Kerberos:", Kerberos
+                  authentication will be used and this property should contain a Kerberos principal name. For
+                  example, Kerberos:&lt;principal name&gt;.</para>
+               <para>If the property value begins with the string "NTLMDOMAIN:", NTLM
+                  authentication will be used and the property should contain a NTLM domain name.
+                  For example, NTLMDOMAIN:&lt;domain name&gt;. </para>
+               <para>If the property is null, NTLM authentication will be used and the NTLM domain
+                  of the current user will be used.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Impersonation">
+            <summary>
+               <para>Gets or sets the COM impersonation level to be used for operations in this connection.</para>
+            </summary>
+            <value>
+               <para>The COM impersonation level to be used for operations in
+                  this connection. The default value is <see cref='F:System.Management.ImpersonationLevel.Impersonate' qualify='true'/>, which indicates that the WMI provider can
+                  impersonate the client when performing the requested operations in this connection.</para>
+            </value>
+            <remarks>
+            <para>The <see cref='F:System.Management.ImpersonationLevel.Impersonate' qualify='true'/> setting is advantageous when the provider is
+               a trusted application or service. It eliminates the need for the provider to
+               perform client identity and access checks for the requested operations. However,
+               note that if for some reason the provider cannot be trusted, allowing it to
+               impersonate the client may constitute a security threat. In such cases, it is
+               recommended that this property be set by the client to a lower value, such as
+            <see cref='F:System.Management.ImpersonationLevel.Identify' qualify='true'/>. Note that this may cause failure of the
+               provider to perform the requested operations, for lack of sufficient permissions
+               or inability to perform access checks.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.Authentication">
+            <summary>
+               <para>Gets or sets the COM authentication level to be used for operations in this connection.</para>
+            </summary>
+            <value>
+               <para>The COM authentication level to be used for operations
+                  in this connection. The default value is <see cref='F:System.Management.AuthenticationLevel.Unchanged' qualify='true'/>, which indicates that the
+                  client will use the authentication level requested by the server, according to
+                  the standard DCOM negotiation process.</para>
+            </value>
+            <remarks>
+               <para>On Windows 2000 and below, the WMI service will request
+                  Connect level authentication, while on Windows XP and higher it will request
+                  Packet level authentication. If the client requires a specific authentication
+                  setting, this property can be used to control the authentication level on this
+                  particular connection. For example, the property can be set to <see cref='F:System.Management.AuthenticationLevel.PacketPrivacy' qualify='true'/>
+                  if the
+                  client requires all communication to be encrypted.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.ConnectionOptions.EnablePrivileges">
+            <summary>
+               <para>Gets or sets a value indicating whether user privileges need to be enabled for
+                  the connection operation. This property should only be used when the operation
+                  performed requires a certain user privilege to be enabled
+                  (for example, a machine reboot).</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if user privileges need to be
+               enabled for the connection operation; otherwise, <see langword='false'/>. The
+               default value is <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ConnectionOptions.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ConnectionOptions'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ConnectionOptions'/> class for the connection operation, using default values. This is the
+               default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ConnectionOptions.#ctor(System.String,System.String,System.String,System.String,System.Management.ImpersonationLevel,System.Management.AuthenticationLevel,System.Boolean,System.Management.ManagementNamedValueCollection,System.TimeSpan)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ConnectionOptions'/> class to be used for a WMI
+               connection, using the specified values.</para>
+            </summary>
+            <param name='locale'>The locale to be used for the connection.</param>
+            <param name=' username'>The user name to be used for the connection. If null, the credentials of the currently logged-on user are used.</param>
+            <param name=' password'>The password for the given user name. If the user name is also null, the credentials used will be those of the currently logged-on user.</param>
+            <param name=' authority'><para>The authority to be used to authenticate the specified user.</para></param>
+            <param name=' impersonation'>The COM impersonation level to be used for the connection.</param>
+            <param name=' authentication'>The COM authentication level to be used for the connection.</param>
+            <param name=' enablePrivileges'><see langword='true'/>to enable special user privileges; otherwise, <see langword='false'/> . This parameter should only be used when performing an operation that requires special Windows NT user privileges.</param>
+            <param name=' context'>A provider-specific, named value pairs object to be passed through to the provider.</param>
+            <param name=' timeout'>Reserved for future use.</param>
+        </member>
+        <member name="M:System.Management.ConnectionOptions.#ctor(System.String,System.String,System.Security.SecureString,System.String,System.Management.ImpersonationLevel,System.Management.AuthenticationLevel,System.Boolean,System.Management.ManagementNamedValueCollection,System.TimeSpan)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ConnectionOptions'/> class to be used for a WMI
+               connection, using the specified values.</para>
+            </summary>
+            <param name='locale'>The locale to be used for the connection.</param>
+            <param name='username'>The user name to be used for the connection. If null, the credentials of the currently logged-on user are used.</param>
+            <param name='password'>The secure password for the given user name. If the user name is also null, the credentials used will be those of the currently logged-on user.</param>
+            <param name='authority'><para>The authority to be used to authenticate the specified user.</para></param>
+            <param name='impersonation'>The COM impersonation level to be used for the connection.</param>
+            <param name='authentication'>The COM authentication level to be used for the connection.</param>
+            <param name='enablePrivileges'><see langword='true'/>to enable special user privileges; otherwise, <see langword='false'/> . This parameter should only be used when performing an operation that requires special Windows NT user privileges.</param>
+            <param name='context'>A provider-specific, named value pairs object to be passed through to the provider.</param>
+            <param name='timeout'>Reserved for future use.</param>
+        </member>
+        <member name="M:System.Management.ConnectionOptions.Clone">
+            <summary>
+               <para> Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               <para>The cloned object.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.ManagementPath">
+             <summary>
+                <para>Provides a wrapper for parsing and building paths to WMI objects.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample displays all properties in a ManagementPath object.
+            
+             class Sample_ManagementPath
+             {
+                 public static int Main(string[] args) {
+                     ManagementPath path = new ManagementPath( "\\\\MyServer\\MyNamespace:Win32_logicaldisk='c:'");
+            
+                     // Results of full path parsing
+                     Console.WriteLine("Path: " + path.Path);
+                     Console.WriteLine("RelativePath: " + path.RelativePath);
+                     Console.WriteLine("Server: " + path.Server);
+                     Console.WriteLine("NamespacePath: " + path.NamespacePath);
+                     Console.WriteLine("ClassName: " + path.ClassName);
+                     Console.WriteLine("IsClass: " + path.IsClass);
+                     Console.WriteLine("IsInstance: " + path.IsInstance);
+                     Console.WriteLine("IsSingleton: " + path.IsSingleton);
+            
+                     // Change a portion of the full path
+                     path.Server = "AnotherServer";
+                     Console.WriteLine("New Path: " + path.Path);
+                     return 0;
+                }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             'This sample displays all properties in a ManagementPath object.
+             Class Sample_ManagementPath Overloads
+                 Public Shared Function Main(args() As String) As Integer
+                     Dim path As _ New
+                     ManagementPath("\\MyServer\MyNamespace:Win32_LogicalDisk='c:'")
+            
+                     ' Results of full path parsing
+                     Console.WriteLine("Path: " &amp; path.Path)
+                     Console.WriteLine("RelativePath: " &amp; path.RelativePath)
+                     Console.WriteLine("Server: " &amp; path.Server)
+                     Console.WriteLine("NamespacePath: " &amp; path.NamespacePath)
+                     Console.WriteLine("ClassName: " &amp; path.ClassName)
+                     Console.WriteLine("IsClass: " &amp; path.IsClass)
+                     Console.WriteLine("IsInstance: " &amp; path.IsInstance)
+                     Console.WriteLine("IsSingleton: " &amp; path.IsSingleton)
+            
+                     ' Change a portion of the full path
+                     path.Server= "AnotherServer"
+                     Console.WriteLine("New Path: " &amp; path.Path)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ManagementPath.GetManagementPath(System.Management.IWbemClassObjectFreeThreaded)">
+            <summary>
+            Internal static "factory" method for making a new ManagementPath
+            from the system property of a WMI object
+            </summary>
+            <param name="wbemObject">The WMI object whose __PATH property will
+            be used to supply the returned object</param>
+        </member>
+        <member name="M:System.Management.ManagementPath.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.ManagementPath'/> class.
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ManagementPath'/> class that is empty. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementPath.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementPath'/> class for the given path.</para>
+            </summary>
+            <param name='path'> The object path. </param>
+        </member>
+        <member name="M:System.Management.ManagementPath.ToString">
+            <summary>
+               <para>Returns the full object path as the string representation.</para>
+            </summary>
+            <returns>
+               A string containing the full object
+               path represented by this object. This value is equivalent to the value of the
+            <see cref='P:System.Management.ManagementPath.Path'/> property.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementPath.Clone">
+            <summary>
+            <para>Returns a copy of the <see cref='T:System.Management.ManagementPath'/>.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementPath.System#ICloneable#Clone">
+            <summary>
+            Standard Clone returns a copy of this ManagementPath as a generic "Object" type
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="P:System.Management.ManagementPath.DefaultPath">
+            <summary>
+               <para>Gets or sets the default scope path used when no scope is specified.
+                  The default scope is /-/ \\.\root\cimv2, and can be changed by setting this property.</para>
+            </summary>
+            <value>
+               <para>By default the scope value is /-/ \\.\root\cimv2, or a different scope path if
+                  the default was changed.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementPath.SetAsClass">
+            <summary>
+               <para> Sets the path as a new class path. This means that the path must have
+                  a class name but not key values.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementPath.SetAsSingleton">
+            <summary>
+               <para> Sets the path as a new singleton object path. This means that it is a path to an instance but
+                  there are no key values.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementPath.Path">
+            <summary>
+               <para> Gets or sets the string representation of the full path in the object.</para>
+            </summary>
+            <value>
+               <para>A string containing the full path
+                  represented in this object.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.RelativePath">
+            <summary>
+               <para> Gets or sets the relative path: class name and keys only.</para>
+            </summary>
+            <value>
+               A string containing the relative
+               path (not including the server and namespace portions) represented in this
+               object.
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.Server">
+            <summary>
+               <para>Gets or sets the server part of the path.</para>
+            </summary>
+            <value>
+               A string containing the server name
+               from the path represented in this object.
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.NamespacePath">
+            <summary>
+               <para>Gets or sets the namespace part of the path. Note that this does not include
+                  the server name, which can be retrieved separately.</para>
+            </summary>
+            <value>
+               A string containing the namespace
+               portion of the path represented in this object.
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.ClassName">
+            <summary>
+               Gets or sets the class portion of the path.
+            </summary>
+            <value>
+               A string containing the name of the
+               class.
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.IsClass">
+            <summary>
+               <para>Gets or sets a value indicating whether this is a class path.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this is a class path; otherwise,
+            <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.IsInstance">
+            <summary>
+               <para>Gets or sets a value indicating whether this is an instance path.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this is an instance path; otherwise,
+            <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementPath.IsSingleton">
+            <summary>
+               <para>Gets or sets a value indicating whether this is a singleton instance path.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this is a singleton instance path; otherwise,
+            <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.ManagementPathConverter">
+            <summary>
+            Converts a String to a ManagementPath
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementPathConverter.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Determines if this converter can convert an object in the given source type to the native type of the converter.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='sourceType'>A Type that represents the type you wish to convert from.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementPathConverter.CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Gets a value indicating whether this converter can convert an object to the given destination type using the context.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='destinationType'>A Type that represents the type you wish to convert to.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementPathConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
+            <summary>
+                 Converts the given object to another type.  The most common types to convert
+                 are to and from a string object.  The default implementation will make a call
+                 to ToString on the object if the object is valid and if the destination
+                 type is string.  If this cannot convert to the desitnation type, this will
+                 throw a NotSupportedException.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='culture'>A CultureInfo object. If a null reference (Nothing in Visual Basic) is passed, the current culture is assumed.</param>
+            <param name='value'>The Object to convert.</param>
+            <param name='destinationType'>The Type to convert the value parameter to.</param>
+            <returns>An Object that represents the converted value.</returns>
+        </member>
+        <member name="T:System.Management.ManagementQuery">
+            <summary>
+               <para> Provides an abstract base class for all management query objects.</para>
+            </summary>
+            <remarks>
+               <para> This class is abstract; only
+                  derivatives of it are actually used in the API.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="P:System.Management.ManagementQuery.QueryString">
+            <summary>
+               <para>Gets or sets the query in text format.</para>
+            </summary>
+            <value>
+               <para> If the query object is
+                  constructed with no parameters, the property is null until specifically set. If the
+                  object was constructed with a specified query, the property returns the specified
+                  query string.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.ManagementQuery.QueryLanguage">
+            <summary>
+               <para> Gets or sets the query language used in the query
+                  string, defining the format of the query string.</para>
+            </summary>
+            <value>
+               <para>Can be set to any supported query
+                  language. "WQL" is the only value supported intrinsically by WMI.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.ManagementQuery.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="T:System.Management.ObjectQuery">
+             <summary>
+                <para> Represents a management query that returns instances or classes.</para>
+             </summary>
+             <remarks>
+                <para>This class or its derivatives are used to specify a
+                   query in the <see cref='T:System.Management.ManagementObjectSearcher'/>. Use
+                   a more specific query class whenever possible.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates creating a query.
+            
+             class Sample_ObjectQuery
+             {
+                 public static int Main(string[] args)
+                 {
+                     ObjectQuery objectQuery = new ObjectQuery("select * from Win32_Share");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(objectQuery);
+                     foreach (ManagementObject share in searcher.Get())
+                     {
+                         Console.WriteLine("Share = " + share["Name"]);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates creating a query.
+            
+             Class Sample_ObjectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim objectQuery As New ObjectQuery("select * from Win32_Share")
+                     Dim searcher As New ManagementObjectSearcher(objectQuery)
+                     Dim share As ManagementObject
+                     For Each share In searcher.Get()
+                         Console.WriteLine("Share = " &amp; share("Name"))
+                     Next share
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.ObjectQuery.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ObjectQuery'/>
+            class.</para>
+            </overload>
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ObjectQuery'/>
+            class with no initialized values. This
+            is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ObjectQuery.#ctor(System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ObjectQuery'/>
+            class
+            for a specific query string.</para>
+            </summary>
+            <param name='query'>The string representation of the query.</param>
+        </member>
+        <member name="M:System.Management.ObjectQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.ObjectQuery'/>
+            class for a specific
+            query string and language.</para>
+            </summary>
+            <param name='language'>The query language in which this query is specified.</param>
+            <param name=' query'>The string representation of the query.</param>
+        </member>
+        <member name="M:System.Management.ObjectQuery.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="T:System.Management.EventQuery">
+             <summary>
+                <para> Represents a WMI event query.</para>
+             </summary>
+             <remarks>
+                <para> Objects of this class or its derivatives are used in
+                <see cref='T:System.Management.ManagementEventWatcher'/> to subscribe to
+                   WMI events. Use more specific derivatives of this class whenever possible.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to subscribe to an event
+             // using the EventQuery object.
+            
+             class Sample_EventQuery
+             {
+                 public static int Main(string[] args)
+                 {
+                     //For this example, we make sure we have an arbitrary class on root\default
+                     ManagementClass newClass = new ManagementClass(
+                         "root\\default",
+                         String.Empty,
+                         null);
+                     newClass["__Class"] = "TestWql";
+                     newClass.Put();
+            
+                     //Create a query object for watching for class deletion events
+                     EventQuery eventQuery = new EventQuery("select * from __classdeletionevent");
+            
+                     //Initialize an event watcher object with this query
+                     ManagementEventWatcher watcher = new ManagementEventWatcher(
+                         new ManagementScope("root/default"),
+                         eventQuery);
+            
+                     //Set up a handler for incoming events
+                     MyHandler handler = new MyHandler();
+                     watcher.EventArrived += new EventArrivedEventHandler(handler.Arrived);
+            
+                     //Start watching for events
+                     watcher.Start();
+            
+                     //For this example, we delete the class to trigger an event
+                     newClass.Delete();
+            
+                     //Nothing better to do - we loop to wait for an event to arrive.
+                     while (!handler.IsArrived) {
+                          System.Threading.Thread.Sleep(1000);
+                     }
+            
+                     //In this example we only want to wait for one event, so we can stop watching
+                     watcher.Stop();
+            
+                     //Get some values from the event.
+                     //Note: this can also be done in the event handler.
+                     ManagementBaseObject eventArg =
+                         (ManagementBaseObject)(handler.ReturnedArgs.NewEvent["TargetClass"]);
+                     Console.WriteLine("Class Deleted = " + eventArg["__CLASS"]);
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler
+                 {
+                     private bool isArrived = false;
+                     private EventArrivedEventArgs args;
+            
+                     //Handles the event when it arrives
+                     public void Arrived(object sender, EventArrivedEventArgs e) {
+                         args = e;
+                         isArrived = true;
+                     }
+            
+                     //Public property to get at the event information stored in the handler
+                     public EventArrivedEventArgs ReturnedArgs {
+                         get {
+                             return args;
+                         }
+                     }
+            
+                     //Used to determine whether the event has arrived or not.
+                     public bool IsArrived {
+                         get {
+                             return isArrived;
+                         }
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to subscribe an event
+             ' using the EventQuery object.
+            
+             Class Sample_EventQuery
+                 Public Shared Sub Main()
+            
+                     'For this example, we make sure we have an arbitrary class on root\default
+                     Dim newClass As New ManagementClass( _
+                         "root\default", _
+                         String.Empty, Nothing)
+                         newClass("__Class") = "TestWql"
+                         newClass.Put()
+            
+                     'Create a query object for watching for class deletion events
+                     Dim eventQuery As New EventQuery("select * from __classdeletionevent")
+            
+                     'Initialize an event watcher object with this query
+                     Dim watcher As New ManagementEventWatcher( _
+                         New ManagementScope("root/default"), _
+                         eventQuery)
+            
+                     'Set up a handler for incoming events
+                     Dim handler As New MyHandler()
+                     AddHandler watcher.EventArrived, AddressOf handler.Arrived
+            
+                     'Start watching for events
+                     watcher.Start()
+            
+                     'For this example, we delete the class to trigger an event
+                     newClass.Delete()
+            
+                     'Nothing better to do - we loop to wait for an event to arrive.
+                     While Not handler.IsArrived
+                         Console.Write("0")
+                         System.Threading.Thread.Sleep(1000)
+                     End While
+            
+                     'In this example we only want to wait for one event, so we can stop watching
+                     watcher.Stop()
+            
+                     'Get some values from the event
+                     'Note: this can also be done in the event handler.
+                     Dim eventArg As ManagementBaseObject = CType( _
+                         handler.ReturnedArgs.NewEvent("TargetClass"), _
+                         ManagementBaseObject)
+                     Console.WriteLine(("Class Deleted = " + eventArg("__CLASS")))
+            
+                 End Sub
+            
+                 Public Class MyHandler
+                     Private _isArrived As Boolean = False
+                     Private args As EventArrivedEventArgs
+            
+                     'Handles the event when it arrives
+                     Public Sub Arrived(sender As Object, e As EventArrivedEventArgs)
+                         args = e
+                         _isArrived = True
+                     End Sub
+            
+                     'Public property to get at the event information stored in the handler
+                     Public ReadOnly Property ReturnedArgs() As EventArrivedEventArgs
+                         Get
+                             Return args
+                         End Get
+                     End Property
+            
+                     'Used to determine whether the event has arrived or not.
+                     Public ReadOnly Property IsArrived() As Boolean
+                         Get
+                             Return _isArrived
+                         End Get
+                     End Property
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.EventQuery.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EventQuery'/>
+            class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.EventQuery'/>
+            class. This is the
+            default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.EventQuery.#ctor(System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.EventQuery'/>
+            class for the specified query.</para>
+            </summary>
+            <param name='query'>A textual representation of the event query.</param>
+        </member>
+        <member name="M:System.Management.EventQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.EventQuery'/>
+            class for the specified
+            language and query.</para>
+            </summary>
+            <param name='language'>The language in which the query string is specified. </param>
+            <param name=' query'>The string representation of the query.</param>
+        </member>
+        <member name="M:System.Management.EventQuery.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+               The cloned object.
+            </returns>
+        </member>
+        <member name="T:System.Management.WqlObjectQuery">
+             <summary>
+                <para> Represents a WMI data query in WQL format.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to use a WqlObjectQuery class to
+             // perform an object query.
+            
+             class Sample_WqlObjectQuery
+             {
+                 public static int Main(string[] args) {
+                     WqlObjectQuery objectQuery = new WqlObjectQuery("select * from Win32_Share");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(objectQuery);
+            
+                     foreach (ManagementObject share in searcher.Get()) {
+                         Console.WriteLine("Share = " + share["Name"]);
+                     }
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrate how to use a WqlObjectQuery class to
+             ' perform an object query.
+            
+             Class Sample_WqlObjectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim objectQuery As New WqlObjectQuery("select * from Win32_Share")
+                     Dim searcher As New ManagementObjectSearcher(objectQuery)
+            
+                     Dim share As ManagementObject
+                     For Each share In searcher.Get()
+                         Console.WriteLine("Share = " &amp; share("Name"))
+                     Next share
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.WqlObjectQuery.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.WqlObjectQuery'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.WqlObjectQuery'/> class. This is the
+               default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.WqlObjectQuery.#ctor(System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlObjectQuery'/> class initialized to the
+               specified query.</para>
+            </summary>
+            <param name='query'><para> The representation of the data query.</para></param>
+        </member>
+        <member name="P:System.Management.WqlObjectQuery.QueryLanguage">
+            <summary>
+               <para>Gets or sets the language of the query.</para>
+            </summary>
+            <value>
+               <para> The value of this
+                  property is always "WQL".</para>
+            </value>
+        </member>
+        <member name="M:System.Management.WqlObjectQuery.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.SelectQuery">
+             <summary>
+                <para> Represents a WQL SELECT data query.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to perform a WQL select query.
+            
+             class Sample_SelectQuery
+             {
+                 public static int Main(string[] args) {
+                     SelectQuery selectQuery = new SelectQuery("win32_logicaldisk");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(selectQuery);
+            
+                     foreach (ManagementObject disk in searcher.Get()) {
+                         Console.WriteLine(disk.ToString());
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to perform a WQL select query.
+            
+             Class Sample_SelectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim selectQuery As New SelectQuery("win32_logicaldisk")
+                     Dim searcher As New ManagementObjectSearcher(selectQuery)
+            
+                     Dim disk As ManagementObject
+                     For Each disk In  searcher.Get()
+                         Console.WriteLine(disk.ToString())
+                     Next disk
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor">
+            <overload>
+            <para>Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+            class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+            class. This is the
+            default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor(System.String)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/> class for the specified
+                query or the specified class name.</para>
+             </summary>
+             <param name='queryOrClassName'>The entire query or the class name to use in the query. The parser in this class attempts to parse the string as a valid WQL SELECT query. If the parser is unsuccessful, it assumes the string is a class name.</param>
+             <example>
+                <code lang='C#'>SelectQuery s = new SelectQuery("SELECT * FROM Win32_Service WHERE State='Stopped');
+            
+             or
+            
+             //This is equivalent to "SELECT * FROM Win32_Service"
+             SelectQuery s = new SelectQuery("Win32_Service");
+                </code>
+                <code lang='VB'>Dim s As New SelectQuery("SELECT * FROM Win32_Service WHERE State='Stopped')
+            
+             or
+            
+             //This is equivalent to "SELECT * FROM Win32_Service"
+             Dim s As New SelectQuery("Win32_Service")
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+            class with the specified
+            class name and condition.</para>
+            </summary>
+            <param name='className'>The name of the class to select in the query.</param>
+            <param name=' condition'>The condition to be applied in the query.</param>
+            <example>
+               <code lang='C#'>SelectQuery s = new SelectQuery("Win32_Process", "HandleID=1234");
+               </code>
+               <code lang='VB'>Dim s As New SelectQuery("Win32_Process", "HandleID=1234")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor(System.String,System.String,System.String[])">
+             <summary>
+             <para> Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+             class with the specified
+             class name and condition, selecting only the specified properties.</para>
+             </summary>
+             <param name='className'>The name of the class from which to select.</param>
+             <param name='condition'>The condition to be applied to instances of the selected class.</param>
+             <param name='selectedProperties'>An array of property names to be returned in the query results.</param>
+             <example>
+                <code lang='C#'>String[] properties = {"VariableName", "VariableValue"};
+            
+             SelectQuery s = new SelectQuery("Win32_Environment",
+                                             "User='&lt;system&gt;'",
+                                             properties);
+                </code>
+                <code lang='VB'>Dim properties As String[] = {"VariableName", "VariableValue"}
+            
+             Dim s As New SelectQuery("Win32_Environment", _
+                                      "User=""&lt;system&gt;""", _
+                                      properties)
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.SelectQuery.#ctor(System.Boolean,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.SelectQuery'/>
+            class for a schema query, optionally specifying a condition. For schema queries,
+            only the <paramref name="condition"/> parameter is valid.</para>
+            </summary>
+            <param name='isSchemaQuery'><see langword='true'/>to indicate that this is a schema query; otherwise, <see langword='false'/>. A <see langword='false'/> value is invalid in this constructor.</param>
+            <param name='condition'>The condition to be applied to form the result set of classes.</param>
+            <example>
+               <code lang='C#'>SelectQuery s = new SelectQuery(true, "__CLASS = 'Win32_Service'");
+               </code>
+               <code lang='VB'>Dim s As New SelectQuery(true, "__CLASS = ""Win32_Service""")
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.SelectQuery.QueryString">
+            <summary>
+            <para>Gets or sets the query in the <see cref='T:System.Management.SelectQuery'/>, in string form.</para>
+            </summary>
+            <value>
+               <para>A string representing the query.</para>
+            </value>
+            <remarks>
+               <para> Setting this
+                  property value overrides any previous value stored in the object. In addition, setting this
+                  property causes the other members of the object to be updated when the string
+                  is reparsed.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>SelectQuery s = new SelectQuery();
+            s.QueryString = "SELECT * FROM Win32_LogicalDisk";
+               </code>
+               <code lang='VB'>Dim s As New SelectQuery()
+            s.QueryString = "SELECT * FROM Win32_LogicalDisk"
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.SelectQuery.IsSchemaQuery">
+            <summary>
+               <para>Gets or sets a value indicating whether this query is a schema query or an instances query.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this query
+               should be evaluated over the schema; <see langword='false'/> if the query should
+               be evaluated over instances.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new query type.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.SelectQuery.ClassName">
+             <summary>
+                <para>Gets or sets the class name to be selected from in the query.</para>
+             </summary>
+             <value>
+                <para>A string representing the name of the
+                   class.</para>
+             </value>
+             <remarks>
+                <para> Setting this property value
+                   overrides any previous value stored in the object. The query string is
+                   rebuilt to reflect the new class name.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>SelectQuery s = new SelectQuery("SELECT * FROM Win32_LogicalDisk");
+             Console.WriteLine(s.QueryString); //output is : SELECT * FROM Win32_LogicalDisk
+            
+             s.ClassName = "Win32_Process";
+             Console.WriteLine(s.QueryString); //output is : SELECT * FROM Win32_Process
+                </code>
+                <code lang='VB'>Dim s As New SelectQuery("SELECT * FROM Win32_LogicalDisk")
+             Console.WriteLine(s.QueryString)  'output is : SELECT * FROM Win32_LogicalDisk
+            
+             s.ClassName = "Win32_Process"
+             Console.WriteLine(s.QueryString)  'output is : SELECT * FROM Win32_Process
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.SelectQuery.Condition">
+            <summary>
+               <para>Gets or sets the condition to be applied in the SELECT
+                  query.</para>
+            </summary>
+            <value>
+               A string containing the condition to
+               be applied in the SELECT query.
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value
+                  stored in the object. The query string is rebuilt to reflect the new
+                  condition.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.SelectQuery.SelectedProperties">
+            <summary>
+               <para> Gets or sets an array of property names to be
+                  selected in the query.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Collections.Specialized.StringCollection'/> containing the names of the
+               properties to be selected in the query.</para>
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value stored
+                  in the object. The query string is rebuilt to reflect the new
+                  properties.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.SelectQuery.BuildQuery">
+            <summary>
+             Builds the query string according to the current property values.
+            </summary>
+        </member>
+        <member name="M:System.Management.SelectQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="M:System.Management.SelectQuery.Clone">
+            <summary>
+               <para> Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.RelatedObjectQuery">
+             <summary>
+                <para> Represents a WQL ASSOCIATORS OF data query.
+                   It can be used for both instances and schema queries.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to query all instances associated
+             // with Win32_LogicalDisk='C:'.
+            
+             class Sample_RelatedObjectQuery
+             {
+                 public static int Main(string[] args) {
+            
+                     //This query requests all objects related to the 'C:' drive.
+                     RelatedObjectQuery relatedQuery =
+                         new RelatedObjectQuery("win32_logicaldisk='c:'");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(relatedQuery);
+            
+                     foreach (ManagementObject relatedObject in searcher.Get()) {
+                         Console.WriteLine(relatedObject.ToString());
+                     }
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to query all instances associated
+             ' with Win32_LogicalDisk='C:'.
+            
+             Class Sample_RelatedObjectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+            
+                     'This query requests all objects related to the 'C:' drive.
+                     Dim relatedQuery As New RelatedObjectQuery("win32_logicaldisk='c:'")
+                     Dim searcher As New ManagementObjectSearcher(relatedQuery)
+            
+                     Dim relatedObject As ManagementObject
+                     For Each relatedObject In  searcher.Get()
+                         Console.WriteLine(relatedObject.ToString())
+                     Next relatedObject
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.RelatedObjectQuery'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/> class. This is the
+               default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor(System.String)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/>class. If the specified string can be succesfully parsed as
+                a WQL query, it is considered to be the query string; otherwise, it is assumed to be the path of the source
+                object for the query. In this case, the query is assumed to be an instance query. </para>
+             </summary>
+             <param name='queryOrSourceObject'>The query string or the path of the source object.</param>
+             <example>
+                <code lang='C#'>//This query retrieves all objects related to the 'mymachine' computer system
+             //It specifies the full query string in the constructor
+             RelatedObjectQuery q =
+                 new RelatedObjectQuery("associators of {Win32_ComputerSystem.Name='mymachine'}");
+            
+             //or
+            
+             //This query retrieves all objects related to the 'Alerter' service
+             //It specifies only the object of interest in the constructor
+             RelatedObjectQuery q =
+                 new RelatedObjectQuery("Win32_Service.Name='Alerter'");
+                </code>
+                <code lang='VB'>'This query retrieves all objects related to the 'mymachine' computer system
+             'It specifies the full query string in the constructor
+             Dim q As New RelatedObjectQuery("associators of {Win32_ComputerSystem.Name='mymachine'}")
+            
+             'or
+            
+             'This query retrieves all objects related to the 'Alerter' service
+             'It specifies only the object of interest in the constructor
+             Dim q As New RelatedObjectQuery("Win32_Service.Name='Alerter'")
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/> class for the given source object and related class.
+               The query is assumed to be an instance query (as opposed to a schema query).</para>
+            </summary>
+            <param name='sourceObject'>The path of the source object for this query.</param>
+            <param name='relatedClass'>The related objects class.</param>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor(System.String,System.String,System.String,System.String,System.String,System.String,System.String,System.Boolean)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/> class for the given set of parameters.
+               The query is assumed to be an instance query (as opposed to a schema query).</para>
+            </summary>
+            <param name='sourceObject'>The path of the source object.</param>
+            <param name='relatedClass'>The related objects required class.</param>
+            <param name='relationshipClass'>The relationship type.</param>
+            <param name='relatedQualifier'>The qualifier required to be present on the related objects.</param>
+            <param name='relationshipQualifier'>The qualifier required to be present on the relationships.</param>
+            <param name='relatedRole'>The role that the related objects are required to play in the relationship.</param>
+            <param name='thisRole'>The role that the source object is required to play in the relationship.</param>
+            <param name='classDefinitionsOnly'><see langword='true'/>to return only the class definitions of the related objects; otherwise, <see langword='false'/> .</param>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.#ctor(System.Boolean,System.String,System.String,System.String,System.String,System.String,System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelatedObjectQuery'/> class for a schema query using the given set
+               of parameters. This constructor is used for schema queries only: the first
+               parameter must be set to <see langword='true'/>
+               .</para>
+            </summary>
+            <param name='isSchemaQuery'><see langword='true'/>to indicate that this is a schema query; otherwise, <see langword='false'/> .</param>
+            <param name='sourceObject'>The path of the source class.</param>
+            <param name='relatedClass'>The related objects' required base class.</param>
+            <param name='relationshipClass'>The relationship type.</param>
+            <param name='relatedQualifier'>The qualifier required to be present on the related objects.</param>
+            <param name='relationshipQualifier'>The qualifier required to be present on the relationships.</param>
+            <param name='relatedRole'>The role that the related objects are required to play in the relationship.</param>
+            <param name='thisRole'>The role that the source class is required to play in the relationship.</param>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.IsSchemaQuery">
+            <summary>
+               <para>Gets or sets a value indicating whether this is a schema query or an instance query.</para>
+            </summary>
+            <value>
+            <see langword='true'/> if this query
+               should be evaluated over the schema; <see langword='false'/> if the query should
+               be evaluated over instances.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new query type.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.SourceObject">
+            <summary>
+               <para> Gets or sets the source object to be used for the query. For instance
+                  queries, this is typically an instance path. For schema queries, this is typically a class name.</para>
+            </summary>
+            <value>
+               A string representing the path of the
+               object to be used for the query.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new source object.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelatedClass">
+            <summary>
+               <para>Gets or sets the class of the endpoint objects.</para>
+            </summary>
+            <value>
+               <para>A string containing the related class
+                  name.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new related class.</para>
+            </remarks>
+            <example>
+               <para>To find all the Win32 services available on a computer, this property is set
+                  to "Win32_Service" : </para>
+               <code lang='C#'>RelatedObjectQuery q = new RelatedObjectQuery("Win32_ComputerSystem='MySystem'");
+            q.RelatedClass = "Win32_Service";
+               </code>
+               <code lang='VB'>Dim q As New RelatedObjectQuery("Win32_ComputerSystem=""MySystem""")
+            q.RelatedClass = "Win32_Service"
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelationshipClass">
+            <summary>
+               <para>Gets or sets the type of relationship (association).</para>
+            </summary>
+            <value>
+               <para>A string containing the relationship
+                  class name.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new relationship class.</para>
+            </remarks>
+            <example>
+               <para>For example, for finding all the Win32 services dependent on
+                  a service, this property should be set to the "Win32_DependentService" association class: </para>
+               <code lang='C#'>RelatedObjectQuery q = new RelatedObjectQuery("Win32_Service='TCP/IP'");
+            q.RelationshipClass = "Win32_DependentService";
+               </code>
+               <code lang='VB'>Dim q As New RelatedObjectQuery("Win32_Service=""TCP/IP""")
+            q.RelationshipClass = "Win32_DependentService"
+               </code>
+            </example>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelatedQualifier">
+            <summary>
+               <para>Gets or sets a qualifier required to be defined on the related objects.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               qualifier required on the related objects.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new qualifier.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelationshipQualifier">
+            <summary>
+               <para>Gets or sets a qualifier required to be defined on the relationship objects.</para>
+            </summary>
+            <value>
+               <para>A string containing the name of the qualifier required
+                  on the relationship objects.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new qualifier.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.RelatedRole">
+            <summary>
+               <para>Gets or sets the role that the related objects returned should be playing in the relationship.</para>
+            </summary>
+            <value>
+               <para>A string containing the role of the
+                  related objects.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new role.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.ThisRole">
+            <summary>
+               <para>Gets or sets the role that the source object should be playing in the relationship.</para>
+            </summary>
+            <value>
+               <para>A string containing the role of this object.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new role.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelatedObjectQuery.ClassDefinitionsOnly">
+            <summary>
+               <para>Gets or sets a value indicating that for all instances that adhere to the query, only their class definitions be returned.
+                  This parameter is only valid for instance queries.</para>
+            </summary>
+            <value>
+            <see langword='true'/> if the query
+               requests only class definitions of the result set; otherwise,
+            <see langword='false'/>.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new flag.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.BuildQuery">
+            <summary>
+             Builds the query string according to the current property values.
+            </summary>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="M:System.Management.RelatedObjectQuery.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.RelationshipQuery">
+             <summary>
+                <para> Represents a WQL REFERENCES OF data query.</para>
+             </summary>
+             <example>
+                <para>The following example searches for all objects related to the
+                   'C:' drive object:</para>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             class Sample_RelationshipQuery
+             {
+                 public static int Main(string[] args) {
+                     RelationshipQuery query =
+                         new RelationshipQuery("references of {Win32_LogicalDisk.DeviceID='C:'}");
+                     ManagementObjectSearcher searcher =
+                         new ManagementObjectSearcher(query);
+            
+                     foreach (ManagementObject assoc in searcher.Get()) {
+                         Console.WriteLine("Association class = " + assoc["__CLASS"]);
+                     }
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             Class Sample_RelatedObjectQuery
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim query As New RelationshipQuery("references of {Win32_LogicalDisk.DeviceID='C:'}")
+                     Dim searcher As New ManagementObjectSearcher(query)
+                     Dim assoc As ManagementObject
+            
+                     For Each assoc In searcher.Get()
+                         Console.WriteLine("Association class = " &amp; assoc("__CLASS"))
+                     Next assoc
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.RelationshipQuery'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/> class. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor(System.String)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/>class. If the specified string can be succesfully parsed as
+                a WQL query, it is considered to be the query string; otherwise, it is assumed to be the path of the source
+                object for the query. In this case, the query is assumed to be an instances query. </para>
+             </summary>
+             <param name='queryOrSourceObject'>The query string or the class name for this query.</param>
+             <example>
+                <para>This example shows the two different ways to use this constructor:</para>
+                <code lang='C#'>//Full query string is specified to the constructor
+             RelationshipQuery q = new RelationshipQuery("references of {Win32_ComputerSystem.Name='mymachine'}");
+            
+             //Only the object of interest is specified to the constructor
+             RelationshipQuery q = new RelationshipQuery("Win32_Service.Name='Alerter'");
+                </code>
+                <code lang='VB'>'Full query string is specified to the constructor
+             Dim q As New RelationshipQuery("references of {Win32_ComputerSystem.Name='mymachine'}")
+            
+             'Only the object of interest is specified to the constructor
+             Dim q As New RelationshipQuery("Win32_Service.Name='Alerter'")
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/> class for the given source object and relationship class.
+               The query is assumed to be an instance query (as opposed to a schema query).</para>
+            </summary>
+            <param name='sourceObject'> The path of the source object for this query.</param>
+            <param name='relationshipClass'> The type of relationship for which to query.</param>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor(System.String,System.String,System.String,System.String,System.Boolean)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/> class for the given set of parameters.
+               The query is assumed to be an instance query (as opposed to a schema query).</para>
+            </summary>
+            <param name='sourceObject'> The path of the source object for this query.</param>
+            <param name='relationshipClass'> The type of relationship for which to query.</param>
+            <param name='relationshipQualifier'> A qualifier required to be present on the relationship object.</param>
+            <param name='thisRole'> The role that the source object is required to play in the relationship.</param>
+            <param name='classDefinitionsOnly'>When this method returns, it contains a boolean that indicates that only class definitions for the resulting objects are returned.</param>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.#ctor(System.Boolean,System.String,System.String,System.String,System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.RelationshipQuery'/> class for a schema query using the given set
+               of parameters. This constructor is used for schema queries only, so the first
+               parameter must be <see langword='true'/>
+               .</para>
+            </summary>
+            <param name='isSchemaQuery'><see langword='true'/>to indicate that this is a schema query; otherwise, <see langword='false'/> .</param>
+            <param name='sourceObject'> The path of the source class for this query.</param>
+            <param name='relationshipClass'> The type of relationship for which to query.</param>
+            <param name='relationshipQualifier'> A qualifier required to be present on the relationship class.</param>
+            <param name='thisRole'> The role that the source class is required to play in the relationship.</param>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.IsSchemaQuery">
+            <summary>
+               <para>Gets or sets a value indicating whether this query is a schema query or an instance query.</para>
+            </summary>
+            <value>
+            <see langword='true'/> if this query
+               should be evaluated over the schema; <see langword='false'/> if the query should
+               be evaluated over instances.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new query type.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.SourceObject">
+            <summary>
+               <para>Gets or sets the source object for this query.</para>
+            </summary>
+            <value>
+               A string representing the path of
+               the object to be used for the query.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new source object.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.RelationshipClass">
+            <summary>
+               <para>Gets or sets the class of the relationship objects wanted in the query.</para>
+            </summary>
+            <value>
+               A string containing the relationship
+               class name.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new class.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.RelationshipQualifier">
+            <summary>
+               <para>Gets or sets a qualifier required on the relationship objects.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               qualifier required on the relationship objects.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new qualifier.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.ThisRole">
+            <summary>
+               <para>Gets or sets the role of the source object in the relationship.</para>
+            </summary>
+            <value>
+               A string containing the role of this
+               object.
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any
+                  previous value stored in the object. The query string is
+                  rebuilt to reflect the new role.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.RelationshipQuery.ClassDefinitionsOnly">
+            <summary>
+               <para>Gets or sets a value indicating that only the class definitions of the relevant relationship objects be returned.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the query requests only class definitions of the
+               result set; otherwise, <see langword='false'/>.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any previous
+                  value stored in the object. As a side-effect, the query string is
+                  rebuilt to reflect the new flag.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.BuildQuery">
+            <summary>
+             Builds the query string according to the current property values.
+            </summary>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="M:System.Management.RelationshipQuery.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.WqlEventQuery">
+             <summary>
+                <para> Represents a WMI event query in WQL format.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to subscribe to an event
+             // using a WQL event query.
+            
+             class Sample_EventQuery
+             {
+                 public static int Main(string[] args)
+                 {
+                     //For this example, we make sure we have an arbitrary class on root\default
+                     ManagementClass newClass = new ManagementClass(
+                         "root\\default",
+                         String.Empty,
+                         null);
+                     newClass["__Class"] = "TestWql";
+                     newClass.Put();
+            
+                     //Create a query object for watching for class deletion events
+                     WqlEventQuery eventQuery = new WqlEventQuery("select * from __classdeletionevent");
+            
+                     //Initialize an event watcher object with this query
+                     ManagementEventWatcher watcher = new ManagementEventWatcher(
+                         new ManagementScope("root/default"),
+                         eventQuery);
+            
+                     //Set up a handler for incoming events
+                     MyHandler handler = new MyHandler();
+                     watcher.EventArrived += new EventArrivedEventHandler(handler.Arrived);
+            
+                     //Start watching for events
+                     watcher.Start();
+            
+                     //For this example, we delete the class to trigger an event
+                     newClass.Delete();
+            
+                     //Nothing better to do - we loop to wait for an event to arrive.
+                     while (!handler.IsArrived) {
+                          System.Threading.Thread.Sleep(1000);
+                     }
+            
+                     //In this example we only want to wait for one event, so we can stop watching
+                     watcher.Stop();
+            
+                     return 0;
+                 }
+            
+                 public class MyHandler
+                 {
+                     private bool isArrived = false;
+            
+                     //Handles the event when it arrives
+                     public void Arrived(object sender, EventArrivedEventArgs e) {
+                         ManagementBaseObject eventArg = (ManagementBaseObject)(e.NewEvent["TargetClass"]);
+                         Console.WriteLine("Class Deleted = " + eventArg["__CLASS"]);
+                         isArrived = true;
+                     }
+            
+                      //Used to determine whether the event has arrived or not.
+                     public bool IsArrived {
+                         get {
+                             return isArrived;
+                         }
+                     }
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to subscribe an event
+             ' using a WQL event query.
+            
+             Class Sample_EventQuery
+                 Public Shared Sub Main()
+            
+                     'For this example, we make sure we have an arbitrary class on root\default
+                     Dim newClass As New ManagementClass( _
+                         "root\default", _
+                         String.Empty, Nothing)
+                         newClass("__Class") = "TestWql"
+                         newClass.Put()
+            
+                     'Create a query object for watching for class deletion events
+                     Dim eventQuery As New WqlEventQuery("select * from __classdeletionevent")
+            
+                     'Initialize an event watcher object with this query
+                     Dim watcher As New ManagementEventWatcher( _
+                         New ManagementScope("root/default"), _
+                         eventQuery)
+            
+                     'Set up a handler for incoming events
+                     Dim handler As New MyHandler()
+                     AddHandler watcher.EventArrived, AddressOf handler.Arrived
+            
+                     'Start watching for events
+                     watcher.Start()
+            
+                     'For this example, we delete the class to trigger an event
+                     newClass.Delete()
+            
+                     'Nothing better to do - we loop to wait for an event to arrive.
+                     While Not handler.IsArrived
+                         Console.Write("0")
+                         System.Threading.Thread.Sleep(1000)
+                     End While
+            
+                     'In this example we only want to wait for one event, so we can stop watching
+                     watcher.Stop()
+            
+                 End Sub
+            
+                 Public Class MyHandler
+                     Private _isArrived As Boolean = False
+            
+                     'Handles the event when it arrives
+                     Public Sub Arrived(sender As Object, e As EventArrivedEventArgs)
+                         Dim eventArg As ManagementBaseObject = CType( _
+                             e.NewEvent("TargetClass"), _
+                             ManagementBaseObject)
+                         Console.WriteLine(("Class Deleted = " + eventArg("__CLASS")))
+                         _isArrived = True
+                     End Sub
+            
+                     'Used to determine whether the event has arrived or not.
+                     Public ReadOnly Property IsArrived() As Boolean
+                         Get
+                             Return _isArrived
+                         End Get
+                     End Property
+                 End Class
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor">
+            <overload>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/> class.</para>
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class. This is the default
+            constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String)">
+             <summary>
+             <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+             class based on the given
+             query string or event class name.</para>
+             </summary>
+             <param name='queryOrEventClassName'>The string representing either the entire event query or the name of the event class to query. The object will try to parse the string as a valid event query. If unsuccessful, the parser will assume that the parameter represents an event class name.</param>
+             <example>
+                <para>The two options below are equivalent :</para>
+                <code lang='C#'>//Full query string specified to the constructor
+             WqlEventQuery q = new WqlEventQuery("SELECT * FROM MyEvent");
+            
+             //Only relevant event class name specified to the constructor
+             WqlEventQuery q = new WqlEventQuery("MyEvent"); //results in the same query as above.
+                </code>
+                <code lang='VB'>'Full query string specified to the constructor
+             Dim q As New WqlEventQuery("SELECT * FROM MyEvent")
+            
+             'Only relevant event class name specified to the constructor
+             Dim q As New WqlEventQuery("MyEvent") 'results in the same query as above
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class for the
+            specified event class name, with the specified condition.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query.</param>
+            <param name=' condition'>The condition to apply to events of the specified class.</param>
+            <example>
+               <para>This example shows how to create an event query that contains a condition in
+                  addition to the event class :</para>
+               <code lang='C#'>//Requests all "MyEvent" events where the event's properties
+            //match the specified condition
+            WqlEventQuery q = new WqlEventQuery("MyEvent", "FirstProp &lt; 20 and SecondProp = 'red'");
+               </code>
+               <code lang='VB'>'Requests all "MyEvent" events where the event's properties
+            'match the specified condition
+            Dim q As New WqlEventQuery("MyEvent", "FirstProp &lt; 20 and SecondProp = 'red'")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.TimeSpan)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class for the specified
+            event class, with the specified latency time.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query.</param>
+            <param name=' withinInterval'>A timespan value specifying the latency acceptable for receiving this event. This value is used in cases where there is no explicit event provider for the query requested, and WMI is required to poll for the condition. This interval is the maximum amount of time that can pass before notification of an event must be delivered. </param>
+            <example>
+               <para>This example shows creating an event query that contains
+                  a
+                  time interval.</para>
+               <code lang='C#'>//Requests all instance creation events, with a specified latency of
+            //10 seconds. The query created is "SELECT * FROM __InstanceCreationEvent WITHIN 10"
+            WqlEventQuery q = new WqlEventQuery("__InstanceCreationEvent",
+                                                new TimeSpan(0,0,10));
+               </code>
+               <code lang='VB'>'Requests all instance creation events, with a specified latency of
+            '10 seconds. The query created is "SELECT * FROM __InstanceCreationEvent WITHIN 10"
+            Dim t As New TimeSpan(0,0,10)
+            Dim q As New WqlEventQuery("__InstanceCreationEvent", t)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.TimeSpan,System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class with the specified
+            event class name, polling interval, and condition.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query. </param>
+            <param name=' withinInterval'>A timespan value specifying the latency acceptable for receiving this event. This value is used in cases where there is no explicit event provider for the query requested and WMI is required to poll for the condition. This interval is the maximum amount of time that can pass before notification of an event must be delivered. </param>
+            <param name=' condition'>The condition to apply to events of the specified class.</param>
+            <example>
+               <para> This example creates the event query: "SELECT * FROM
+               <see langword='__InstanceCreationEvent '/>WITHIN 10 WHERE
+               <see langword='TargetInstance'/> ISA <see langword='Win32_Service'/>", which means
+                  "send notification of the creation of <see langword='Win32_Service '/>
+                  instances,
+                  with a 10-second polling interval."</para>
+               <code lang='C#'>//Requests notification of the creation of Win32_Service instances with a 10 second
+            //allowed latency.
+            WqlEventQuery q = new WqlEventQuery("__InstanceCreationEvent",
+                                                new TimeSpan(0,0,10),
+                                                "TargetInstance isa 'Win32_Service'");
+               </code>
+               <code lang='VB'>'Requests notification of the creation of Win32_Service instances with a 10 second
+            'allowed latency.
+            Dim t As New TimeSpan(0,0,10)
+            Dim q As New WqlEventQuery("__InstanceCreationEvent", _
+                                       t, _
+                                       "TargetInstance isa ""Win32_Service""")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.String,System.TimeSpan)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class with the specified
+            event class name, condition, and grouping interval.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query. </param>
+            <param name='condition'>The condition to apply to events of the specified class.</param>
+            <param name=' groupWithinInterval'>The specified interval at which WMI sends one aggregate event, rather than many events.</param>
+            <example>
+               <para>This example creates the event query: "SELECT * FROM
+               <see langword='FrequentEvent'/> WHERE <see langword='InterestingProperty'/>= 5
+                  GROUP WITHIN 10", which means "send notification of events of type
+               <see langword='FrequentEvent'/>, in which the
+               <see langword='InterestingProperty'/> is equal to 5, but send an aggregate event in
+                  a
+                  10-second interval."</para>
+               <code lang='C#'>//Sends an aggregate of the requested events every 10 seconds
+            WqlEventQuery q = new WqlEventQuery("FrequentEvent",
+                                                "InterestingProperty = 5",
+                                                new TimeSpan(0,0,10));
+               </code>
+               <code lang='VB'>'Sends an aggregate of the requested events every 10 seconds
+            Dim t As New TimeSpan(0,0,10)
+            Dim q As New WqlEventQuery("FrequentEvent", _
+                                       "InterestingProperty = 5", _
+                                       t)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.String,System.TimeSpan,System.String[])">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class with the specified event class
+            name, condition, grouping interval, and grouping properties.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class to query. </param>
+            <param name='condition'>The condition to apply to events of the specified class.</param>
+            <param name=' groupWithinInterval'>The specified interval at which WMI sends one aggregate event, rather than many events. </param>
+            <param name=' groupByPropertyList'>The properties in the event class by which the events should be grouped.</param>
+            <example>
+               <para>This example creates the event query: "SELECT * FROM
+               <see langword='EmailEvent'/> WHERE <see langword='Sender'/> = 'MyBoss' GROUP
+                  WITHIN 300 BY <see langword='Importance'/>", which means "send notification when
+                  new email from a particular sender has arrived within the last 10 minutes,
+                  combined with other events that have the same value in the
+               <see langword='Importance'/>
+               property."</para>
+            <code lang='C#'>//Requests "EmailEvent" events where the Sender property is "MyBoss", and
+            //groups them based on importance
+            String[] props = {"Importance"};
+            WqlEventQuery q = new WqlEventQuery("EmailEvent",
+                                                "Sender = 'MyBoss'",
+                                                new TimeSpan(0,10,0),
+                                                props);
+            </code>
+            <code lang='VB'>'Requests "EmailEvent" events where the Sender property is "MyBoss", and
+            'groups them based on importance
+            Dim props() As String = {"Importance"}
+            Dim t As New TimeSpan(0,10,0)
+            Dim q As New WqlEventQuery("EmailEvent", _
+                                       "Sender = ""MyBoss""", _
+                                       t, _
+                                       props)
+            </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.#ctor(System.String,System.TimeSpan,System.String,System.TimeSpan,System.String[],System.String)">
+            <summary>
+            <para> Initializes a new instance of the <see cref='T:System.Management.WqlEventQuery'/>
+            class with the specified event class
+            name, condition, grouping interval, grouping properties, and specified number of events.</para>
+            </summary>
+            <param name='eventClassName'>The name of the event class on which to be queried.</param>
+            <param name='withinInterval'>A timespan value specifying the latency acceptable for receiving this event. This value is used in cases where there is no explicit event provider for the query requested, and WMI is required to poll for the condition. This interval is the maximum amount of time that can pass before notification of an event must be delivered.</param>
+            <param name=' condition'>The condition to apply to events of the specified class.</param>
+            <param name=' groupWithinInterval'>The specified interval at which WMI sends one aggregate event, rather than many events. </param>
+            <param name=' groupByPropertyList'>The properties in the event class by which the events should be grouped.</param>
+            <param name=' havingCondition'>The condition to apply to the number of events.</param>
+            <example>
+               <para>This example creates the event query: "SELECT * FROM
+               <see langword='__InstanceCreationEvent '/>WHERE <see langword='TargetInstance'/>
+               ISA <see langword='Win32_NTLogEvent '/>GROUP WITHIN 300 BY
+            <see langword='TargetInstance.SourceName'/> HAVING
+            <see langword='NumberOfEvents'/> &gt; 15" which means "deliver aggregate events
+               only if the number of <see langword='Win32_NTLogEvent '/>events received from the
+               same source exceeds 15."</para>
+            <code lang='C#'>//Requests sending aggregated events if the number of events exceeds 15.
+            String[] props = {"TargetInstance.SourceName"};
+            WqlEventQuery q = new WqlEventQuery("__InstanceCreationEvent",
+                                                "TargetInstance isa 'Win32_NTLogEvent'",
+                                                new TimeSpan(0,10,0),
+                                                props,
+                                                "NumberOfEvents &gt;15");
+            </code>
+            <code lang='VB'>'Requests sending aggregated events if the number of events exceeds 15.
+            Dim props() As String = {"TargetInstance.SourceName"};
+            Dim t As New TimeSpan(0,10,0)
+            Dim q As WqlEventQuery("__InstanceCreationEvent", _
+                                   "TargetInstance isa ""Win32_NTLogEvent""", _
+                                   t, _
+                                   props, _
+                                   "NumberOfEvents &gt;15")
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.QueryLanguage">
+            <summary>
+               <para>Gets or sets the language of the query.</para>
+            </summary>
+            <value>
+               <para>The value of this property in this
+                  object is always "WQL".</para>
+            </value>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.QueryString">
+            <summary>
+               <para>Gets or sets the string representing the query.</para>
+            </summary>
+            <value>
+               A string representing the query.
+            </value>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.EventClassName">
+            <summary>
+               <para> Gets or sets the event class to query.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               event class to query.
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value
+                  stored
+                  in the object. The query string is rebuilt to
+                  reflect the new class name.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='MyEvent'/> ".</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "MyEvent";
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "MyEvent"
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.Condition">
+            <summary>
+               <para>Gets or sets the condition to be applied to events of the
+                  specified class.</para>
+            </summary>
+            <value>
+               <para>The condition is represented as a
+                  string, containing one or more clauses of the form: &lt;propName&gt;
+                  &lt;operator&gt; &lt;value&gt; combined with and/or operators. &lt;propName&gt;
+                  must represent a property defined on the event class specified in this query.</para>
+            </value>
+            <remarks>
+               <para>Setting this property value overrides any previous value
+                  stored in the object. The query string is rebuilt to
+                  reflect the new condition.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='MyEvent'/> WHERE
+            <see langword='PropVal'/> &gt; 8".</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "MyEvent";
+            q.Condition = "PropVal &gt; 8";
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "MyEvent"
+            q.Condition = "PropVal &gt; 8"
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.WithinInterval">
+            <summary>
+               <para>Gets or sets the polling interval to be used in this query.</para>
+            </summary>
+            <value>
+               <para>Null, if there is no polling involved; otherwise, a
+                  valid <see cref='T:System.TimeSpan'/>
+                  value if polling is required.</para>
+            </value>
+            <remarks>
+               <para>This property should only be set in cases
+                  where there is no event provider for the event requested, and WMI is required to
+                  poll for the requested condition.</para>
+               <para>Setting this property value overrides any previous value
+                  stored in
+                  the object. The query string is rebuilt to reflect the new interval.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='__InstanceModificationEvent '/>WITHIN 10 WHERE <see langword='PropVal'/> &gt; 8".</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "__InstanceModificationEvent";
+            q.Condition = "PropVal &gt; 8";
+            q.WithinInterval = new TimeSpan(0,0,10);
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "__InstanceModificationEvent"
+            q.Condition = "PropVal &gt; 8"
+            q.WithinInterval = New TimeSpan(0,0,10)
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.GroupWithinInterval">
+            <summary>
+               <para>Gets or sets the interval to be used for grouping events of
+                  the same type.</para>
+            </summary>
+            <value>
+               <para> Null, if there is no
+                  grouping involved; otherwise, the interval in which WMI should group events of
+                  the same type.</para>
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value stored in
+                  the object. The query string is rebuilt to reflect the new interval.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='MyEvent'/> WHERE
+            <see langword='PropVal'/> &gt; 8 GROUP WITHIN 10", which means "send notification
+            of all <see langword='MyEvent'/> events where the <see langword='PropVal'/>
+            property is greater than 8, and aggregate these events within 10-second intervals."</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "MyEvent";
+            q.Condition = "PropVal &gt; 8";
+            q.GroupWithinInterval = new TimeSpan(0,0,10);
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "MyEvent"
+            q.Condition = "PropVal &gt; 8"
+            q.GroupWithinInterval = New TimeSpan(0,0,10)
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.GroupByPropertyList">
+            <summary>
+               <para>Gets or sets properties in the event to be used for
+                  grouping events of the same type.</para>
+            </summary>
+            <value>
+               <para>
+                  Null, if no grouping is required; otherwise, a collection of event
+                  property names.</para>
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value stored in
+                  the object. The query string is rebuilt to reflect the new grouping.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='EmailEvent'/> GROUP
+            WITHIN 300 BY <see langword='Sender'/>", which means "send notification of all
+            <see langword='EmailEvent'/> events, aggregated by the <see langword='Sender'/>property, within 10-minute intervals."</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "EmailEvent";
+            q.GroupWithinInterval = new TimeSpan(0,10,0);
+            q.GroupByPropertyList = new StringCollection();
+            q.GroupByPropertyList.Add("Sender");
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "EmailEvent"
+            q.GroupWithinInterval = New TimeSpan(0,10,0)
+            q.GroupByPropertyList = New StringCollection()
+            q.GroupByPropertyList.Add("Sender")
+            </code>
+            </example>
+        </member>
+        <member name="P:System.Management.WqlEventQuery.HavingCondition">
+            <summary>
+               <para>Gets or sets the condition to be applied to the aggregation of
+                  events, based on the number of events received.</para>
+            </summary>
+            <value>
+               <para>
+                  Null, if no aggregation or no condition should be applied;
+                  otherwise, a condition of the form "NumberOfEvents &lt;operator&gt;
+                  &lt;value&gt;".</para>
+            </value>
+            <remarks>
+               <para> Setting this property value overrides any previous value stored in
+                  the object. The query string is rebuilt to reflect the new grouping condition.</para>
+            </remarks>
+            <example>
+            <para>This example creates a new <see cref='T:System.Management.WqlEventQuery'/>
+            that represents the query: "SELECT * FROM <see langword='EmailEvent'/> GROUP
+            WITHIN 300 HAVING <see langword='NumberOfEvents'/> &gt; 5", which means "send
+            notification of all <see langword='EmailEvent'/> events, aggregated within
+            10-minute intervals, if there are more than 5 occurrences."</para>
+            <code lang='C#'>WqlEventQuery q = new WqlEventQuery();
+            q.EventClassName = "EmailEvent";
+            q.GroupWithinInterval = new TimeSpan(0,10,0);
+            q.HavingCondition = "NumberOfEvents &gt; 5";
+            </code>
+            <code lang='VB'>Dim q As New WqlEventQuery()
+            q.EventClassName = "EmailEvent"
+            q.GroupWithinInterval = new TimeSpan(0,10,0)
+            q.HavingCondition = "NumberOfEvents &gt; 5"
+            </code>
+            </example>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.BuildQuery">
+            <summary>
+             Builds the query string according to the current property values.
+            </summary>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.ParseQuery(System.String)">
+            <summary>
+             Parses the query string and sets the property values accordingly.
+            </summary>
+            <param name="query">The query string to be parsed.</param>
+        </member>
+        <member name="M:System.Management.WqlEventQuery.Clone">
+            <summary>
+               <para>Creates a copy of the object.</para>
+            </summary>
+            <returns>
+               The copied object.
+            </returns>
+        </member>
+        <member name="T:System.Management.ManagementQueryConverter">
+            <summary>
+            Converts a String to a ManagementQuery
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementQueryConverter.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Determines if this converter can convert an object in the given source type to the native type of the converter.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='sourceType'>A Type that represents the type you wish to convert from.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementQueryConverter.CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Gets a value indicating whether this converter can convert an object to the given destination type using the context.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='destinationType'>A Type that represents the type you wish to convert to.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementQueryConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
+            <summary>
+                 Converts the given object to another type.  The most common types to convert
+                 are to and from a string object.  The default implementation will make a call
+                 to ToString on the object if the object is valid and if the destination
+                 type is string.  If this cannot convert to the desitnation type, this will
+                 throw a NotSupportedException.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='culture'>A CultureInfo object. If a null reference (Nothing in Visual Basic) is passed, the current culture is assumed.</param>
+            <param name='value'>The Object to convert.</param>
+            <param name='destinationType'>The Type to convert the value parameter to.</param>
+            <returns>An Object that represents the converted value.</returns>
+        </member>
+        <member name="T:System.Management.ManagementScope">
+             <summary>
+                <para>Represents a scope for management operations. In v1.0 the scope defines the WMI namespace in which management operations are performed.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to connect to root/default namespace
+             // using ManagmentScope object.
+             class Sample_ManagementScope
+             {
+                 public static int Main(string[] args)
+                 {
+                     ManagementScope scope = new ManagementScope("root\\default");
+                     scope.Connect();
+                     ManagementClass newClass = new ManagementClass(
+                         scope,
+                         new ManagementPath(),
+                         null);
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to connect to root/default namespace
+             ' using ManagmentScope object.
+             Class Sample_ManagementScope
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim scope As New ManagementScope("root\default")
+                     scope.Connect()
+                     Dim newClass As New ManagementClass(scope, _
+                         New ManagementPath(), _
+                         Nothing)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementScope.IsConnected">
+            <summary>
+            <para> Gets or sets a value indicating whether the <see cref='T:System.Management.ManagementScope'/> is currently bound to a
+               WMI server and namespace.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if a connection is alive (bound
+               to a server and namespace); otherwise, <see langword='false'/>.</para>
+            </value>
+            <remarks>
+               <para> A scope is disconnected after creation until someone
+                  explicitly calls <see cref='M:System.Management.ManagementScope.Connect'/>(), or uses the scope for any
+                  operation that requires a live connection. Also, the scope is
+                  disconnected from the previous connection whenever the identifying properties of the scope are
+                  changed.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor">
+            <overload>
+               Initializes a new instance
+               of the <see cref='T:System.Management.ManagementScope'/> class.
+            </overload>
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class, with default values. This is the
+               default constructor.</para>
+            </summary>
+            <remarks>
+               <para> If the object doesn't have any
+                  properties set before connection, it will be initialized with default values
+                  (for example, the local machine and the root\cimv2 namespace).</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope();
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope()
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor(System.Management.ManagementPath)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class representing
+               the specified scope path.</para>
+            </summary>
+            <param name='path'>A <see cref='T:System.Management.ManagementPath'/> containing the path to a server and namespace for the <see cref='T:System.Management.ManagementScope'/>.</param>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope(new ManagementPath("\\\\MyServer\\root\\default"));
+               </code>
+               <code lang='VB'>Dim p As New ManagementPath("\\MyServer\root\default")
+            Dim s As New ManagementScope(p)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor(System.String)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class representing the specified scope
+               path.</para>
+            </summary>
+            <param name='path'>The server and namespace path for the <see cref='T:System.Management.ManagementScope'/>.</param>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope("\\\\MyServer\\root\\default");
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope("\\MyServer\root\default")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor(System.String,System.Management.ConnectionOptions)">
+            <summary>
+            <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class representing the specified scope path,
+               with the specified options.</para>
+            </summary>
+            <param name='path'>The server and namespace for the <see cref='T:System.Management.ManagementScope'/>.</param>
+            <param name=' options'>A <see cref='T:System.Management.ConnectionOptions'/> containing options for the connection.</param>
+            <example>
+               <code lang='C#'>ConnectionOptions opt = new ConnectionOptions();
+            opt.Username = "Me";
+            opt.Password = "MyPassword";
+            ManagementScope s = new ManagementScope("\\\\MyServer\\root\\default", opt);
+               </code>
+               <code lang='VB'>Dim opt As New ConnectionOptions()
+            opt.Username = "Me"
+            opt.Password = "MyPassword"
+            Dim s As New ManagementScope("\\MyServer\root\default", opt);
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.#ctor(System.Management.ManagementPath,System.Management.ConnectionOptions)">
+             <summary>
+             <para>Initializes a new instance of the <see cref='T:System.Management.ManagementScope'/> class representing the specified scope path,
+                with the specified options.</para>
+             </summary>
+             <param name='path'>A <see cref='T:System.Management.ManagementPath'/> containing the path to the server and namespace for the <see cref='T:System.Management.ManagementScope'/>.</param>
+             <param name=' options'>The <see cref='T:System.Management.ConnectionOptions'/> containing options for the connection.</param>
+             <example>
+                <code lang='C#'>ConnectionOptions opt = new ConnectionOptions();
+             opt.Username = "Me";
+             opt.Password = "MyPassword";
+            
+             ManagementPath p = new ManagementPath("\\\\MyServer\\root\\default");
+             ManagementScope = new ManagementScope(p, opt);
+                </code>
+                <code lang='VB'>Dim opt As New ConnectionOptions()
+             opt.UserName = "Me"
+             opt.Password = "MyPassword"
+            
+             Dim p As New ManagementPath("\\MyServer\root\default")
+             Dim s As New ManagementScope(p, opt)
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementScope.Options">
+             <summary>
+                <para> Gets or sets options for making the WMI connection.</para>
+             </summary>
+             <value>
+             <para>The valid <see cref='T:System.Management.ConnectionOptions'/>
+             containing options for the WMI connection.</para>
+             </value>
+             <example>
+                <code lang='C#'>//This constructor creates a scope object with default options
+             ManagementScope s = new ManagementScope("root\\MyApp");
+            
+             //Change default connection options -
+             //In this example, set the system privileges to enabled for operations that require system privileges.
+             s.Options.EnablePrivileges = true;
+                </code>
+                <code lang='VB'>'This constructor creates a scope object with default options
+             Dim s As New ManagementScope("root\\MyApp")
+            
+             'Change default connection options -
+             'In this example, set the system privileges to enabled for operations that require system privileges.
+             s.Options.EnablePrivileges = True
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.ManagementScope.Path">
+            <summary>
+            <para>Gets or sets the path for the <see cref='T:System.Management.ManagementScope'/>.</para>
+            </summary>
+            <value>
+            <para> A <see cref='T:System.Management.ManagementPath'/> containing
+               the path to a server and namespace.</para>
+            </value>
+            <example>
+               <code lang='C#'>ManagementScope s = new ManagementScope();
+            s.Path = new ManagementPath("root\\MyApp");
+               </code>
+               <code lang='VB'>Dim s As New ManagementScope()
+            s.Path = New ManagementPath("root\MyApp")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.ManagementScope.Clone">
+            <summary>
+               <para>Returns a copy of the object.</para>
+            </summary>
+            <returns>
+            <para>A new copy of the <see cref='T:System.Management.ManagementScope'/>.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementScope.System#ICloneable#Clone">
+            <summary>
+               <para>Clone a copy of this object.</para>
+            </summary>
+            <returns>
+               A new copy of this object.
+               object.
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementScope.Connect">
+             <summary>
+             <para>Connects this <see cref='T:System.Management.ManagementScope'/> to the actual WMI
+                scope.</para>
+             </summary>
+             <remarks>
+                <para>This method is called implicitly when the
+                   scope is used in an operation that requires it to be connected. Calling it
+                   explicitly allows the user to control the time of connection.</para>
+             </remarks>
+             <example>
+                <code lang='C#'>ManagementScope s = new ManagementScope("root\\MyApp");
+            
+             //Explicit call to connect the scope object to the WMI namespace
+             s.Connect();
+            
+             //The following doesn't do any implicit scope connections because s is already connected.
+             ManagementObject o = new ManagementObject(s, "Win32_LogicalDisk='C:'", null);
+                </code>
+                <code lang='VB'>Dim s As New ManagementScope("root\\MyApp")
+            
+             'Explicit call to connect the scope object to the WMI namespace
+             s.Connect()
+            
+             'The following doesn't do any implicit scope connections because s is already connected.
+             Dim o As New ManagementObject(s, "Win32_LogicalDisk=""C:""", null)
+                </code>
+             </example>
+        </member>
+        <member name="T:System.Management.ManagementScopeConverter">
+            <summary>
+            Converts a String to a ManagementScope
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementScopeConverter.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Determines if this converter can convert an object in the given source type to the native type of the converter.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='sourceType'>A Type that represents the type you wish to convert from.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementScopeConverter.CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type)">
+            <summary>
+            Gets a value indicating whether this converter can convert an object to the given destination type using the context.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='destinationType'>A Type that represents the type you wish to convert to.</param>
+            <returns>
+               <para>true if this converter can perform the conversion; otherwise, false.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementScopeConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
+            <summary>
+                 Converts the given object to another type.  The most common types to convert
+                 are to and from a string object.  The default implementation will make a call
+                 to ToString on the object if the object is valid and if the destination
+                 type is string.  If this cannot convert to the desitnation type, this will
+                 throw a NotSupportedException.
+            </summary>
+            <param name='context'>An ITypeDescriptorContext that provides a format context.</param>
+            <param name='culture'>A CultureInfo object. If a null reference (Nothing in Visual Basic) is passed, the current culture is assumed.</param>
+            <param name='value'>The Object to convert.</param>
+            <param name='destinationType'>The Type to convert the value parameter to.</param>
+            <returns>An Object that represents the converted value.</returns>
+        </member>
+        <member name="T:System.Management.MethodData">
+             <summary>
+                <para> Contains information about a WMI method.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This example shows how to obtain meta data
+             // about a WMI method with a given name in a given WMI class
+            
+             class Sample_MethodData
+             {
+                 public static int Main(string[] args) {
+            
+                     // Get the "SetPowerState" method in the Win32_LogicalDisk class
+                     ManagementClass diskClass = new ManagementClass("win32_logicaldisk");
+                     MethodData m = diskClass.Methods["SetPowerState"];
+            
+                     // Get method name (albeit we already know it)
+                     Console.WriteLine("Name: " + m.Name);
+            
+                     // Get the name of the top-most class where this specific method was defined
+                     Console.WriteLine("Origin: " + m.Origin);
+            
+                     // List names and types of input parameters
+                     ManagementBaseObject inParams = m.InParameters;
+                     foreach (PropertyData pdata in inParams.Properties) {
+                         Console.WriteLine();
+                         Console.WriteLine("InParam_Name: " + pdata.Name);
+                         Console.WriteLine("InParam_Type: " + pdata.Type);
+                     }
+            
+                     // List names and types of output parameters
+                     ManagementBaseObject outParams = m.OutParameters;
+                     foreach (PropertyData pdata in outParams.Properties) {
+                         Console.WriteLine();
+                         Console.WriteLine("OutParam_Name: " + pdata.Name);
+                         Console.WriteLine("OutParam_Type: " + pdata.Type);
+                     }
+            
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This example shows how to obtain meta data
+             ' about a WMI method with a given name in a given WMI class
+            
+             Class Sample_ManagementClass
+                 Overloads Public Shared Function Main(args() As String) As Integer
+            
+                     ' Get the "SetPowerState" method in the Win32_LogicalDisk class
+                     Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                     Dim m As MethodData = diskClass.Methods("SetPowerState")
+            
+                     ' Get method name (albeit we already know it)
+                     Console.WriteLine("Name: " &amp; m.Name)
+            
+                     ' Get the name of the top-most class where
+                     ' this specific method was defined
+                     Console.WriteLine("Origin: " &amp; m.Origin)
+            
+                     ' List names and types of input parameters
+                     Dim inParams As ManagementBaseObject
+                     inParams = m.InParameters
+                     Dim pdata As PropertyData
+                     For Each pdata In inParams.Properties
+                         Console.WriteLine()
+                         Console.WriteLine("InParam_Name: " &amp; pdata.Name)
+                         Console.WriteLine("InParam_Type: " &amp; pdata.Type)
+                     Next pdata
+            
+                     ' List names and types of output parameters
+                     Dim outParams As ManagementBaseObject
+                     outParams = m.OutParameters
+                     For Each pdata in outParams.Properties
+                         Console.WriteLine()
+                         Console.WriteLine("OutParam_Name: " &amp; pdata.Name)
+                         Console.WriteLine("OutParam_Type: " &amp; pdata.Type)
+                     Next pdata
+            
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.MethodData.Name">
+            <summary>
+               <para>Gets or sets the name of the method.</para>
+            </summary>
+            <value>
+               <para>The name of the method.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.MethodData.InParameters">
+            <summary>
+               <para> Gets or sets the input parameters to the method. Each
+                  parameter is described as a property in the object. If a parameter is both in
+                  and out, it appears in both the <see cref='P:System.Management.MethodData.InParameters'/> and <see cref='P:System.Management.MethodData.OutParameters'/>
+                  properties.</para>
+            </summary>
+            <value>
+               <para>
+                  A <see cref='T:System.Management.ManagementBaseObject'/>
+                  containing all the input parameters to the
+                  method.</para>
+            </value>
+            <remarks>
+               <para>Each parameter in the object should have an
+               <see langword='ID'/>
+               qualifier, identifying the order of the parameters in the method call.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.MethodData.OutParameters">
+            <summary>
+               <para> Gets or sets the output parameters to the method. Each
+                  parameter is described as a property in the object. If a parameter is both in
+                  and out, it will appear in both the <see cref='P:System.Management.MethodData.InParameters'/> and <see cref='P:System.Management.MethodData.OutParameters'/>
+                  properties.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.ManagementBaseObject'/> containing all the output parameters to the method. </para>
+            </value>
+            <remarks>
+               <para>Each parameter in this object should have an
+               <see langword='ID'/> qualifier to identify the
+                  order of the parameters in the method call.</para>
+               <para>The ReturnValue property is a special property of
+                  the <see cref='P:System.Management.MethodData.OutParameters'/>
+                  object and
+                  holds the return value of the method.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.MethodData.Origin">
+            <summary>
+               <para>Gets the name of the management class in which the method was first
+                  introduced in the class inheritance hierarchy.</para>
+            </summary>
+            <value>
+               A string representing the originating
+               management class name.
+            </value>
+        </member>
+        <member name="P:System.Management.MethodData.Qualifiers">
+            <summary>
+               <para>Gets a collection of qualifiers defined in the
+                  method. Each element is of type <see cref='T:System.Management.QualifierData'/>
+                  and contains information such as the qualifier name, value, and
+                  flavor.</para>
+            </summary>
+            <value>
+               A <see cref='T:System.Management.QualifierDataCollection'/> containing the
+               qualifiers for this method.
+            </value>
+            <seealso cref='T:System.Management.QualifierData'/>
+        </member>
+        <member name="T:System.Management.MethodDataCollection">
+             <summary>
+                <para> Represents the set of methods available in the collection.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates enumerate all methods in a ManagementClass object.
+             class Sample_MethodDataCollection
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("win32_logicaldisk");
+                     MethodDataCollection diskMethods = diskClass.Methods;
+                     foreach (MethodData method in diskMethods) {
+                         Console.WriteLine("Method = " + method.Name);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates enumerate all methods in a ManagementClass object.
+             Class Sample_MethodDataCollection
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("win32_logicaldisk")
+                     Dim diskMethods As MethodDataCollection = diskClass.Methods
+                     Dim method As MethodData
+                     For Each method In diskMethods
+                         Console.WriteLine("Method = " &amp; method.Name)
+                     Next method
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.Count">
+            <summary>
+            <para>Represents the number of objects in the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </summary>
+            <value>
+            <para> The number of objects in the <see cref='T:System.Management.MethodDataCollection'/>. </para>
+            </value>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.IsSynchronized">
+            <summary>
+               <para>Indicates whether the object is synchronized.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the object is synchronized;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.SyncRoot">
+            <summary>
+               <para>Represents the object to be used for synchronization.</para>
+            </summary>
+            <value>
+               <para>The object to be used for synchronization.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.CopyTo(System.Array,System.Int32)">
+            <overload>
+            <para>Copies the <see cref='T:System.Management.MethodDataCollection'/> into an array.</para>
+            </overload>
+            <summary>
+            <para> Copies the <see cref='T:System.Management.MethodDataCollection'/> into an array.</para>
+            </summary>
+            <param name='array'>The array to which to copy the collection. </param>
+            <param name='index'>The index from which to start. </param>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.CopyTo(System.Management.MethodData[],System.Int32)">
+            <summary>
+            <para>Copies the <see cref='T:System.Management.MethodDataCollection'/> to a specialized <see cref='T:System.Management.MethodData'/>
+            array.</para>
+            </summary>
+            <param name='methodArray'>The destination array to which to copy the <see cref='T:System.Management.MethodData'/> objects.</param>
+            <param name=' index'>The index in the destination array from which to start the copy.</param>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.GetEnumerator">
+            <summary>
+            <para>Returns an enumerator for the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </summary>
+            <remarks>
+               <para> Each call to this method
+                  returns a new enumerator on the collection. Multiple enumerators can be obtained
+                  for the same method collection. However, each enumerator takes a snapshot
+                  of the collection, so changes made to the collection after the enumerator was
+                  obtained are not reflected.</para>
+            </remarks>
+            <returns>An <see cref="T:System.Collections.IEnumerator"/> to enumerate through the collection.</returns>
+        </member>
+        <member name="T:System.Management.MethodDataCollection.MethodDataEnumerator">
+             <summary>
+             <para>Represents the enumerator for <see cref='T:System.Management.MethodData'/>
+             objects in the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate all methods in
+             // Win32_LogicalDisk class using MethodDataEnumerator object.
+            
+             class Sample_MethodDataEnumerator
+             {
+              public static int Main(string[] args)
+              {
+               ManagementClass diskClass = new ManagementClass("win32_logicaldisk");
+               MethodDataCollection.MethodDataEnumerator diskEnumerator =
+                diskClass.Methods.GetEnumerator();
+               while(diskEnumerator.MoveNext())
+               {
+                MethodData method = diskEnumerator.Current;
+                Console.WriteLine("Method = " + method.Name);
+               }
+               return 0;
+              }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate all methods in
+             ' Win32_LogicalDisk class using MethodDataEnumerator object.
+            
+             Class Sample_MethodDataEnumerator
+              Overloads Public Shared Function Main(args() As String) As Integer
+               Dim diskClass As New ManagementClass("win32_logicaldisk")
+               Dim diskEnumerator As _
+                    MethodDataCollection.MethodDataEnumerator = _
+                   diskClass.Methods.GetEnumerator()
+               While diskEnumerator.MoveNext()
+                Dim method As MethodData = diskEnumerator.Current
+                Console.WriteLine("Method = " &amp; method.Name)
+               End While
+               Return 0
+              End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.MethodDataEnumerator.System#Collections#IEnumerator#Current">
+            <internalonly/>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.MethodDataEnumerator.Current">
+            <summary>
+            <para>Returns the current <see cref='T:System.Management.MethodData'/> in the <see cref='T:System.Management.MethodDataCollection'/>
+            enumeration.</para>
+            </summary>
+            <value>The current <see cref='T:System.Management.MethodData'/> item in the collection.</value>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.MethodDataEnumerator.MoveNext">
+            <summary>
+            <para>Moves to the next element in the <see cref='T:System.Management.MethodDataCollection'/> enumeration.</para>
+            </summary>
+            <returns><see langword='true'/> if the enumerator was successfully advanced to the next method; <see langword='false'/> if the enumerator has passed the end of the collection.</returns>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.MethodDataEnumerator.Reset">
+            <summary>
+            <para>Resets the enumerator to the beginning of the <see cref='T:System.Management.MethodDataCollection'/> enumeration.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.MethodDataCollection.Item(System.String)">
+            <summary>
+            <para>Returns the specified <see cref='T:System.Management.MethodData'/> from the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </summary>
+            <param name='methodName'>The name of the method requested.</param>
+            <value>A <see cref='T:System.Management.MethodData'/> instance containing all information about the specified method.</value>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.Remove(System.String)">
+            <summary>
+            <para>Removes a <see cref='T:System.Management.MethodData'/> from the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </summary>
+            <param name='methodName'>The name of the method to remove from the collection.</param>
+            <remarks>
+               <para>
+                  Removing <see cref='T:System.Management.MethodData'/> objects from the <see cref='T:System.Management.MethodDataCollection'/>
+                  can only be done when the class has no
+                  instances. Any other case will result in an exception.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.Add(System.String)">
+            <overload>
+            <para>Adds a <see cref='T:System.Management.MethodData'/> to the <see cref='T:System.Management.MethodDataCollection'/>.</para>
+            </overload>
+            <summary>
+            <para>Adds a <see cref='T:System.Management.MethodData'/> to the <see cref='T:System.Management.MethodDataCollection'/>. This overload will
+               add a new method with no parameters to the collection.</para>
+            </summary>
+            <param name='methodName'>The name of the method to add.</param>
+            <remarks>
+            <para> Adding <see cref='T:System.Management.MethodData'/> objects to the <see cref='T:System.Management.MethodDataCollection'/> can only
+               be done when the class has no instances. Any other case will result in an
+               exception.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.MethodDataCollection.Add(System.String,System.Management.ManagementBaseObject,System.Management.ManagementBaseObject)">
+            <summary>
+            <para>Adds a <see cref='T:System.Management.MethodData'/> to the <see cref='T:System.Management.MethodDataCollection'/>. This overload will add a new method with the
+               specified parameter objects to the collection.</para>
+            </summary>
+            <param name='methodName'>The name of the method to add.</param>
+            <param name=' inParameters'>The <see cref='T:System.Management.ManagementBaseObject'/> holding the input parameters to the method.</param>
+            <param name=' outParameters'>The <see cref='T:System.Management.ManagementBaseObject'/> holding the output parameters to the method.</param>
+            <remarks>
+            <para> Adding <see cref='T:System.Management.MethodData'/> objects to the <see cref='T:System.Management.MethodDataCollection'/> can only be
+               done when the class has no instances. Any other case will result in an
+               exception.</para>
+            </remarks>
+        </member>
+        <member name="T:System.Management.PropertyData">
+             <summary>
+                <para> Represents information about a WMI property.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample displays all properties that qualifies the "DeviceID" property
+             // in Win32_LogicalDisk.DeviceID='C' instance.
+             class Sample_PropertyData
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject disk =
+                         new ManagementObject("Win32_LogicalDisk.DeviceID=\"C:\"");
+                     PropertyData diskProperty = disk.Properties["DeviceID"];
+                     Console.WriteLine("Name: " + diskProperty.Name);
+                     Console.WriteLine("Type: " + diskProperty.Type);
+                     Console.WriteLine("Value: " + diskProperty.Value);
+                     Console.WriteLine("IsArray: " + diskProperty.IsArray);
+                     Console.WriteLine("IsLocal: " + diskProperty.IsLocal);
+                     Console.WriteLine("Origin: " + diskProperty.Origin);
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample displays all properties that qualifies the "DeviceID" property
+             ' in Win32_LogicalDisk.DeviceID='C' instance.
+             Class Sample_PropertyData
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim disk As New ManagementObject("Win32_LogicalDisk.DeviceID=""C:""")
+                     Dim diskProperty As PropertyData = disk.Properties("DeviceID")
+                     Console.WriteLine("Name: " &amp; diskProperty.Name)
+                     Console.WriteLine("Type: " &amp; diskProperty.Type)
+                     Console.WriteLine("Value: " &amp; diskProperty.Value)
+                     Console.WriteLine("IsArray: " &amp; diskProperty.IsArray)
+                     Console.WriteLine("IsLocal: " &amp; diskProperty.IsLocal)
+                     Console.WriteLine("Origin: " &amp; diskProperty.Origin)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.PropertyData.Name">
+            <summary>
+               <para>Gets or sets the name of the property.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               property.
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.Value">
+            <summary>
+               <para>Gets or sets the current value of the property.</para>
+            </summary>
+            <value>
+               An object containing the value of the
+               property.
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.Type">
+            <summary>
+               <para>Gets or sets the CIM type of the property.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.CimType'/> value
+               representing the CIM type of the property.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.IsLocal">
+            <summary>
+               <para>Gets or sets a value indicating whether the property has been defined in the current WMI class.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the property has been defined
+               in the current WMI class; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.IsArray">
+            <summary>
+               <para>Gets or sets a value indicating whether the property is an array.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the property is an array; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.Origin">
+            <summary>
+               <para>Gets or sets the name of the WMI class in the hierarchy in which the property was introduced.</para>
+            </summary>
+            <value>
+               A string containing the name of the
+               originating WMI class.
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyData.Qualifiers">
+            <summary>
+               <para>Gets or sets the set of qualifiers defined on the property.</para>
+            </summary>
+            <value>
+            <para>A <see cref='T:System.Management.QualifierDataCollection'/> that represents
+               the set of qualifiers defined on the property.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.PropertyData.MapWmiValueToValue(System.Object,System.Management.CimType,System.Boolean)">
+            <summary>
+            Takes a property value returned from WMI and maps it to an
+            appropriate managed code representation.
+            </summary>
+            <param name="wmiValue"> </param>
+            <param name="type"> </param>
+            <param name="isArray"> </param>
+        </member>
+        <member name="M:System.Management.PropertyData.MapValueToWmiValue(System.Object,System.Management.CimType,System.Boolean)">
+            <summary>
+            Takes a managed code value, together with a desired property
+            </summary>
+            <param name="val"> </param>
+            <param name="type"> </param>
+            <param name="isArray"> </param>
+        </member>
+        <member name="T:System.Management.PropertyDataCollection">
+             <summary>
+                <para> Represents the set of properties of a WMI object.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate properties
+             // in a ManagementObject object.
+             class Sample_PropertyDataCollection
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid = \"c:\"");
+                     PropertyDataCollection diskProperties = disk.Properties;
+                     foreach (PropertyData diskProperty in diskProperties) {
+                         Console.WriteLine("Property = " + diskProperty.Name);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate properties
+             ' in a ManagementObject object.
+             Class Sample_PropertyDataCollection
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim disk As New ManagementObject("win32_logicaldisk.deviceid=""c:""")
+                     Dim diskProperties As PropertyDataCollection = disk.Properties
+                     Dim diskProperty As PropertyData
+                     For Each diskProperty In diskProperties
+                         Console.WriteLine("Property = " &amp; diskProperty.Name)
+                     Next diskProperty
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.Count">
+            <summary>
+            <para>Gets or sets the number of objects in the <see cref='T:System.Management.PropertyDataCollection'/>.</para>
+            </summary>
+            <value>
+               <para>The number of objects in the collection.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.IsSynchronized">
+            <summary>
+               <para>Gets or sets a value indicating whether the object is synchronized.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the object is synchronized;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.SyncRoot">
+            <summary>
+               <para>Gets or sets the object to be used for synchronization.</para>
+            </summary>
+            <value>
+               <para>The object to be used for synchronization.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.CopyTo(System.Array,System.Int32)">
+            <overload>
+            <para>Copies the <see cref='T:System.Management.PropertyDataCollection'/> into an array.</para>
+            </overload>
+            <summary>
+            <para>Copies the <see cref='T:System.Management.PropertyDataCollection'/> into an array.</para>
+            </summary>
+            <param name='array'>The array to which to copy the <see cref='T:System.Management.PropertyDataCollection'/>. </param>
+            <param name='index'>The index from which to start copying. </param>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.CopyTo(System.Management.PropertyData[],System.Int32)">
+            <summary>
+            <para>Copies the <see cref='T:System.Management.PropertyDataCollection'/> to a specialized <see cref='T:System.Management.PropertyData'/> object
+               array.</para>
+            </summary>
+            <param name='propertyArray'>The destination array to contain the copied <see cref='T:System.Management.PropertyDataCollection'/>.</param>
+            <param name=' index'>The index in the destination array from which to start copying.</param>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.GetEnumerator">
+            <summary>
+            <para>Returns the enumerator for this <see cref='T:System.Management.PropertyDataCollection'/>.</para>
+            </summary>
+            <returns>
+            <para>An <see cref='T:System.Collections.IEnumerator'/>
+            that can be used to iterate through the collection.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.PropertyDataCollection.PropertyDataEnumerator">
+             <summary>
+             <para>Represents the enumerator for <see cref='T:System.Management.PropertyData'/>
+             objects in the <see cref='T:System.Management.PropertyDataCollection'/>.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate all properties in a
+             // ManagementObject using the PropertyDataEnumerator object.
+             class Sample_PropertyDataEnumerator
+             {
+                 public static int Main(string[] args) {
+                     ManagementObject disk = new ManagementObject("Win32_LogicalDisk.DeviceID='C:'");
+                     PropertyDataCollection.PropertyDataEnumerator propertyEnumerator = disk.Properties.GetEnumerator();
+                     while(propertyEnumerator.MoveNext()) {
+                         PropertyData p = (PropertyData)propertyEnumerator.Current;
+                         Console.WriteLine("Property found: " + p.Name);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate all properties in a
+             ' ManagementObject using PropertyDataEnumerator object.
+             Class Sample_PropertyDataEnumerator
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim disk As New ManagementObject("Win32_LogicalDisk.DeviceID='C:'")
+                     Dim propertyEnumerator As _
+                       PropertyDataCollection.PropertyDataEnumerator = disk.Properties.GetEnumerator()
+                     While propertyEnumerator.MoveNext()
+                         Dim p As PropertyData = _
+                             CType(propertyEnumerator.Current, PropertyData)
+                         Console.WriteLine("Property found: " &amp; p.Name)
+                      End While
+                      Return 0
+                  End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.PropertyDataEnumerator.System#Collections#IEnumerator#Current">
+            <internalonly/>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.PropertyDataEnumerator.Current">
+            <summary>
+            <para>Gets the current <see cref='T:System.Management.PropertyData'/> in the <see cref='T:System.Management.PropertyDataCollection'/> enumeration.</para>
+            </summary>
+            <value>
+               The current <see cref='T:System.Management.PropertyData'/>
+               element in the collection.
+            </value>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.PropertyDataEnumerator.MoveNext">
+            <summary>
+            <para> Moves to the next element in the <see cref='T:System.Management.PropertyDataCollection'/>
+            enumeration.</para>
+            </summary>
+            <returns>
+            <para><see langword='true'/> if the enumerator was successfully advanced to the next element;
+            <see langword='false'/> if the enumerator has passed the end of the collection.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.PropertyDataEnumerator.Reset">
+            <summary>
+            <para>Resets the enumerator to the beginning of the <see cref='T:System.Management.PropertyDataCollection'/>
+            enumeration.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.PropertyDataCollection.Item(System.String)">
+            <summary>
+            <para> Returns the specified property from the <see cref='T:System.Management.PropertyDataCollection'/>, using [] syntax.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to retrieve.</param>
+            <value>
+            <para> A <see cref='T:System.Management.PropertyData'/>, based on
+               the name specified.</para>
+            </value>
+            <example>
+               <code lang='C#'>ManagementObject o = new ManagementObject("Win32_LogicalDisk.Name = 'C:'");
+            Console.WriteLine("Free space on C: drive is: ", c.Properties["FreeSpace"].Value);
+               </code>
+               <code lang='VB'>Dim o As New ManagementObject("Win32_LogicalDisk.Name=""C:""")
+            Console.WriteLine("Free space on C: drive is: " &amp; c.Properties("FreeSpace").Value)
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.Remove(System.String)">
+            <summary>
+            <para>Removes a <see cref='T:System.Management.PropertyData'/> from the <see cref='T:System.Management.PropertyDataCollection'/>.</para>
+            </summary>
+            <param name='propertyName'>The name of the property to be removed.</param>
+            <remarks>
+               <para> Properties can only be removed from class definitions,
+                  not from instances. This method is only valid when invoked on a property
+                  collection in a <see cref='T:System.Management.ManagementClass'/>.</para>
+            </remarks>
+            <example>
+               <code lang='C#'>ManagementClass c = new ManagementClass("MyClass");
+            c.Properties.Remove("PropThatIDontWantOnThisClass");
+               </code>
+               <code lang='VB'>Dim c As New ManagementClass("MyClass")
+            c.Properties.Remove("PropThatIDontWantOnThisClass")
+               </code>
+            </example>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.Add(System.String,System.Object)">
+            <overload>
+            <para>Adds a new <see cref='T:System.Management.PropertyData'/> with the specified value.</para>
+            </overload>
+            <summary>
+            <para>Adds a new <see cref='T:System.Management.PropertyData'/> with the specified value. The value cannot
+               be null and must be convertable to a CIM type.</para>
+            </summary>
+            <param name='propertyName'>The name of the new property.</param>
+            <param name='propertyValue'>The value of the property (cannot be null).</param>
+            <remarks>
+               <para> Properties can only be added to class definitions, not
+                  to instances. This method is only valid when invoked on a <see cref='T:System.Management.PropertyDataCollection'/>
+                  in
+                  a <see cref='T:System.Management.ManagementClass'/>.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.Add(System.String,System.Object,System.Management.CimType)">
+            <summary>
+            <para>Adds a new <see cref='T:System.Management.PropertyData'/> with the specified value and CIM type.</para>
+            </summary>
+            <param name='propertyName'>The name of the property.</param>
+            <param name='propertyValue'>The value of the property (which can be null).</param>
+            <param name='propertyType'>The CIM type of the property.</param>
+            <remarks>
+               <para> Properties can only be added to class definitions, not
+                  to instances. This method is only valid when invoked on a <see cref='T:System.Management.PropertyDataCollection'/>
+                  in
+                  a <see cref='T:System.Management.ManagementClass'/>.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.PropertyDataCollection.Add(System.String,System.Management.CimType,System.Boolean)">
+            <summary>
+            <para>Adds a new <see cref='T:System.Management.PropertyData'/> with no assigned value.</para>
+            </summary>
+            <param name='propertyName'>The name of the property.</param>
+            <param name='propertyType'>The CIM type of the property.</param>
+            <param name='isArray'><see langword='true'/> to specify that the property is an array type; otherwise, <see langword='false'/>.</param>
+            <remarks>
+               <para> Properties can only be added to class definitions, not
+                  to instances. This method is only valid when invoked on a <see cref='T:System.Management.PropertyDataCollection'/>
+                  in
+                  a <see cref='T:System.Management.ManagementClass'/>.</para>
+            </remarks>
+        </member>
+        <member name="T:System.Management.QualifierData">
+             <summary>
+                <para> Contains information about a WMI qualifier.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate qualifiers
+             // of a ManagementClass object.
+             class Sample_QualifierData
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     diskClass.Options.UseAmendedQualifiers = true;
+                     QualifierData diskQualifier = diskClass.Qualifiers["Description"];
+                     Console.WriteLine(diskQualifier.Name + " = " + diskQualifier.Value);
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate qualifiers
+             ' of a ManagementClass object.
+             Class Sample_QualifierData
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("win32_logicaldisk")
+                     diskClass.Options.UseAmendedQualifiers = True
+                     Dim diskQualifier As QualifierData = diskClass.Qualifiers("Description")
+                     Console.WriteLine(diskQualifier.Name + " = " + diskQualifier.Value)
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.QualifierData.Name">
+            <summary>
+               <para>Represents the name of the qualifier.</para>
+            </summary>
+            <value>
+               <para>The name of the qualifier.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierData.Value">
+            <summary>
+               <para>Gets or sets the value of the qualifier.</para>
+            </summary>
+            <value>
+               <para>The value of the qualifier.</para>
+            </value>
+            <remarks>
+               <para> Qualifiers can only be of the following subset of CIM
+                  types: <see langword='string'/>, <see langword='uint16'/>,
+               <see langword='uint32'/>, <see langword='sint32'/>, <see langword='uint64'/>,
+               <see langword='sint64'/>, <see langword='real32'/>, <see langword='real64'/>,
+               <see langword='bool'/>.
+                  </para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.QualifierData.IsAmended">
+            <summary>
+               <para> Gets or sets a value indicating whether the qualifier is amended.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this qualifier is amended;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+            <remarks>
+               <para> Amended qualifiers are
+                  qualifiers whose value can be localized through WMI. Localized qualifiers
+                  reside in separate namespaces in WMI and can be merged into the basic class
+                  definition when retrieved.</para>
+            </remarks>
+        </member>
+        <member name="P:System.Management.QualifierData.IsLocal">
+            <summary>
+               <para>Gets or sets a value indicating whether the qualifier has been defined locally on
+                  this class or has been propagated from a base class.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the qualifier has been defined
+               locally on this class; otherwise, <see langword='false'/>. </para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierData.PropagatesToInstance">
+            <summary>
+               <para>Gets or sets a value indicating whether the qualifier should be propagated to instances of the
+                  class.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if this qualifier should be
+               propagated to instances of the class; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierData.PropagatesToSubclass">
+            <summary>
+               <para>Gets or sets a value indicating whether the qualifier should be propagated to
+                  subclasses of the class.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the qualifier should be
+               propagated to subclasses of this class; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierData.IsOverridable">
+            <summary>
+               <para>Gets or sets a value indicating whether the value of the qualifier can be
+                  overridden when propagated.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the value of the qualifier
+               can be overridden when propagated; otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="T:System.Management.QualifierDataCollection">
+             <summary>
+             <para> Represents a collection of <see cref='T:System.Management.QualifierData'/> objects.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to list all qualifiers including amended
+             // qualifiers of a ManagementClass object.
+             class Sample_QualifierDataCollection
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     diskClass.Options.UseAmendedQualifiers = true;
+                     QualifierDataCollection qualifierCollection = diskClass.Qualifiers;
+                     foreach (QualifierData q in qualifierCollection) {
+                         Console.WriteLine(q.Name + " = " + q.Value);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+                   Imports System.Management
+                   ' This sample demonstrates how to list all qualifiers including amended
+                   ' qualifiers of a ManagementClass object.
+                   Class Sample_QualifierDataCollection
+                   Overloads Public Shared Function Main(args() As String) As Integer
+                   Dim diskClass As New ManagementClass("Win32_LogicalDisk")
+                   diskClass.Options.UseAmendedQualifiers = true
+                   Dim qualifierCollection As QualifierDataCollection = diskClass.Qualifiers
+                   Dim q As QualifierData
+                   For Each q In qualifierCollection
+                   Console.WriteLine(q.Name &amp; " = " &amp; q.Value)
+                   Next q
+                   Return 0
+                   End Function
+                   End Class
+                </code>
+             </example>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.GetTypeQualifierSet">
+            <summary>
+            Return the qualifier set associated with its type
+            Overload with use of private data member, qualifierType
+            </summary>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.GetTypeQualifierSet(System.Management.QualifierType)">
+            <summary>
+            Return the qualifier set associated with its type
+            </summary>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.Count">
+            <summary>
+            <para>Gets or sets the number of <see cref='T:System.Management.QualifierData'/> objects in the <see cref='T:System.Management.QualifierDataCollection'/>.</para>
+            </summary>
+            <value>
+               <para>The number of objects in the collection.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.IsSynchronized">
+            <summary>
+               <para>Gets or sets a value indicating whether the object is synchronized.</para>
+            </summary>
+            <value>
+            <para><see langword='true'/> if the object is synchronized;
+               otherwise, <see langword='false'/>.</para>
+            </value>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.SyncRoot">
+            <summary>
+               <para>Gets or sets the object to be used for synchronization.</para>
+            </summary>
+            <value>
+               <para>The object to be used for synchronization.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.CopyTo(System.Array,System.Int32)">
+            <overload>
+            <para>Copies the <see cref='T:System.Management.QualifierDataCollection'/> into an array.</para>
+            </overload>
+            <summary>
+            <para> Copies the <see cref='T:System.Management.QualifierDataCollection'/> into an array.</para>
+            </summary>
+            <param name='array'>The array to which to copy the <see cref='T:System.Management.QualifierDataCollection'/>. </param>
+            <param name='index'>The index from which to start copying. </param>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.CopyTo(System.Management.QualifierData[],System.Int32)">
+            <summary>
+            <para>Copies the <see cref='T:System.Management.QualifierDataCollection'/> into a specialized
+            <see cref='T:System.Management.QualifierData'/>
+            array.</para>
+            </summary>
+            <param name='qualifierArray'><para>The specialized array of <see cref='T:System.Management.QualifierData'/> objects
+            to which to copy the <see cref='T:System.Management.QualifierDataCollection'/>.</para></param>
+            <param name=' index'>The index from which to start copying.</param>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.GetEnumerator">
+            <summary>
+            <para>Returns an enumerator for the <see cref='T:System.Management.QualifierDataCollection'/>. This method is strongly typed.</para>
+            </summary>
+            <returns>
+            <para>An <see cref='T:System.Collections.IEnumerator'/> that can be used to iterate through the
+               collection.</para>
+            </returns>
+        </member>
+        <member name="T:System.Management.QualifierDataCollection.QualifierDataEnumerator">
+             <summary>
+             <para>Represents the enumerator for <see cref='T:System.Management.QualifierData'/>
+             objects in the <see cref='T:System.Management.QualifierDataCollection'/>.</para>
+             </summary>
+             <example>
+                <code lang='C#'>using System;
+             using System.Management;
+            
+             // This sample demonstrates how to enumerate qualifiers of a ManagementClass
+             // using QualifierDataEnumerator object.
+             class Sample_QualifierDataEnumerator
+             {
+                 public static int Main(string[] args) {
+                     ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
+                     diskClass.Options.UseAmendedQualifiers = true;
+                     QualifierDataCollection diskQualifier = diskClass.Qualifiers;
+                     QualifierDataCollection.QualifierDataEnumerator
+                         qualifierEnumerator = diskQualifier.GetEnumerator();
+                     while(qualifierEnumerator.MoveNext()) {
+                         Console.WriteLine(qualifierEnumerator.Current.Name + " = " +
+                             qualifierEnumerator.Current.Value);
+                     }
+                     return 0;
+                 }
+             }
+                </code>
+                <code lang='VB'>Imports System
+             Imports System.Management
+            
+             ' This sample demonstrates how to enumerate qualifiers of a ManagementClass
+             ' using QualifierDataEnumerator object.
+             Class Sample_QualifierDataEnumerator
+                 Overloads Public Shared Function Main(args() As String) As Integer
+                     Dim diskClass As New ManagementClass("win32_logicaldisk")
+                     diskClass.Options.UseAmendedQualifiers = True
+                     Dim diskQualifier As QualifierDataCollection = diskClass.Qualifiers
+                     Dim qualifierEnumerator As _
+                         QualifierDataCollection.QualifierDataEnumerator = _
+                             diskQualifier.GetEnumerator()
+                     While qualifierEnumerator.MoveNext()
+                         Console.WriteLine(qualifierEnumerator.Current.Name &amp; _
+                             " = " &amp; qualifierEnumerator.Current.Value)
+                     End While
+                     Return 0
+                 End Function
+             End Class
+                </code>
+             </example>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.QualifierDataEnumerator.System#Collections#IEnumerator#Current">
+            <internalonly/>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.QualifierDataEnumerator.Current">
+            <summary>
+            <para>Gets or sets the current <see cref='T:System.Management.QualifierData'/> in the <see cref='T:System.Management.QualifierDataCollection'/> enumeration.</para>
+            </summary>
+            <value>
+            <para>The current <see cref='T:System.Management.QualifierData'/> element in the collection.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.QualifierDataEnumerator.MoveNext">
+            <summary>
+            <para> Moves to the next element in the <see cref='T:System.Management.QualifierDataCollection'/> enumeration.</para>
+            </summary>
+            <returns>
+            <para><see langword='true'/> if the enumerator was successfully advanced to the next
+               element; <see langword='false'/> if the enumerator has passed the end of the
+               collection.</para>
+            </returns>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.QualifierDataEnumerator.Reset">
+            <summary>
+            <para>Resets the enumerator to the beginning of the <see cref='T:System.Management.QualifierDataCollection'/> enumeration.</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.QualifierDataCollection.Item(System.String)">
+            <summary>
+            <para> Gets the specified <see cref='T:System.Management.QualifierData'/> from the <see cref='T:System.Management.QualifierDataCollection'/>.</para>
+            </summary>
+            <param name='qualifierName'>The name of the <see cref='T:System.Management.QualifierData'/> to access in the <see cref='T:System.Management.QualifierDataCollection'/>. </param>
+            <value>
+            <para>A <see cref='T:System.Management.QualifierData'/>, based on the name specified.</para>
+            </value>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.Remove(System.String)">
+            <summary>
+            <para>Removes a <see cref='T:System.Management.QualifierData'/> from the <see cref='T:System.Management.QualifierDataCollection'/> by name.</para>
+            </summary>
+            <param name='qualifierName'>The name of the <see cref='T:System.Management.QualifierData'/> to remove. </param>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.Add(System.String,System.Object)">
+            <overload>
+            <para>Adds a <see cref='T:System.Management.QualifierData'/> to the <see cref='T:System.Management.QualifierDataCollection'/>.</para>
+            </overload>
+            <summary>
+            <para>Adds a <see cref='T:System.Management.QualifierData'/> to the <see cref='T:System.Management.QualifierDataCollection'/>. This overload specifies the qualifier name and value.</para>
+            </summary>
+            <param name='qualifierName'>The name of the <see cref='T:System.Management.QualifierData'/> to be added to the <see cref='T:System.Management.QualifierDataCollection'/>. </param>
+            <param name='qualifierValue'>The value for the new qualifier. </param>
+        </member>
+        <member name="M:System.Management.QualifierDataCollection.Add(System.String,System.Object,System.Boolean,System.Boolean,System.Boolean,System.Boolean)">
+            <summary>
+            <para>Adds a <see cref='T:System.Management.QualifierData'/> to the <see cref='T:System.Management.QualifierDataCollection'/>. This overload
+               specifies all property values for a <see cref='T:System.Management.QualifierData'/> object.</para>
+            </summary>
+            <param name='qualifierName'>The qualifier name. </param>
+            <param name='qualifierValue'>The qualifier value. </param>
+            <param name='isAmended'><see langword='true'/> to specify that this qualifier is amended (flavor); otherwise, <see langword='false'/>. </param>
+            <param name='propagatesToInstance'><see langword='true'/> to propagate this qualifier to instances; otherwise, <see langword='false'/>. </param>
+            <param name='propagatesToSubclass'><see langword='true'/> to propagate this qualifier to subclasses; otherwise, <see langword='false'/>. </param>
+            <param name='isOverridable'><see langword='true'/> to specify that this qualifier's value is overridable in instances of subclasses; otherwise, <see langword='false'/>. </param>
+        </member>
+        <member name="T:System.Management.CodeLanguage">
+            <summary>
+                <para>Defines the languages supported by the code generator.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.CSharp">
+            <summary>
+               A value for generating C# code.
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.JScript">
+            <summary>
+               <para>A value for generating JScript code.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.VB">
+            <summary>
+               <para>A value for generating Visual Basic code.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.VJSharp">
+            <summary>
+               <para>A value for generating Visual J# code.</para>
+            </summary>
+        </member>
+        <member name="F:System.Management.CodeLanguage.Mcpp">
+            <summary>
+               <para>A value for generating Managed C++ code.</para>
+            </summary>
+        </member>
+        <member name="T:System.Management.ManagementClassGenerator">
+            <summary>
+               Used to generate a strongly-typed code class for a given WMI class.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.#ctor">
+            <summary>
+               <para>Creates an empty generator object. This is the default constructor.</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.#ctor(System.Management.ManagementClass)">
+            <summary>
+               <para>Creates a generator object and initializes it
+                with the specified <see cref="T:System.Management.ManagementClass"/>.</para>
+            </summary>
+            <param name='cls'><see cref="T:System.Management.ManagementClass"/> object for which the code is to be generated.</param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCode(System.Boolean,System.Boolean)">
+            <summary>
+               <para>
+                  Returns a <see cref="T:System.CodeDom.CodeTypeDeclaration"/> for
+                  this class.</para>
+            </summary>
+            <param name='includeSystemProperties'>Indicates if a class for handling system properties should be included.</param>
+            <param name='systemPropertyClass'>Indicates if the generated code is for a class that handles system properties.</param>
+            <returns>
+               <para>Returns the <see cref="T:System.CodeDom.CodeTypeDeclaration"/> for the WMI class.</para>
+            </returns>
+            <remarks>
+               <para>If includeSystemProperties is <see langword="true"/>,
+                  the ManagementSystemProperties class is included in the generated class definition.
+                  This parameter is ignored if systemPropertyClass is <see langword="true"/>.</para>
+            </remarks>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCode(System.Management.CodeLanguage,System.String,System.String)">
+            <summary>
+            Generates a strongly-typed code class for the specified language provider (C#, Visual Basic or JScript)
+            and writes it to the specified file.
+            </summary>
+            <param name="lang">The language to generate in.</param>
+            <param name="filePath">The path to the file where the generated code should be stored.</param>
+            <param name="netNamespace">The .NET namespace into which the class is generated.</param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.CheckIfClassIsProperlyInitialized">
+            <summary>
+            Checks if mandatory properties are properly initialized.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GetCodeTypeDeclarationForClass(System.Boolean)">
+            <summary>
+            This function will generate the code. This is the function which
+            should be called for generating the code.
+            </summary>
+            <param name="bIncludeSystemClassinClassDef">
+            Flag to indicate if system properties are to be included or not
+            </param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.InitializeClassObject">
+            <summary>
+            Function for initializing the class object that will be used to get all the
+            method and properties of the WMI Class for generating the code.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.InitilializePublicPrivateMembers">
+            <summary>
+            This functrion initializes the public attributes and private variables
+            list that will be used in the generated code.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ProcessNamingCollisions">
+            <summary>
+            This function will solve the naming collisions that might occur
+            due to the collision between the local objects of the generated
+            class and the properties/methos of the original WMI Class.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ResolveCollision(System.String,System.Boolean)">
+            <summary>
+            This function is used to resolve (actually generate a new name) collision
+            between the generated class properties/variables with WMI methods/properties.
+            This function safely assumes that there will be atleast one string left
+            in the series prop0, prop1 ...prop(maxInt) . Otherwise this function will
+            enter an infinite loop. May be we can avoid this through something, which
+            i will think about it later
+            </summary>
+            <param name="inString"> </param>
+            <param name="bCheckthisFirst"></param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ProcessNamespaceAndClassName">
+            <summary>
+            This function processes the WMI namespace and WMI classname and converts them to
+            the namespace used to generate the class and the classname.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GeneratePublicReadOnlyProperty(System.String,System.String,System.Object,System.Boolean,System.Boolean,System.String)">
+            <summary>
+            This function generates the code for the read only property.
+            The generated code will be of the form
+                   public &lt;propType&gt; &lt;propName&gt;{
+                       get {
+                               return (&lt;propValue&gt;);
+                           }
+                   }
+            </summary>
+            <param name="propName"> </param>
+            <param name="propType"> </param>
+            <param name="propValue"> </param>
+            <param name="isLiteral"></param>
+            <param name="isBrowsable"></param>
+            <param name="Comment"></param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateSystemPropertiesClass">
+            <summary>
+            Function for generating the helper class "ManagementSystemProperties" which is
+            used for seperating the system properties from the other properties. This is used
+            just to make the drop down list in the editor to look good.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateProperties">
+            <summary>
+            This function will enumerate all the properties (except systemproperties)
+            of the WMI class and will generate them as properties of the managed code
+            wrapper class.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ProcessPropertyQualifiers(System.Management.PropertyData,System.Boolean@,System.Boolean@,System.Boolean@,System.Boolean,System.Boolean@)">
+            <summary>
+            This function will process the qualifiers for a given WMI property and set the
+            attributes of the generated property accordingly.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GeneratePropertyHelperEnums(System.Management.PropertyData,System.String,System.Boolean)">
+            <summary>
+            This function will generate enums corresponding to the Values/Valuemap pair
+            and for the BitValues/Bitmap pair.
+            </summary>
+            <returns>
+            returns if the property is an enum. This is checked by if enum is added or not
+            </returns>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructPath">
+             <summary>
+             This function generated the static function which s used to construct the path
+                 private static String ConstructPath(String keyName)
+                    {
+                        //FOR NON SINGLETON CLASSES
+                        String strPath;
+                        strPath = ((("\\&lt;defNamespace&gt;:&lt;defClassName&gt;";
+                        strPath = ((_strPath) + (((".Key1=") + (key_Key1))));
+                        strPath = ((_strPath) + (((",Key2=") + ((("\"") + (((key_Key2) + ("\""))))))));
+                        return strPath;
+            
+                        //FOR SINGLETON CLASS
+                        return "\\&lt;defNameSpace&gt;:&lt;defClassName&gt;=@";
+                    }
+             </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateDefaultConstructor">
+            <summary>
+            This function generates the default constructor.
+            public Cons() {
+                   _privObject = new ManagementObject();
+                _privSystemProps = new ManagementSystemProperties(_privObject);
+            }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithKeys">
+             <summary>
+            This function create the constuctor which accepts the key values.
+            public cons(UInt32 key_Key1, String key_Key2) :this(null,&lt;ClassName&gt;.ConstructPath(&lt;key1,key2&gt;),null) {
+             }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScopeKeys">
+             <summary>
+            This function create the constuctor which accepts a scope and key values.
+            public cons(ManagementScope scope,UInt32 key_Key1, String key_Key2) :this(scope,&lt;ClassName&gt;.ConstructPath(&lt;key1,key2&gt;),null) {
+             }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithPath">
+            <summary>
+            This function generates code for the constructor which accepts ManagementPath as the parameter.
+            The generated code will look something like this
+                   public Cons(ManagementPath path) : this (null, path,null){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithPathOptions">
+            <summary>
+            This function generates code for the constructor which accepts ManagementPath and GetOptions
+            as parameters.
+            The generated code will look something like this
+                   public Cons(ManagementPath path, ObjectGetOptions options) : this (null, path,options){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScopePath">
+            <summary>
+            This function generates code for the constructor which accepts Scope as a string, path as a
+            string and GetOptions().
+            The generated code will look something like this
+                   public Cons(String scope, String path, ObjectGetOptions options) :
+                                       this (new ManagementScope(scope), new ManagementPath(path),options){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScope">
+            <summary>
+            This function generates code for the constructor which accepts ManagementScope as parameters.
+            The generated code will look something like this
+                   public Cons(ManagementScope scope, ObjectGetOptions options) : this (scope, &lt;ClassName&gt;.ConstructPath(),null){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithOptions">
+            <summary>
+            This function generates code for the constructor which accepts GetOptions
+            as parameters.
+            The generated code will look something like this
+                   public Cons(ObjectGetOptions options) : this (null, &lt;ClassName&gt;.ConstructPath(),options){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScopeOptions">
+            <summary>
+            This function generates code for the constructor which accepts ManagementScope and GetOptions
+            as parameters.
+            The generated code will look something like this
+                   public Cons(ManagementScope scope, ObjectGetOptions options) : this (scope, &lt;ClassName&gt;.ConstructPath(),options){
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateConstructorWithScopePathOptions">
+            <summary>
+            This function generated the constructor like
+                   public cons(ManagementScope scope, ManagamentPath path,ObjectGetOptions getOptions)
+                   {
+                       PrivateObject = new ManagementObject(scope,path,getOptions);
+                       PrivateSystemProperties = new ManagementSystemProperties(PrivateObject);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenarateConstructorWithLateBound">
+            <summary>
+            This function generates code for the constructor which accepts ManagementObject as the parameter.
+            The generated code will look something like this
+                   public Cons(ManagementObject theObject) {
+                   if (CheckIfProperClass(theObject.Scope, theObject.Path, theObject.Options) = true) {
+                           privObject = theObject;
+                           privSystemProps = new WmiSystemProps(privObject);
+                           curObj = privObject;
+                       }
+                       else {
+                           throw new ArgumentException("Class name doesn't match");
+                       }
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenarateConstructorWithLateBoundForEmbedded">
+             <summary>
+             This function generates code for the constructor which accepts ManagementObject as the parameter.
+             The generated code will look something like this
+                    public Cons(ManagementBaseObject theObject) {
+                    if (CheckIfProperClass(theObject) = true)
+                    {
+                        embeddedObj = theObject
+                        PrivateSystemProperties = New ManagementSystemProperties(theObject)
+                        curObj = embeddedObj
+                        isEmbedded = true
+                    }
+                    else
+                    {
+                        throw new ArgumentException("Class name doesn't match");
+                    }
+                }
+            
+             </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateInitializeObject">
+            <summary>
+            This function generated the constructor like
+                   public cons(ManagementScope scope, ManagamentPath path,ObjectGetOptions getOptions)
+                   {
+                       PrivateObject = new ManagementObject(scope,path,getOptions);
+                       PrivateSystemProperties = new ManagementSystemProperties(PrivateObject);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateMethods">
+             <summary>
+             This function generates the WMI methods as the methods in the generated class.
+             The generated code will look something like this
+                    public &lt;retType&gt; Method1(&lt;type&gt; param1, &lt;type&gt; param2,...) {
+                        ManagementBaseObject inParams = null;
+                        inParams = _privObject.GetMethodParameters("ChangeStartMode");
+                        inParams["&lt;inparam1&gt;"] = &lt;Value&gt;;
+                        inParams["&lt;inoutparam2&gt;"] = &lt;Value&gt;;
+                        ................................
+                        ManagementBaseObject outParams = _privObject.InvokeMethod("ChangeStartMode", inParams, null);
+                        inoutParam3 = (&lt;type&gt;)(outParams.Properties["&lt;inoutParam3&gt;"]);
+                        outParam4 = (String)(outParams.Properties["&lt;outParam4&gt;"]);
+                        ................................
+                        return (&lt;retType&gt;)(outParams.Properties["ReturnValue"].Value);
+                 }
+            
+                 The code generated changes if the method is static function
+                    public &lt;retType&gt; Method1(&lt;type&gt; param1, &lt;type&gt; param2,...) {
+                        ManagementBaseObject inParams = null;
+                        ManagementObject classObj = new ManagementObject(null, "WIN32_SHARE", null); // the classname
+                        inParams = classObj.GetMethodParameters("Create");
+                        inParams["&lt;inparam1&gt;"] = &lt;Value&gt;;
+                        inParams["&lt;inoutparam2&gt;"] = &lt;Value&gt;;
+                        ................................
+                        ManagementBaseObject outParams = classObj.InvokeMethod("ChangeStartMode", inParams, null);
+                        inoutParam3 = (&lt;type&gt;)(outParams.Properties["&lt;inoutParam3&gt;"]);
+                        outParam4 = (String)(outParams.Properties["&lt;outParam4&gt;"]);
+                        ................................
+                        return (&lt;retType&gt;)(outParams.Properties["ReturnValue"].Value);
+                 }
+            
+             </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithNoParameters">
+            <summary>
+            This function returns a Collectionclass for the query
+                   "Select * from &lt;ClassName&gt;"
+               This is a static method. The output is like this
+                   public static ServiceCollection All()
+                   {
+                       return GetInstances((System.Management.ManagementScope)null,(System.Management.EnumerateionOptions)null);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithCondition">
+            <summary>
+            This function will accept the condition and will return collection for the query
+                   "select * from &lt;ClassName&gt; where &lt;condition&gt;"
+               The generated code will be like
+                   public static ServiceCollection GetInstances(String Condition) {
+                       return GetInstances(null,Condition,null);
+                }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithProperties">
+            <summary>
+            This function returns the collection for the query
+                   "select &lt;parameterList&gt; from &lt;ClassName&gt;"
+               The generated output is like
+                   public static ServiceCollection GetInstances(String []selectedProperties) {
+                       return GetInstances(null,null,selectedProperties);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithWhereProperties">
+            <summary>
+            This function returns the collection for the query
+                   "select &lt;parameterList> from &lt;ClassName&gt; where &lt;WhereClause&gt;"
+               The generated output is like
+                   public static ServiceCollection GetInstances(String condition, String []selectedProperties) {
+                       return GetInstances(null,condition,selectedProperties);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithScope">
+            <summary>
+            This function returns a Collectionclass for the query
+                   "Select * from &lt;ClassName&gt;"
+               This is a static method. The output is like this
+               public static (ObjectCollection)GetInstances(System.Management.ManagementScope mgmtScope, System.Management.EnumerationOptions enumOptions)
+               {
+                   if ((mgmtScope == null))
+                   {
+                       mgmtScope = new System.Management.ManagementScope();
+                       mgmtScope.Path.NamespacePath = "root\\CimV2";
+                   }
+                   System.Management.ManagementPath pathObj = new System.Management.ManagementPath();
+                   pathObj.ClassName = "CIM_LogicalDisk";
+                   pathObj.NamespacePath = "root\\CimV2";
+                   System.Management.ManagementClass clsObject = new System.Management.ManagementClass(mgmtScope, pathObj, null);
+                   if ((enumOptions == null))
+                   {
+                       enumOptions = new System.Management.EnumerationOptions();
+                       enumOptions.EnsureLocatable = true;
+                   }
+                   return new ObjectCollection(clsObject.GetInstances(enumOptions));
+               }
+               This method takes the scope which is useful for connection to remote machine
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithScopeCondition">
+            <summary>
+            This function will accept the condition and will return collection for the query
+                   "select * from &lt;ClassName&gt; where &lt;condition&gt;"
+               The generated code will be like
+                   public static ServiceCollection GetInstances(String Condition) {
+                       return GetInstances(scope,Condition,null);
+                }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithScopeProperties">
+            <summary>
+            This function returns the collection for the query
+                   "select &lt;parameterList&gt; from &lt;ClassName&gt;"
+               The generated output is like
+                   public static ServiceCollection GetInstances(String []selectedProperties) {
+                       return GetInstances(scope,null,selectedProperties);
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateGetInstancesWithScopeWhereProperties">
+            <summary>
+            This function generates the code like
+                public static ServiceCollection GetInstances(ManagementScope scope,String Condition, String[] selectedProperties)    {
+                       if (scope == null)
+                       {
+                           scope = new ManagementScope();
+                           scope.Path.NamespacePath = WMINamespace;
+                       }
+                    ManagementObjectSearcher ObjectSearcher = new ManagementObjectSearcher(scope,new SelectQuery("Win32_Service",Condition,selectedProperties));
+                       QueryOptions query = new QueryOptions();
+                       query.EnsureLocatable = true;
+                       ObjectSearcher.Options = query;
+                       return new ServiceCollection(ObjectSearcher.Get());
+                   }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GeneratePrivateMember(System.String,System.String,System.String)">
+            <summary>
+            This function will add the variable as a private member to the class.
+            The generated code will look like this
+                    private &lt;MemberType&gt; &lt;MemberName&gt;;
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GeneratePrivateMember(System.String,System.String,System.CodeDom.CodeExpression,System.Boolean,System.String)">
+            <summary>
+            This function will add the variable as a private member to the class.
+            The generated code will look like this
+                    private &lt;MemberType&gt; &lt;MemberName&gt; = &lt;initValue&gt;;
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsContainedIn(System.String,System.Collections.SortedList@)">
+            <summary>
+            This function will find a given string in the passed
+            in a case insensitive manner and will return true if the string is found.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertCIMType(System.Management.CimType,System.Boolean)">
+            <summary>
+            This function will convert the given CIMTYPE to an acceptable .NET type.
+            Since CLS doen't support lotz of the basic types, we are using .NET helper
+            classes here. We safely assume that there won't be any problem using them
+            since .NET has to be there for the System.Management.Dll to work.
+            </summary>
+            <param name="cType"> </param>
+            <param name="isArray"> </param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.isTypeInt(System.Management.CimType)">
+            <summary>
+            This function is used to determine whether the given CIMTYPE can be represented as an integer.
+            This helper function is mainly used to determine whether this type will be support by enums.
+            </summary>
+            <param name="cType"> </param>
+        </member>
+        <member name="P:System.Management.ManagementClassGenerator.GeneratedFileName">
+            <summary>
+               <para>[To be supplied.]</para>
+            </summary>
+        </member>
+        <member name="P:System.Management.ManagementClassGenerator.GeneratedTypeName">
+            <summary>
+               <para>[To be supplied.]</para>
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertValuesToName(System.String)">
+            <summary>
+            Function to convert a given ValueMap or BitMap name to propert enum name
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ResolveEnumNameValues(System.Collections.ArrayList,System.Collections.ArrayList@)">
+            <summary>
+            This function goes thru the names in array list and resolves any duplicates
+            if any so that these names can be added as values of enum
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsContainedInArray(System.String,System.Collections.ArrayList)">
+            <summary>
+            This function will find a given string in the passed
+            array list.
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.InitializeCodeGenerator(System.Management.CodeLanguage)">
+            <summary>
+            Function to create a appropriate generator
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GetUnsignedSupport(System.Management.CodeLanguage)">
+            <summary>
+            Function which checks if the language supports Unsigned numbers
+            </summary>
+            <param name="Language">Language</param>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCommitMethod">
+            <summary>
+            Function which adds commit function to commit all the changes
+            to the object to WMI
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertBitMapValueToInt32(System.String)">
+            <summary>
+            Function to convert a value in format "0x..." to a integer
+            to the object to WMI
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GetConversionFunction(System.Management.CimType)">
+            <summary>
+            Function to get the Converstion function to be used for Numeric datatypes
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsDesignerSerializationVisibilityToBeSet(System.String)">
+            <summary>
+            Checks if a given property is to be visible for Designer seriliazation
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsPropertyValueType(System.Management.CimType)">
+            <summary>
+            Checks if the given property type is represented as ValueType
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.IsDynamicClass">
+            <summary>
+            Gets the dynamic qualifier on the class to find if the
+            class is a dynamic class
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertToNumericValueAndAddToArray(System.Management.CimType,System.String,System.Collections.ArrayList,System.String@)">
+            <summary>
+            Converts a numberic value to appropriate type and adds it to array
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.AddClassComments(System.CodeDom.CodeTypeDeclaration)">
+            <summary>
+            Adds comments at the beginning of the class defination
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateClassNameProperty">
+            <summary>
+            Generates code for ManagementClassName Property
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateIfClassvalidFuncWithAllParams">
+            <summary>
+            Generates the functions CheckIfProperClass() which checks if the given path
+            can be represented with the generated code
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateIfClassvalidFunction">
+            <summary>
+            Generates the functions CheckIfProperClass() which checks if the given path
+            can be represented with the generated code
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCodeForRefAndDateTimeTypes(System.CodeDom.CodeIndexerExpression,System.Boolean,System.CodeDom.CodeStatementCollection,System.String,System.CodeDom.CodeVariableReferenceExpression,System.Boolean)">
+            <summary>
+            Generates code for Property Get for Cimtype.Reference and CimType.DateTime type property
+            Also generated code to initialize a variable after converting a property to DateTime and ManagementPathProperty
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.AddPropertySet(System.CodeDom.CodeIndexerExpression,System.Boolean,System.CodeDom.CodeStatementCollection,System.String,System.CodeDom.CodeVariableReferenceExpression)">
+            <summary>
+            Generates code for Property Set for Cimtype.DateTime and CimType.Reference type property
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.CreateObjectForProperty(System.String,System.CodeDom.CodeExpression)">
+            <summary>
+            Internal function used to create object. Used in adding code for Property Get for DateTime and Reference properties
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.ConvertPropertyToString(System.String,System.CodeDom.CodeExpression)">
+            <summary>
+            Internal function used to create code to convert DateTime or ManagementPath to String
+            convert a expression. Used in adding code for Property Set for DateTime and Reference properties
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateCreateInstance">
+            <summary>
+            This function generates static CreateInstance to create an WMI instance.
+            public static GenClass CreateInstance() {
+                   return new GenClass(new ManagementClass(new System.Management.ManagementClass(CreatedWmiNamespace, CreatedClassName, null).CreateInstance()));
+            }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateDeleteInstance">
+            <summary>
+            This function generates static CreateInstance to create an WMI instance.
+            public static GenClass CreateInstance() {
+                   PrivateLateBoundObject.Delete();
+            }
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateDateTimeConversionFunction">
+            <summary>
+            Function to genreate helper function for DMTF to DateTime and DateTime to DMTF
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.GenerateTimeSpanConversionFunction">
+            <summary>
+            Function to genreate helper function for DMTF Time interval to TimeSpan and vice versa
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.AddToDateTimeFunction">
+            <summary>
+            Generated code for function to do conversion of date from DMTF format to DateTime format
+            </summary>
+        </member>
+        <member name="M:System.Management.ManagementClassGenerator.DateTimeConversionFunctionHelper(System.CodeDom.CodeStatementCollection,System.String,System.String,System.String,System.String,System.Int32,System.Int32)">
+            <summary>
+            Generates some common code used in conversion function for DateTime
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch">
+             <summary>
+             The ThreadDispatch class allows clients to very easily spawn a thread, specify a worker delegate to be called from the
+             spawned thread and wait until thread finishes work. This is important in cases where a new thread needs to be spawned but
+             the main thread has to wait until the spawned thread finishes. As an example of this, in WMI we spawn MTA threads and create
+             various objects in these threads to make sure we avoid marshaling cost.
+             If the worker thread returns a value it is stored in the ThreadDispatch object and accessible to clients via the Result property.
+             Also, any exception thrown is propagated from worker thread to main thread (by rethrowing orinal exception):
+            
+                 ThreadDispatch disp = new ThreadDispatch ( new ThreadDispatch.ThreadWorkerMethod  ( Class1.Func ) ) ;
+                 disp.Start ( ) ;
+            
+             Four different delegate types are supported:
+            
+                 1. Delegate with no parameter and no return value.
+                 2. Delegate with no parameter and return value.
+                 3. Delegate with parameter and no return value.
+                 4. Delegate with parameter and return value.
+            
+             </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.Exception">
+            <summary>
+            [Get] Gets the exception associated with the operation performed by thread.
+            This can be null if no exception has been thrown.
+            </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.Parameter">
+            <summary>
+            [Get/Set] The parameter to be used by worker thread. This will typically be a 'this' reference for access to instance members.
+            </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.IsBackgroundThread">
+            <summary>
+            [Get/Set] The background property of a thread. Defaults to false.
+            </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.Result">
+            <summary>
+            [Get] The result of the worker method called.
+            </summary>
+        </member>
+        <member name="P:System.Management.ThreadDispatch.ApartmentType">
+            <summary>
+            [Get/Set] The thread apartment type
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch.ThreadWorkerMethodWithReturn">
+            <summary>
+            Delegate declaration representing signature of worker method with return value.
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch.ThreadWorkerMethodWithReturnAndParam">
+            <summary>
+            Delegate declaration representing signature of worker method with return value and parameter.
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch.ThreadWorkerMethod">
+            <summary>
+            Delegate declaration representing signature of worker method with no return value and no parameter
+            </summary>
+        </member>
+        <member name="T:System.Management.ThreadDispatch.ThreadWorkerMethodWithParam">
+            <summary>
+            Delegate declaration representing signature of worker method with parameter.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor(System.Management.ThreadDispatch.ThreadWorkerMethodWithReturn)">
+            <summary>
+            Constructs a ThreadDispatch object with the thread worker method.
+            Default settings on the ThreadDispatch object are:
+                1. Parameter is null
+                2. Thread ApartmentState will be MTA
+                3. Background thread status will be false
+            </summary>
+            <param name="workerMethod">Delegate to be called to perform the work</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor(System.Management.ThreadDispatch.ThreadWorkerMethodWithReturnAndParam)">
+            <summary>
+            Constructs a ThreadDispatch object with the thread worker method.
+            Default settings on the ThreadDispatch object are:
+                1. Parameter is null
+                2. Thread ApartmentState will be MTA
+                3. Background thread status will be false
+            </summary>
+            <param name="workerMethod">Delegate to be called to perform the work</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor(System.Management.ThreadDispatch.ThreadWorkerMethodWithParam)">
+            <summary>
+            Constructs a ThreadDispatch object with the thread worker method.
+            Default settings on the ThreadDispatch object are:
+                1. Parameter is null
+                2. Thread ApartmentState will be MTA
+                3. Background thread status will be false
+            </summary>
+            <param name="workerMethod">Delegate to be called to perform the work</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor(System.Management.ThreadDispatch.ThreadWorkerMethod)">
+            <summary>
+            Constructs a ThreadDispatch object with the thread worker method.
+            Default settings on the ThreadDispatch object are:
+                1. Parameter is null
+                2. Thread ApartmentState will be MTA
+                3. Background thread status will be false
+            </summary>
+            <param name="workerMethod">Delegate to be called to perform the work</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.Start">
+            <summary>
+            Starts the thread execution and waits for thread to finish. If an exception occurs in the worker method
+            this method rethrows the exception.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.#ctor">
+            <summary>
+            Initializes the ThreadDispatch instance with initial values. Note that this constructor is private to avoid
+            declaring instances without specifying at least a worker delegate instance.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.InitializeThreadState(System.Object,System.Management.ThreadDispatch.ThreadWorkerMethodWithReturn,System.Threading.ApartmentState,System.Boolean)">
+            <summary>
+            Initializes the thread state members.
+            </summary>
+            <param name="threadParams">Parameters to be passed to thread</param>
+            <param name="workerMethod">The delegate to be called from thread</param>
+            <param name="aptState">The apartment of the thread created</param>
+            <param name="background">Thread is created as a background or not</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.InitializeThreadState(System.Object,System.Management.ThreadDispatch.ThreadWorkerMethodWithReturnAndParam,System.Threading.ApartmentState,System.Boolean)">
+            <summary>
+            Initializes the thread state members.
+            </summary>
+            <param name="threadParams">Parameters to be passed to thread</param>
+            <param name="workerMethod">The delegate to be called from thread</param>
+            <param name="aptState">The apartment of the thread created</param>
+            <param name="background">Thread is created as a background or not</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.InitializeThreadState(System.Object,System.Management.ThreadDispatch.ThreadWorkerMethod,System.Threading.ApartmentState,System.Boolean)">
+            <summary>
+            Initializes the thread state members.
+            </summary>
+            <param name="threadParams">Parameters to be passed to thread</param>
+            <param name="workerMethod">The delegate to be called from thread</param>
+            <param name="aptState">The apartment of the thread created</param>
+            <param name="background">Thread is created as a background or not</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.InitializeThreadState(System.Object,System.Management.ThreadDispatch.ThreadWorkerMethodWithParam,System.Threading.ApartmentState,System.Boolean)">
+            <summary>
+            Initializes the thread state members.
+            </summary>
+            <param name="threadParams">Parameters to be passed to thread</param>
+            <param name="workerMethod">The delegate to be called from thread</param>
+            <param name="aptState">The apartment of the thread created</param>
+            <param name="background">Thread is created as a background or not</param>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.DispatchThread">
+            <summary>
+            Starts the execution of the thread and waits until the threadFinished event is signaled before continuing
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.ThreadEntryPoint">
+            <summary>
+            Entry point for the newly created thread. This method is wrapped in a try/catch block and captures any
+            exceptions thrown from the worker method and re-throws the exception.
+            The worker method for this thread entry point has no parameter and no return value.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.ThreadEntryPointMethodWithParam">
+            <summary>
+            Entry point for the newly created thread. This method is wrapped in a try/catch block and captures any
+            exceptions thrown from the worker method and re-throws the exception.
+            The worker method for this thread entry point takes a parameter and no return value.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.ThreadEntryPointMethodWithReturn">
+            <summary>
+            Entry point for the newly created thread. This method is wrapped in a try/catch block and captures any
+            exceptions thrown from the worker method and re-throws the exception.
+            The worker method for this thread entry point has no parameter but does return a value.
+            </summary>
+        </member>
+        <member name="M:System.Management.ThreadDispatch.ThreadEntryPointMethodWithReturnAndParam">
+            <summary>
+            Entry point for the newly created thread. This method is wrapped in a try/catch block and captures any
+            exceptions thrown from the worker method and re-throws the exception.
+            The worker method for this thread entry point has a parameter and return value.
+            </summary>
+        </member>
+        <member name="P:System.SR.InvalidQuery">
+            <summary>The Query string supplied was invalid or improperly formed</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryDuplicatedToken">
+            <summary>The Query string supplied was invalid because it contains a duplicate token</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryNullToken">
+            <summary>The Query string supplied was invalid because a supplied token was null</summary>
+        </member>
+        <member name="P:System.SR.WorkerThreadWakeupFailed">
+            <summary>Unable to wakeup the worker thread to create an object in MTA</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotInitializedException">
+            <summary>ClassName not initialized.</summary>
+        </member>
+        <member name="P:System.SR.ClassNameNotFoundException">
+            <summary>Class name does not match.</summary>
+        </member>
+        <member name="P:System.SR.CommentAttributeProperty">
+            <summary>Every property added to the class for WMI property has attributes set to define its behavior in Visual Studio designer and also to define a TypeConverter to be used.</summary>
+        </member>
+        <member name="P:System.SR.CommentAutoCommitProperty">
+            <summary>Property to show the commit behavior for the WMI object. If true, WMI object will be automatically saved after each property modification.(ie. Put() is called after modification of a property).</summary>
+        </member>
+        <member name="P:System.SR.CommentClassBegin">
+            <summary>An Early Bound class generated for the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentConstructors">
+            <summary>Below are different overloads of constructors to initialize an instance of the class with a WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedClass">
+            <summary>Private property to hold the name of WMI class which created this class.</summary>
+        </member>
+        <member name="P:System.SR.CommentCreatedWmiNamespace">
+            <summary>Private property to hold the WMI namespace in which the class resides.</summary>
+        </member>
+        <member name="P:System.SR.CommentCurrentObject">
+            <summary>The current WMI object used</summary>
+        </member>
+        <member name="P:System.SR.CommentDateConversionFunction">
+            <summary>Datetime conversion functions ToDateTime and ToDmtfDateTime are added to the class to convert DMTF datetime to System.DateTime and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentEmbeddedObject">
+            <summary>Private variable to hold the embedded property representing the instance.</summary>
+        </member>
+        <member name="P:System.SR.CommentEnumeratorImplementation">
+            <summary>Enumerator implementation for enumerating instances of the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentFlagForEmbedded">
+            <summary>Flag to indicate if the instance is an embedded object.</summary>
+        </member>
+        <member name="P:System.SR.CommentGetInstances">
+            <summary>Different overloads of GetInstances() help in enumerating instances of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentIsPropNull">
+            <summary>Functions Is&lt;PropertyName&gt;Null() are used to check if a property is NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundObject">
+            <summary>Underlying lateBound WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentLateBoundProperty">
+            <summary>Property returning the underlying lateBound object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementPath">
+            <summary>The ManagementPath of the underlying WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentManagementScope">
+            <summary>ManagementScope of the object.</summary>
+        </member>
+        <member name="P:System.SR.CommentOriginNamespace">
+            <summary>Property returns the namespace of the WMI class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrivateAutoCommit">
+            <summary>Member variable to store the 'automatic commit' behavior for the class.</summary>
+        </member>
+        <member name="P:System.SR.CommentPrototypeConverter">
+            <summary>TypeConverter to handle null values for ValueType properties</summary>
+        </member>
+        <member name="P:System.SR.CommentResetProperty">
+            <summary>Functions Reset&lt;PropertyName&gt; are added for Nullable Read/Write properties. These functions are used by VS designer in property browser to set a property to NULL.</summary>
+        </member>
+        <member name="P:System.SR.CommentShouldSerialize">
+            <summary>Functions ShouldSerialize&lt;PropertyName&gt; are functions used by VS property browser to check if a particular property has to be serialized. These functions are added for all ValueType properties ( properties of type Int32, BOOL etc.. which cannot be set to n ...</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticManagementScope">
+            <summary>Private member variable to hold the ManagementScope which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentStaticScopeProperty">
+            <summary>Public static scope property which is used by the various methods.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemObject">
+            <summary>Property pointing to an embedded object to get System properties of the WMI object.</summary>
+        </member>
+        <member name="P:System.SR.CommentSystemPropertiesClass">
+            <summary>Embedded class to represent WMI system Properties.</summary>
+        </member>
+        <member name="P:System.SR.CommentTimeSpanConvertionFunction">
+            <summary>Time interval functions  ToTimeSpan and ToDmtfTimeInterval are added to the class to convert DMTF Time Interval to  System.TimeSpan and vice-versa.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDateTime">
+            <summary>Converts a given datetime in DMTF format to System.DateTime object.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfDateTime">
+            <summary>Converts a given System.DateTime object to DMTF datetime format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToDmtfTimeInterval">
+            <summary>Converts a given System.TimeSpan object to DMTF Time interval format.</summary>
+        </member>
+        <member name="P:System.SR.CommentToTimeSpan">
+            <summary>Converts a given time interval in DMTF format to System.TimeSpan object.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment">
+            <summary>If the embedded property is strongly typed then, to strongly type the property to the type of</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment2">
+            <summary>the embedded object, you have to do the following things.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment3">
+            <summary>\t1. Generate Managed class for the WMI class of the embedded property. This can be done with MgmtClassGen.exe tool or from Server Explorer.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment4">
+            <summary>\t2. Include the namespace of the generated class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment5">
+            <summary>\t3. Change the property get/set functions so as return the instance of the Managed class.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment6">
+            <summary>Below is a sample code.</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment7">
+            <summary>VB Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedComment8">
+            <summary>C# Code</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment1">
+            <summary>public &lt;ManagedClassName of Embedded property&gt; &lt;PropertyName&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment10">
+            <summary>\t\tIf (AutoCommitProp == true &amp;&amp; isEmbedded == false)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment11">
+            <summary>\t\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment12">
+            <summary>\t\t\tPrivateLateBoundObject.Put();</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment13">
+            <summary>\t\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment14">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment15">
+            <summary>}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment2">
+            <summary>{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment3">
+            <summary>\tget</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment4">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment5">
+            <summary>\t\treturn new &lt;ManagedClassName of Embedded property&gt;((System.Management.ManagementBaseObject)(curObj["&lt;PropertyName&gt;"]));</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment6">
+            <summary>\t}</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment7">
+            <summary>\tset</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment8">
+            <summary>\t{</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedCSharpComment9">
+            <summary>\t\tcurObj["&lt;PropertyName&gt;"] = value.LateBoundObject;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment1">
+            <summary>Public Property &lt;PropertyName&gt;() As &lt;ManagedClassName of Embedded property&gt;</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment10">
+            <summary>\tEnd Set</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment2">
+            <summary>\tGet</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment3">
+            <summary>\t\tReturn New &lt;ManagedClassName of Embedded Property&gt;(CType(curObj("&lt;PropertyName&gt;"),System.Management.ManagementBaseObject))</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment4">
+            <summary>\tEnd Get</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment5">
+            <summary>\tSet(ByVal Value As &lt;ManagedClassName of Embedded property&gt;)</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment6">
+            <summary>\t\tcurObj("EObject")=Value.LateBoundObject</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment7">
+            <summary>\t\tIf (AutoCommitProp = True And isEmbedded = False) Then</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment8">
+            <summary>\t\t\tPrivateLateBoundObject.Put()</summary>
+        </member>
+        <member name="P:System.SR.EmbeddedVisualBasicComment9">
+            <summary>\t\tEnd If</summary>
+        </member>
+        <member name="P:System.SR.EmptyFilePathException">
+            <summary>FilePath cannot be empty.</summary>
+        </member>
+        <member name="P:System.SR.NamespaceNotInitializedException">
+            <summary>Namespace not initialized.</summary>
+        </member>
+        <member name="P:System.SR.NullFilePathException">
+            <summary>FilePath or code generator object is null.</summary>
+        </member>
+        <member name="P:System.SR.UnableToCreateCodeGeneratorException">
+            <summary>Unable to create code generator for '{0}'</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_SystemManagement">
+            <summary>System.Management currently is only supported for Windows desktop applications.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FullFrameworkRequired">
+            <summary>Could not find an installation of .NET Framework v4.0.30319. System.Management requires native modules from the .NET Framework to operate.</summary>
+        </member>
+        <member name="P:System.SR.LoadLibraryFailed">
+            <summary>Failed to load required native library '{0}'.</summary>
+        </member>
+        <member name="P:System.SR.PlatformNotSupported_FrameworkUpdatedRequired">
+            <summary>The native library '{0}' does not have all required functions. Please, update the .NET Framework.</summary>
+        </member>
+        <member name="P:System.SR.InvalidQueryTokenExpected">
+            <summary>The Query string supplied was invalid or improperly formed. Token `{0}` is expected</summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.OSPlatformAttribute">
+            <summary>
+            Base type for all platform-specific API attributes.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.TargetPlatformAttribute">
+            <summary>
+            Records the platform that the project targeted.
+            </summary>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformAttribute">
+             <summary>
+             Records the operating system (and minimum version) that supports an API. Multiple attributes can be
+             applied to indicate support on multiple operating systems.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformAttribute" />
+             or use guards to prevent calls to APIs on unsupported operating systems.
+            
+             A given platform should only be specified once.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformAttribute">
+            <summary>
+            Marks APIs that were removed in a given operating system version.
+            </summary>
+            <remarks>
+            Primarily used by OS bindings to indicate APIs that are only available in
+            earlier versions.
+            </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates a custom guard field, property or method with a supported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple supported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that field, property or method in a conditional or assert statements in order to safely call platform specific APIs.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute">
+             <summary>
+             Annotates the custom guard field, property or method with an unsupported platform name and optional version.
+             Multiple attributes can be applied to indicate guard for multiple unsupported platforms.
+             </summary>
+             <remarks>
+             Callers can apply a <see cref="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute" /> to a field, property or method
+             and use that  field, property or method in a conditional or assert statements as a guard to safely call APIs unsupported on those platforms.
+            
+             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
+             </remarks>
+        </member>
+    </members>
+</doc>
diff --git a/packages/System.Management.6.0.0/useSharedDesignerContext.txt b/packages/System.Management.6.0.0/useSharedDesignerContext.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/System.Management.6.0.0/useSharedDesignerContext.txt
diff --git a/packages/System.Text.Encodings.Web.4.5.0/.signature.p7s b/packages/System.Text.Encodings.Web.4.5.0/.signature.p7s
new file mode 100644
index 0000000..17e1139
--- /dev/null
+++ b/packages/System.Text.Encodings.Web.4.5.0/.signature.p7s
Binary files differ
diff --git a/packages/System.Text.Encodings.Web.4.5.0/LICENSE.TXT b/packages/System.Text.Encodings.Web.4.5.0/LICENSE.TXT
new file mode 100644
index 0000000..984713a
--- /dev/null
+++ b/packages/System.Text.Encodings.Web.4.5.0/LICENSE.TXT
@@ -0,0 +1,23 @@
+The MIT License (MIT)
+
+Copyright (c) .NET Foundation and Contributors
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/packages/System.Text.Encodings.Web.4.5.0/System.Text.Encodings.Web.4.5.0.nupkg b/packages/System.Text.Encodings.Web.4.5.0/System.Text.Encodings.Web.4.5.0.nupkg
new file mode 100644
index 0000000..985de6e
--- /dev/null
+++ b/packages/System.Text.Encodings.Web.4.5.0/System.Text.Encodings.Web.4.5.0.nupkg
Binary files differ
diff --git a/packages/System.Text.Encodings.Web.4.5.0/THIRD-PARTY-NOTICES.TXT b/packages/System.Text.Encodings.Web.4.5.0/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 0000000..db542ca
--- /dev/null
+++ b/packages/System.Text.Encodings.Web.4.5.0/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,309 @@
+.NET Core uses third-party libraries or other resources that may be
+distributed under licenses different than the .NET Core software.
+
+In the event that we accidentally failed to list a required notice, please
+bring it to our attention. Post an issue or email us:
+
+           dotnet@microsoft.com
+
+The attached notices are provided for information only.
+
+License notice for Slicing-by-8 
+-------------------------------
+
+http://sourceforge.net/projects/slicing-by-8/
+
+Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+
+This software program is licensed subject to the BSD License,  available at
+http://www.opensource.org/licenses/bsd-license.html.
+
+
+License notice for Unicode data
+-------------------------------
+
+http://www.unicode.org/copyright.html#License
+
+Copyright 漏 1991-2017 Unicode, Inc. All rights reserved.
+Distributed under the Terms of Use in http://www.unicode.org/copyright.html.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Unicode data files and any associated documentation
+(the "Data Files") or Unicode software and any associated documentation
+(the "Software") to deal in the Data Files or Software
+without restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, and/or sell copies of
+the Data Files or Software, and to permit persons to whom the Data Files
+or Software are furnished to do so, provided that either
+(a) this copyright and permission notice appear with all copies
+of the Data Files or Software, or
+(b) this copyright and permission notice appear in associated
+Documentation.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT OF THIRD PARTY RIGHTS.
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
+NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
+DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THE DATA FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder
+shall not be used in advertising or otherwise to promote the sale,
+use or other dealings in these Data Files or Software without prior
+written authorization of the copyright holder.
+
+License notice for Zlib 
+-----------------------
+
+https://github.com/madler/zlib
+http://zlib.net/zlib_license.html
+
+/* zlib.h -- interface of the 'zlib' general purpose compression library
+  version 1.2.11, January 15th, 2017
+
+  Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  Jean-loup Gailly        Mark Adler
+  jloup@gzip.org          madler@alumni.caltech.edu
+
+*/
+
+License notice for Mono
+-------------------------------
+
+http://www.mono-project.com/docs/about-mono/
+
+Copyright (c) .NET Foundation Contributors
+
+MIT License
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software  and associated documentation files (the Software), to deal
+in the Software without restriction,  including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense,  and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so,  subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for International Organization for Standardization
+-----------------------------------------------------------------
+
+Portions (C) International Organization for Standardization 1986:
+     Permission to copy in any form is granted for use with
+     conforming SGML systems and applications as defined in
+     ISO 8879, provided this notice is included in all copies.
+
+License notice for Intel
+------------------------
+
+"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+this list of conditions and the following disclaimer in the documentation
+and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Xamarin and Novell
+-------------------------------------
+
+Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Copyright (c) 2011 Novell, Inc (http://www.novell.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Third party notice for W3C
+--------------------------
+
+"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE
+Status: This license takes effect 13 May, 2015.
+This work is being provided by the copyright holders under the following license.
+License
+By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
+Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications:
+The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
+Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included.
+Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright 漏 [YEAR] W3C庐 (MIT, ERCIM, Keio, Beihang)."
+Disclaimers
+THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
+The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders."
+
+License notice for Bit Twiddling Hacks
+--------------------------------------
+
+Bit Twiddling Hacks
+
+By Sean Eron Anderson
+seander@cs.stanford.edu
+
+Individually, the code snippets here are in the public domain (unless otherwise
+noted) 鈥� feel free to use them however you please. The aggregate collection and
+descriptions are 漏 1997-2005 Sean Eron Anderson. The code and descriptions are
+distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and
+without even the implied warranty of merchantability or fitness for a particular
+purpose. 
+
+License notice for Brotli
+--------------------------------------
+
+Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+compress_fragment.c:
+Copyright (c) 2011, Google Inc.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+    * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+    * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+decode_fuzzer.c:
+Copyright (c) 2015 The Chromium Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+   * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+   * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+   * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+
diff --git a/packages/System.Text.Encodings.Web.4.5.0/lib/netstandard1.0/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.4.5.0/lib/netstandard1.0/System.Text.Encodings.Web.xml
new file mode 100644
index 0000000..4d2efe2
--- /dev/null
+++ b/packages/System.Text.Encodings.Web.4.5.0/lib/netstandard1.0/System.Text.Encodings.Web.xml
@@ -0,0 +1,866 @@
+锘�<?xml version="1.0" encoding="utf-8"?><doc>
+  <assembly>
+    <name>System.Text.Encodings.Web</name>
+  </assembly>
+  <members>
+    <member name="T:System.Text.Encodings.Web.HtmlEncoder">
+      <summary>Represents an HTML character encoding.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.HtmlEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.HtmlEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Creates a new instance of the HtmlEncoder class with the specified settings.</summary>
+      <param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.HtmlEncoder"></see> instance encodes, primarily which characters to encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.HtmlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="settings">settings</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.HtmlEncoder.Create(System.Text.Unicode.UnicodeRange[])">
+      <summary>Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode.</summary>
+      <param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.HtmlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="P:System.Text.Encodings.Web.HtmlEncoder.Default">
+      <summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder"></see> class.</summary>
+      <returns>A built-in instance of the <see cref="System.Text.Encodings.Web.HtmlEncoder"></see> class.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.JavaScriptEncoder">
+      <summary>Represents a JavaScript character encoding.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.JavaScriptEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.JavaScriptEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Creates a new instance of JavaScriptEncoder class with the specified settings.</summary>
+      <param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder"></see> instance encodes, primarily which characters to encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="settings">settings</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.JavaScriptEncoder.Create(System.Text.Unicode.UnicodeRange[])">
+      <summary>Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode.</summary>
+      <param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="P:System.Text.Encodings.Web.JavaScriptEncoder.Default">
+      <summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</summary>
+      <returns>A built-in instance of the <see cref="System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.TextEncoder">
+      <summary>The base class of web encoders.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.TextEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.String)">
+      <summary>Encodes the supplied string and returns the encoded text as a new string.</summary>
+      <param name="value">The string to encode.</param>
+      <returns>The encoded string.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="value">value</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentException">The <see cref="System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)"></see> method failed. The encoder does not implement <see cref="System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter"></see> correctly.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.String)">
+      <summary>Encodes the specified string to a <see cref="T:System.IO.TextWriter"></see> object.</summary>
+      <param name="output">The stream to which to write the encoded text.</param>
+      <param name="value">The string to encode.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.Char[],System.Int32,System.Int32)">
+      <summary>Encodes characters from an array and writes them to a <see cref="T:System.IO.TextWriter"></see> object.</summary>
+      <param name="output">The stream to which to write the encoded text.</param>
+      <param name="value">The array of characters to encode.</param>
+      <param name="startIndex">The array index of the first character to encode.</param>
+      <param name="characterCount">The number of characters in the array to encode.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="output">output</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentException">The <see cref="System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)"></see> method failed. The encoder does not implement <see cref="System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter"></see> correctly.</exception>
+      <exception cref="T:System.ArgumentNullException"><paramref name="value">value</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex">startIndex</paramref> is out of range.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="characterCount">characterCount</paramref> is out of range.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.String,System.Int32,System.Int32)">
+      <summary>Encodes a substring and writes it to a <see cref="T:System.IO.TextWriter"></see> object.</summary>
+      <param name="output">The stream to which to write the encoded text.</param>
+      <param name="value">The string whose substring is to be encoded.</param>
+      <param name="startIndex">The index where the substring starts.</param>
+      <param name="characterCount">The number of characters in the substring.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="output">output</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentException">The <see cref="System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)"></see> method failed. The encoder does not implement <see cref="System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter"></see> correctly.</exception>
+      <exception cref="T:System.ArgumentNullException"><paramref name="value">value</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex">startIndex</paramref> is out of range.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="characterCount">characterCount</paramref> is out of range.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.FindFirstCharacterToEncode(System.Char*,System.Int32)">
+      <summary>Finds the index of the first character to encode.</summary>
+      <param name="text">The text buffer to search.</param>
+      <param name="textLength">The number of characters in <paramref name="text">text</paramref>.</param>
+      <returns>The index of the first character to encode.</returns>
+    </member>
+    <member name="P:System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter">
+      <summary>Gets the maximum number of characters that this encoder can generate for each input code point.</summary>
+      <returns>The maximum number of characters.</returns>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)">
+      <summary>Encodes a Unicode scalar value and writes it to a buffer.</summary>
+      <param name="unicodeScalar">A Unicode scalar value.</param>
+      <param name="buffer">A pointer to the buffer to which to write the encoded text.</param>
+      <param name="bufferLength">The length of the destination <paramref name="buffer">buffer</paramref> in characters.</param>
+      <param name="numberOfCharactersWritten">When the method returns, indicates the number of characters written to the <paramref name="buffer">buffer</paramref>.</param>
+      <returns>false if <paramref name="bufferLength">bufferLength</paramref> is too small to fit the encoded text; otherwise, returns true.</returns>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.WillEncode(System.Int32)">
+      <summary>Determines if a given Unicode scalar value will be encoded.</summary>
+      <param name="unicodeScalar">A Unicode scalar value.</param>
+      <returns>true if the <paramref name="unicodeScalar">unicodeScalar</paramref> value will be encoded by this encoder; otherwise, returns false.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.TextEncoderSettings">
+      <summary>Represents a filter that allows only certain Unicode code points.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor">
+      <summary>Instantiates an empty filter (allows no code points through by default).</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Instantiates a filter by cloning the allowed list of another <see cref="T:System.Text.Encodings.Web.TextEncoderSettings"></see> object.</summary>
+      <param name="other">The other <see cref="T:System.Text.Encodings.Web.TextEncoderSettings"></see> object to be cloned.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor(System.Text.Unicode.UnicodeRange[])">
+      <summary>Instantiates a filter where only the character ranges specified by <paramref name="allowedRanges">allowedRanges</paramref> are allowed by the filter.</summary>
+      <param name="allowedRanges">The allowed character ranges.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCharacter(System.Char)">
+      <summary>Allows the character specified by <paramref name="character">character</paramref> through the filter.</summary>
+      <param name="character">The allowed character.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCharacters(System.Char[])">
+      <summary>Allows all characters specified by <paramref name="characters">characters</paramref> through the filter.</summary>
+      <param name="characters">The allowed characters.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="characters">characters</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCodePoints(System.Collections.Generic.IEnumerable{System.Int32})">
+      <summary>Allows all code points specified by <paramref name="codePoints">codePoints</paramref>.</summary>
+      <param name="codePoints">The allowed code points.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="codePoints">codePoints</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowRange(System.Text.Unicode.UnicodeRange)">
+      <summary>Allows all characters specified by <paramref name="range">range</paramref> through the filter.</summary>
+      <param name="range">The range of characters to be allowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="range">range</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowRanges(System.Text.Unicode.UnicodeRange[])">
+      <summary>Allows all characters specified by <paramref name="ranges">ranges</paramref> through the filter.</summary>
+      <param name="ranges">The ranges of characters to be allowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="ranges">ranges</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.Clear">
+      <summary>Resets this object by disallowing all characters.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidCharacter(System.Char)">
+      <summary>Disallows the character <paramref name="character">character</paramref> through the filter.</summary>
+      <param name="character">The disallowed character.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidCharacters(System.Char[])">
+      <summary>Disallows all characters specified by <paramref name="characters">characters</paramref> through the filter.</summary>
+      <param name="characters">The disallowed characters.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="characters">characters</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidRange(System.Text.Unicode.UnicodeRange)">
+      <summary>Disallows all characters specified by <paramref name="range">range</paramref> through the filter.</summary>
+      <param name="range">The range of characters to be disallowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="range">range</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidRanges(System.Text.Unicode.UnicodeRange[])">
+      <summary>Disallows all characters specified by <paramref name="ranges">ranges</paramref> through the filter.</summary>
+      <param name="ranges">The ranges of characters to be disallowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="ranges">ranges</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.GetAllowedCodePoints">
+      <summary>Gets an enumerator of all allowed code points.</summary>
+      <returns>The enumerator of allowed code points.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.UrlEncoder">
+      <summary>Represents a URL character encoding.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.UrlEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.UrlEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Creates a new instance of UrlEncoder class with the specified settings.</summary>
+      <param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.UrlEncoder"></see> instance encodes, primarily which characters to encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.UrlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="settings">settings</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.UrlEncoder.Create(System.Text.Unicode.UnicodeRange[])">
+      <summary>Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode.</summary>
+      <param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.UrlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="P:System.Text.Encodings.Web.UrlEncoder.Default">
+      <summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder"></see> class.</summary>
+      <returns>A built-in instance of the <see cref="System.Text.Encodings.Web.UrlEncoder"></see> class.</returns>
+    </member>
+    <member name="T:System.Text.Unicode.UnicodeRange">
+      <summary>Represents a contiguous range of Unicode code points.</summary>
+    </member>
+    <member name="M:System.Text.Unicode.UnicodeRange.#ctor(System.Int32,System.Int32)">
+      <summary>Creates a new <see cref="T:System.Text.Unicode.UnicodeRange"></see> that includes a specified number of characters starting at a specified Unicode code point.</summary>
+      <param name="firstCodePoint">The first code point in the range.</param>
+      <param name="length">The number of code points in the range.</param>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="firstCodePoint">firstCodePoint</paramref> is less than zero or greater than 0xFFFF. 
+-or-           
+<paramref name="length">length</paramref> is less than zero.
+-or-
+<paramref name="firstCodePoint">firstCodePoint</paramref> plus <paramref name="length">length</paramref> is greater than 0xFFFF.</exception>
+    </member>
+    <member name="M:System.Text.Unicode.UnicodeRange.Create(System.Char,System.Char)">
+      <summary>Creates a new <see cref="T:System.Text.Unicode.UnicodeRange"></see> instance from a span of characters.</summary>
+      <param name="firstCharacter">The first character in the range.</param>
+      <param name="lastCharacter">The last character in the range.</param>
+      <returns>A range that includes all characters between <paramref name="firstCharacter">firstCharacter</paramref> and <paramref name="lastCharacter">lastCharacter</paramref>.</returns>
+      <exception cref="System.ArgumentOutOfRangeException"><paramref name="lastCharacter">lastCharacter</paramref> precedes <paramref name="firstCharacter">firstCharacter</paramref>.</exception>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRange.FirstCodePoint">
+      <summary>Gets the first code point in the range represented by this <see cref="T:System.Text.Unicode.UnicodeRange"></see> instance.</summary>
+      <returns>The first code point in the range.</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRange.Length">
+      <summary>Gets the number of code points in the range represented by this <see cref="T:System.Text.Unicode.UnicodeRange"></see> instance.</summary>
+      <returns>The number of code points in the range.</returns>
+    </member>
+    <member name="T:System.Text.Unicode.UnicodeRanges">
+      <summary>Provides static properties that return predefined <see cref="T:System.Text.Unicode.UnicodeRange"></see> instances that correspond to blocks from the Unicode specification.</summary>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.All">
+      <summary>Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF).</summary>
+      <returns>A range that consists of the entire BMP.</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.AlphabeticPresentationForms">
+      <summary>Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F).</summary>
+      <returns>The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Arabic">
+      <summary>Gets the Arabic Unicode block (U+0600-U+06FF).</summary>
+      <returns>The Arabic Unicode block (U+0600-U+06FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicExtendedA">
+      <summary>Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF).</summary>
+      <returns>The Arabic Extended-A Unicode block (U+08A0-U+08FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicPresentationFormsA">
+      <summary>Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF).</summary>
+      <returns>The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicPresentationFormsB">
+      <summary>Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF).</summary>
+      <returns>The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicSupplement">
+      <summary>Gets the Arabic Supplement Unicode block (U+0750-U+077F).</summary>
+      <returns>The Arabic Supplement Unicode block (U+0750-U+077F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Armenian">
+      <summary>Gets the Armenian Unicode block (U+0530-U+058F).</summary>
+      <returns>The Armenian Unicode block (U+0530-U+058F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Arrows">
+      <summary>Gets the Arrows Unicode block (U+2190-U+21FF).</summary>
+      <returns>The Arrows Unicode block (U+2190-U+21FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Balinese">
+      <summary>Gets the Balinese Unicode block (U+1B00-U+1B7F).</summary>
+      <returns>The Balinese Unicode block (U+1B00-U+1B7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Bamum">
+      <summary>Gets the Bamum Unicode block (U+A6A0-U+A6FF).</summary>
+      <returns>The Bamum Unicode block (U+A6A0-U+A6FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BasicLatin">
+      <summary>Gets the Basic Latin Unicode block (U+0021-U+007F).</summary>
+      <returns>The Basic Latin Unicode block (U+0021-U+007F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Batak">
+      <summary>Gets the Batak Unicode block (U+1BC0-U+1BFF).</summary>
+      <returns>The Batak Unicode block (U+1BC0-U+1BFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Bengali">
+      <summary>Gets the Bengali Unicode block (U+0980-U+09FF).</summary>
+      <returns>The Bengali Unicode block (U+0980-U+09FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BlockElements">
+      <summary>Gets the Block Elements Unicode block (U+2580-U+259F).</summary>
+      <returns>The Block Elements Unicode block (U+2580-U+259F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Bopomofo">
+      <summary>Gets the Bopomofo Unicode block (U+3100-U+312F).</summary>
+      <returns>The Bopomofo Unicode block (U+3105-U+312F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BopomofoExtended">
+      <summary>Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF).</summary>
+      <returns>The Bopomofo Extended Unicode block (U+31A0-U+31BF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BoxDrawing">
+      <summary>Gets the Box Drawing Unicode block (U+2500-U+257F).</summary>
+      <returns>The Box Drawing Unicode block (U+2500-U+257F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BraillePatterns">
+      <summary>Gets the Braille Patterns Unicode block (U+2800-U+28FF).</summary>
+      <returns>The Braille Patterns Unicode block (U+2800-U+28FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Buginese">
+      <summary>Gets the Buginese Unicode block (U+1A00-U+1A1F).</summary>
+      <returns>The Buginese Unicode block (U+1A00-U+1A1F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Buhid">
+      <summary>Gets the Buhid Unicode block (U+1740-U+175F).</summary>
+      <returns>The Buhid Unicode block (U+1740-U+175F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Cham">
+      <summary>Gets the Cham Unicode block (U+AA00-U+AA5F).</summary>
+      <returns>The Cham Unicode block (U+AA00-U+AA5F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Cherokee">
+      <summary>Gets the Cherokee Unicode block (U+13A0-U+13FF).</summary>
+      <returns>The Cherokee Unicode block (U+13A0-U+13FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CherokeeSupplement">
+      <summary>Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF).</summary>
+      <returns>The Cherokee Supplement Unicode block (U+AB70-U+ABBF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibility">
+      <summary>Gets the CJK Compatibility Unicode block (U+3300-U+33FF).</summary>
+      <returns>The CJK Compatibility Unicode block (U+3300-U+33FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibilityForms">
+      <summary>Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F).</summary>
+      <returns>The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibilityIdeographs">
+      <summary>Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9).</summary>
+      <returns>The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkRadicalsSupplement">
+      <summary>Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF).</summary>
+      <returns>The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkStrokes">
+      <summary>Gets the CJK Strokes Unicode block (U+31C0-U+31EF).</summary>
+      <returns>The CJK Strokes Unicode block (U+31C0-U+31EF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkSymbolsandPunctuation">
+      <summary>Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F).</summary>
+      <returns>The CJK Symbols and Punctuation Unicode block (U+3000-U+303F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkUnifiedIdeographs">
+      <summary>Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC).</summary>
+      <returns>The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkUnifiedIdeographsExtensionA">
+      <summary>Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5).</summary>
+      <returns>The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarks">
+      <summary>Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F).</summary>
+      <returns>The Combining Diacritical Marks Unicode block (U+0300-U+036F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksExtended">
+      <summary>Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF).</summary>
+      <returns>The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksforSymbols">
+      <summary>Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF).</summary>
+      <returns>The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksSupplement">
+      <summary>Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF).</summary>
+      <returns>The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningHalfMarks">
+      <summary>Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F).</summary>
+      <returns>The Combining Half Marks Unicode block (U+FE20-U+FE2F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CommonIndicNumberForms">
+      <summary>Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F).</summary>
+      <returns>The Common Indic Number Forms Unicode block (U+A830-U+A83F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ControlPictures">
+      <summary>Gets the Control Pictures Unicode block (U+2400-U+243F).</summary>
+      <returns>The Control Pictures Unicode block (U+2400-U+243F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Coptic">
+      <summary>Gets the Coptic Unicode block (U+2C80-U+2CFF).</summary>
+      <returns>The Coptic Unicode block (U+2C80-U+2CFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CurrencySymbols">
+      <summary>Gets the Currency Symbols Unicode block (U+20A0-U+20CF).</summary>
+      <returns>The Currency Symbols Unicode block (U+20A0-U+20CF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Cyrillic">
+      <summary>Gets the Cyrillic Unicode block (U+0400-U+04FF).</summary>
+      <returns>The Cyrillic Unicode block (U+0400-U+04FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CyrillicExtendedA">
+      <summary>Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF).</summary>
+      <returns>The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CyrillicExtendedB">
+      <summary>Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F).</summary>
+      <returns>The Cyrillic Extended-B Unicode block (U+A640-U+A69F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CyrillicSupplement">
+      <summary>Gets the Cyrillic Supplement Unicode block (U+0500-U+052F).</summary>
+      <returns>The Cyrillic Supplement Unicode block (U+0500-U+052F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Devanagari">
+      <summary>Gets the Devangari Unicode block (U+0900-U+097F).</summary>
+      <returns>The Devangari Unicode block (U+0900-U+097F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.DevanagariExtended">
+      <summary>Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF).</summary>
+      <returns>The Devanagari Extended Unicode block (U+A8E0-U+A8FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Dingbats">
+      <summary>Gets the Dingbats Unicode block (U+2700-U+27BF).</summary>
+      <returns>The Dingbats Unicode block (U+2700-U+27BF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EnclosedAlphanumerics">
+      <summary>Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF).</summary>
+      <returns>The Enclosed Alphanumerics Unicode block (U+2460-U+24FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EnclosedCjkLettersandMonths">
+      <summary>Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF).</summary>
+      <returns>The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Ethiopic">
+      <summary>Gets the Ethiopic Unicode block (U+1200-U+137C).</summary>
+      <returns>The Ethiopic Unicode block (U+1200-U+137C).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EthiopicExtended">
+      <summary>Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF).</summary>
+      <returns>The Ethipic Extended Unicode block (U+2D80-U+2DDF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EthiopicExtendedA">
+      <summary>Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F).</summary>
+      <returns>The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EthiopicSupplement">
+      <summary>Gets the Ethiopic Supplement Unicode block (U+1380-U+1399).</summary>
+      <returns>The Ethiopic Supplement Unicode block (U+1380-U+1399).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GeneralPunctuation">
+      <summary>Gets the General Punctuation Unicode block (U+2000-U+206F).</summary>
+      <returns>The General Punctuation Unicode block (U+2000-U+206F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GeometricShapes">
+      <summary>Gets the Geometric Shapes Unicode block (U+25A0-U+25FF).</summary>
+      <returns>The Geometric Shapes Unicode block (U+25A0-U+25FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Georgian">
+      <summary>Gets the Georgian Unicode block (U+10A0-U+10FF).</summary>
+      <returns>The Georgian Unicode block (U+10A0-U+10FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GeorgianSupplement">
+      <summary>Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F).</summary>
+      <returns>The Georgian Supplement Unicode block (U+2D00-U+2D2F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Glagolitic">
+      <summary>Gets the Glagolitic Unicode block (U+2C00-U+2C5F).</summary>
+      <returns>The Glagolitic Unicode block (U+2C00-U+2C5F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GreekandCoptic">
+      <summary>Gets the Greek and Coptic Unicode block (U+0370-U+03FF).</summary>
+      <returns>The Greek and Coptic Unicode block (U+0370-U+03FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GreekExtended">
+      <summary>Gets the Greek Extended Unicode block (U+1F00-U+1FFF).</summary>
+      <returns>The Greek Extended Unicode block (U+1F00-U+1FFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Gujarati">
+      <summary>Gets the Gujarti Unicode block (U+0A81-U+0AFF).</summary>
+      <returns>The Gujarti Unicode block (U+0A81-U+0AFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Gurmukhi">
+      <summary>Gets the Gurmukhi Unicode block (U+0A01-U+0A7F).</summary>
+      <returns>The Gurmukhi Unicode block (U+0A01-U+0A7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HalfwidthandFullwidthForms">
+      <summary>Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE).</summary>
+      <returns>The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulCompatibilityJamo">
+      <summary>Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F).</summary>
+      <returns>The Hangul Compatibility Jamo Unicode block (U+3131-U+318F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulJamo">
+      <summary>Gets the Hangul Jamo Unicode block (U+1100-U+11FF).</summary>
+      <returns>The Hangul Jamo Unicode block (U+1100-U+11FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulJamoExtendedA">
+      <summary>Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F).</summary>
+      <returns>The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulJamoExtendedB">
+      <summary>Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF).</summary>
+      <returns>The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulSyllables">
+      <summary>Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF).</summary>
+      <returns>The Hangul Syllables Unicode block (U+AC00-U+D7AF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Hanunoo">
+      <summary>Gets the Hanunoo Unicode block (U+1720-U+173F).</summary>
+      <returns>The Hanunoo Unicode block (U+1720-U+173F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Hebrew">
+      <summary>Gets the Hebrew Unicode block (U+0590-U+05FF).</summary>
+      <returns>The Hebrew Unicode block (U+0590-U+05FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Hiragana">
+      <summary>Gets the Hiragana Unicode block (U+3040-U+309F).</summary>
+      <returns>The Hiragana Unicode block (U+3040-U+309F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.IdeographicDescriptionCharacters">
+      <summary>Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF).</summary>
+      <returns>The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.IpaExtensions">
+      <summary>Gets the IPA Extensions Unicode block (U+0250-U+02AF).</summary>
+      <returns>The IPA Extensions Unicode block (U+0250-U+02AF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Javanese">
+      <summary>Gets the Javanese Unicode block (U+A980-U+A9DF).</summary>
+      <returns>The Javanese Unicode block (U+A980-U+A9DF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Kanbun">
+      <summary>Gets the Kanbun Unicode block (U+3190-U+319F).</summary>
+      <returns>The Kanbun Unicode block (U+3190-U+319F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KangxiRadicals">
+      <summary>Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF).</summary>
+      <returns>The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Kannada">
+      <summary>Gets the Kannada Unicode block (U+0C81-U+0CFF).</summary>
+      <returns>The Kannada Unicode block (U+0C81-U+0CFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Katakana">
+      <summary>Gets the Katakana Unicode block (U+30A0-U+30FF).</summary>
+      <returns>The Katakana Unicode block (U+30A0-U+30FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KatakanaPhoneticExtensions">
+      <summary>Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF).</summary>
+      <returns>The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KayahLi">
+      <summary>Gets the Kayah Li Unicode block (U+A900-U+A92F).</summary>
+      <returns>The Kayah Li Unicode block (U+A900-U+A92F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Khmer">
+      <summary>Gets the Khmer Unicode block (U+1780-U+17FF).</summary>
+      <returns>The Khmer Unicode block (U+1780-U+17FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KhmerSymbols">
+      <summary>Gets the Khmer Symbols Unicode block (U+19E0-U+19FF).</summary>
+      <returns>The Khmer Symbols Unicode block (U+19E0-U+19FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Lao">
+      <summary>Gets the Lao Unicode block (U+0E80-U+0EDF).</summary>
+      <returns>The Lao Unicode block (U+0E80-U+0EDF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Latin1Supplement">
+      <summary>Gets the Latin-1 Supplement Unicode block (U+00A1-U+00FF).</summary>
+      <returns>The Latin-1 Supplement Unicode block (U+00A1-U+00FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedA">
+      <summary>Gets the Latin Extended-A Unicode block (U+0100-U+017F).</summary>
+      <returns>The Latin Extended-A Unicode block (U+0100-U+017F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedAdditional">
+      <summary>Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF).</summary>
+      <returns>The Latin Extended Additional Unicode block (U+1E00-U+1EFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedB">
+      <summary>Gets the Latin Extended-B Unicode block (U+0180-U+024F).</summary>
+      <returns>The Latin Extended-B Unicode block (U+0180-U+024F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedC">
+      <summary>Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F).</summary>
+      <returns>The Latin Extended-C Unicode block (U+2C60-U+2C7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedD">
+      <summary>Gets the Latin Extended-D Unicode block (U+A720-U+A7FF).</summary>
+      <returns>The Latin Extended-D Unicode block (U+A720-U+A7FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedE">
+      <summary>Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F).</summary>
+      <returns>The Latin Extended-E Unicode block (U+AB30-U+AB6F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Lepcha">
+      <summary>Gets the Lepcha Unicode block (U+1C00-U+1C4F).</summary>
+      <returns>The Lepcha Unicode block (U+1C00-U+1C4F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LetterlikeSymbols">
+      <summary>Gets the Letterlike Symbols Unicode block (U+2100-U+214F).</summary>
+      <returns>The Letterlike Symbols Unicode block (U+2100-U+214F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Limbu">
+      <summary>Gets the Limbu Unicode block (U+1900-U+194F).</summary>
+      <returns>The Limbu Unicode block (U+1900-U+194F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Lisu">
+      <summary>Gets the Lisu Unicode block (U+A4D0-U+A4FF).</summary>
+      <returns>The Lisu Unicode block (U+A4D0-U+A4FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Malayalam">
+      <summary>Gets the Malayalam Unicode block (U+0D00-U+0D7F).</summary>
+      <returns>The Malayalam Unicode block (U+0D00-U+0D7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Mandaic">
+      <summary>Gets the Mandaic Unicode block (U+0840-U+085F).</summary>
+      <returns>The Mandaic Unicode block (U+0840-U+085F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MathematicalOperators">
+      <summary>Gets the Mathematical Operators Unicode block (U+2200-U+22FF).</summary>
+      <returns>The Mathematical Operators Unicode block (U+2200-U+22FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MeeteiMayek">
+      <summary>Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF).</summary>
+      <returns>The Meetei Mayek Unicode block (U+ABC0-U+ABFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MeeteiMayekExtensions">
+      <summary>Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF).</summary>
+      <returns>The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousMathematicalSymbolsA">
+      <summary>Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF).</summary>
+      <returns>The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousMathematicalSymbolsB">
+      <summary>Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF).</summary>
+      <returns>The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousSymbols">
+      <summary>Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF).</summary>
+      <returns>The Miscellaneous Symbols Unicode block (U+2600-U+26FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousSymbolsandArrows">
+      <summary>Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF).</summary>
+      <returns>The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousTechnical">
+      <summary>Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF).</summary>
+      <returns>The Miscellaneous Technical Unicode block (U+2300-U+23FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ModifierToneLetters">
+      <summary>Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F).</summary>
+      <returns>The Modifier Tone Letters Unicode block (U+A700-U+A71F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Mongolian">
+      <summary>Gets the Mongolian Unicode block (U+1800-U+18AF).</summary>
+      <returns>The Mongolian Unicode block (U+1800-U+18AF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Myanmar">
+      <summary>Gets the Myanmar Unicode block (U+1000-U+109F).</summary>
+      <returns>The Myanmar Unicode block (U+1000-U+109F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MyanmarExtendedA">
+      <summary>Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F).</summary>
+      <returns>The Myanmar Extended-A Unicode block (U+AA60-U+AA7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MyanmarExtendedB">
+      <summary>Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF).</summary>
+      <returns>The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.NewTaiLue">
+      <summary>Gets the New Tai Lue Unicode block (U+1980-U+19DF).</summary>
+      <returns>The New Tai Lue Unicode block (U+1980-U+19DF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.NKo">
+      <summary>Gets the NKo Unicode block (U+07C0-U+07FF).</summary>
+      <returns>The NKo Unicode block (U+07C0-U+07FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.None">
+      <summary>Gets an empty Unicode range.</summary>
+      <returns>A Unicode range with no elements.</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.NumberForms">
+      <summary>Gets the Number Forms Unicode block (U+2150-U+218F).</summary>
+      <returns>The Number Forms Unicode block (U+2150-U+218F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Ogham">
+      <summary>Gets the Ogham Unicode block (U+1680-U+169F).</summary>
+      <returns>The Ogham Unicode block (U+1680-U+169F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.OlChiki">
+      <summary>Gets the Ol Chiki Unicode block (U+1C50-U+1C7F).</summary>
+      <returns>The Ol Chiki Unicode block (U+1C50-U+1C7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.OpticalCharacterRecognition">
+      <summary>Gets the Optical Character Recognition Unicode block (U+2440-U+245F).</summary>
+      <returns>The Optical Character Recognition Unicode block (U+2440-U+245F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Oriya">
+      <summary>Gets the Oriya Unicode block (U+0B00-U+0B7F).</summary>
+      <returns>The Oriya Unicode block (U+0B00-U+0B7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Phagspa">
+      <summary>Gets the Phags-pa Unicode block (U+A840-U+A87F).</summary>
+      <returns>The Phags-pa Unicode block (U+A840-U+A87F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.PhoneticExtensions">
+      <summary>Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F).</summary>
+      <returns>The Phonetic Extensions Unicode block (U+1D00-U+1D7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.PhoneticExtensionsSupplement">
+      <summary>Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF).</summary>
+      <returns>The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Rejang">
+      <summary>Gets the Rejang Unicode block (U+A930-U+A95F).</summary>
+      <returns>The Rejang Unicode block (U+A930-U+A95F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Runic">
+      <summary>Gets the Runic Unicode block (U+16A0-U+16FF).</summary>
+      <returns>The Runic Unicode block (U+16A0-U+16FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Samaritan">
+      <summary>Gets the Samaritan Unicode block (U+0800-U+083F).</summary>
+      <returns>The Samaritan Unicode block (U+0800-U+083F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Saurashtra">
+      <summary>Gets the Saurashtra Unicode block (U+A880-U+A8DF).</summary>
+      <returns>The Saurashtra Unicode block (U+A880-U+A8DF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Sinhala">
+      <summary>Gets the Sinhala Unicode block (U+0D80-U+0DFF).</summary>
+      <returns>The Sinhala Unicode block (U+0D80-U+0DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SmallFormVariants">
+      <summary>Gets the Small Form Variants Unicode block (U+FE50-U+FE6F).</summary>
+      <returns>The Small Form Variants Unicode block (U+FE50-U+FE6F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SpacingModifierLetters">
+      <summary>Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF).</summary>
+      <returns>The Spacing Modifier Letters Unicode block (U+02B0-U+02FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Specials">
+      <summary>Gets the Specials Unicode block (U+FFF0-U+FFFF).</summary>
+      <returns>The Specials Unicode block (U+FFF0-U+FFFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Sundanese">
+      <summary>Gets the Sundanese Unicode block (U+1B80-U+1BBF).</summary>
+      <returns>The Sundanese Unicode block (U+1B80-U+1BBF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SundaneseSupplement">
+      <summary>Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF).</summary>
+      <returns>The Sundanese Supplement Unicode block (U+1CC0-U+1CCF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SuperscriptsandSubscripts">
+      <summary>Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F).</summary>
+      <returns>The Superscripts and Subscripts Unicode block (U+2070-U+209F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalArrowsA">
+      <summary>Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF).</summary>
+      <returns>The Supplemental Arrows-A Unicode block (U+27F0-U+27FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalArrowsB">
+      <summary>Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F).</summary>
+      <returns>The Supplemental Arrows-B Unicode block (U+2900-U+297F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalMathematicalOperators">
+      <summary>Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF).</summary>
+      <returns>The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalPunctuation">
+      <summary>Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F).</summary>
+      <returns>The Supplemental Punctuation Unicode block (U+2E00-U+2E7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SylotiNagri">
+      <summary>Gets the Syloti Nagri Unicode block (U+A800-U+A82F).</summary>
+      <returns>The Syloti Nagri Unicode block (U+A800-U+A82F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Syriac">
+      <summary>Gets the Syriac Unicode block (U+0700-U+074F).</summary>
+      <returns>The Syriac Unicode block (U+0700-U+074F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tagalog">
+      <summary>Gets the Tagalog Unicode block (U+1700-U+171F).</summary>
+      <returns>The Tagalog Unicode block (U+1700-U+171F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tagbanwa">
+      <summary>Gets the Tagbanwa Unicode block (U+1760-U+177F).</summary>
+      <returns>The Tagbanwa Unicode block (U+1760-U+177F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.TaiLe">
+      <summary>Gets the Tai Le Unicode block (U+1950-U+197F).</summary>
+      <returns>The Tai Le Unicode block (U+1950-U+197F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.TaiTham">
+      <summary>Gets the Tai Tham Unicode block (U+1A20-U+1AAF).</summary>
+      <returns>The Tai Tham Unicode block (U+1A20-U+1AAF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.TaiViet">
+      <summary>Gets the Tai Viet Unicode block (U+AA80-U+AADF).</summary>
+      <returns>The Tai Viet Unicode block (U+AA80-U+AADF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tamil">
+      <summary>Gets the Tamil Unicode block (U+0B80-U+0BFF).</summary>
+      <returns>The Tamil Unicode block (U+0B82-U+0BFA).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Telugu">
+      <summary>Gets the Telugu Unicode block (U+0C00-U+0C7F).</summary>
+      <returns>The Telugu Unicode block (U+0C00-U+0C7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Thaana">
+      <summary>Gets the Thaana Unicode block (U+0780-U+07BF).</summary>
+      <returns>The Thaana Unicode block (U+0780-U+07BF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Thai">
+      <summary>Gets the Thai Unicode block (U+0E00-U+0E7F).</summary>
+      <returns>The Thai Unicode block (U+0E00-U+0E7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tibetan">
+      <summary>Gets the Tibetan Unicode block (U+0F00-U+0FFF).</summary>
+      <returns>The Tibetan Unicode block (U+0F00-U+0FFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tifinagh">
+      <summary>Gets the Tifinagh Unicode block (U+2D30-U+2D7F).</summary>
+      <returns>The Tifinagh Unicode block (U+2D30-U+2D7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.UnifiedCanadianAboriginalSyllabics">
+      <summary>Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F).</summary>
+      <returns>The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.UnifiedCanadianAboriginalSyllabicsExtended">
+      <summary>Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF).</summary>
+      <returns>The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Vai">
+      <summary>Gets the Vai Unicode block (U+A500-U+A63F).</summary>
+      <returns>The Vai Unicode block (U+A500-U+A63F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.VariationSelectors">
+      <summary>Gets the Variation Selectors Unicode block (U+FE00-U+FE0F).</summary>
+      <returns>The Variation Selectors Unicode block (U+FE00-U+FE0F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.VedicExtensions">
+      <summary>Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF).</summary>
+      <returns>The Vedic Extensions Unicode block (U+1CD0-U+1CFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.VerticalForms">
+      <summary>Gets the Vertical Forms Unicode block (U+FE10-U+FE1F).</summary>
+      <returns>The Vertical Forms Unicode block (U+FE10-U+FE1F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.YijingHexagramSymbols">
+      <summary>Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF).</summary>
+      <returns>The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.YiRadicals">
+      <summary>Gets the Yi Radicals Unicode block (U+A490-U+A4CF).</summary>
+      <returns>The Yi Radicals Unicode block (U+A490-U+A4CF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.YiSyllables">
+      <summary>Gets the Yi Syllables Unicode block (U+A000-U+A48F).</summary>
+      <returns>The Yi Syllables Unicode block (U+A000-U+A48F).</returns>
+    </member>
+  </members>
+</doc>
\ No newline at end of file
diff --git a/packages/System.Text.Encodings.Web.4.5.0/lib/netstandard2.0/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.4.5.0/lib/netstandard2.0/System.Text.Encodings.Web.xml
new file mode 100644
index 0000000..4d2efe2
--- /dev/null
+++ b/packages/System.Text.Encodings.Web.4.5.0/lib/netstandard2.0/System.Text.Encodings.Web.xml
@@ -0,0 +1,866 @@
+锘�<?xml version="1.0" encoding="utf-8"?><doc>
+  <assembly>
+    <name>System.Text.Encodings.Web</name>
+  </assembly>
+  <members>
+    <member name="T:System.Text.Encodings.Web.HtmlEncoder">
+      <summary>Represents an HTML character encoding.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.HtmlEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.HtmlEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Creates a new instance of the HtmlEncoder class with the specified settings.</summary>
+      <param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.HtmlEncoder"></see> instance encodes, primarily which characters to encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.HtmlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="settings">settings</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.HtmlEncoder.Create(System.Text.Unicode.UnicodeRange[])">
+      <summary>Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode.</summary>
+      <param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.HtmlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="P:System.Text.Encodings.Web.HtmlEncoder.Default">
+      <summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder"></see> class.</summary>
+      <returns>A built-in instance of the <see cref="System.Text.Encodings.Web.HtmlEncoder"></see> class.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.JavaScriptEncoder">
+      <summary>Represents a JavaScript character encoding.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.JavaScriptEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.JavaScriptEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Creates a new instance of JavaScriptEncoder class with the specified settings.</summary>
+      <param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder"></see> instance encodes, primarily which characters to encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="settings">settings</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.JavaScriptEncoder.Create(System.Text.Unicode.UnicodeRange[])">
+      <summary>Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode.</summary>
+      <param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="P:System.Text.Encodings.Web.JavaScriptEncoder.Default">
+      <summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</summary>
+      <returns>A built-in instance of the <see cref="System.Text.Encodings.Web.JavaScriptEncoder"></see> class.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.TextEncoder">
+      <summary>The base class of web encoders.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.TextEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.String)">
+      <summary>Encodes the supplied string and returns the encoded text as a new string.</summary>
+      <param name="value">The string to encode.</param>
+      <returns>The encoded string.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="value">value</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentException">The <see cref="System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)"></see> method failed. The encoder does not implement <see cref="System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter"></see> correctly.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.String)">
+      <summary>Encodes the specified string to a <see cref="T:System.IO.TextWriter"></see> object.</summary>
+      <param name="output">The stream to which to write the encoded text.</param>
+      <param name="value">The string to encode.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.Char[],System.Int32,System.Int32)">
+      <summary>Encodes characters from an array and writes them to a <see cref="T:System.IO.TextWriter"></see> object.</summary>
+      <param name="output">The stream to which to write the encoded text.</param>
+      <param name="value">The array of characters to encode.</param>
+      <param name="startIndex">The array index of the first character to encode.</param>
+      <param name="characterCount">The number of characters in the array to encode.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="output">output</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentException">The <see cref="System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)"></see> method failed. The encoder does not implement <see cref="System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter"></see> correctly.</exception>
+      <exception cref="T:System.ArgumentNullException"><paramref name="value">value</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex">startIndex</paramref> is out of range.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="characterCount">characterCount</paramref> is out of range.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.String,System.Int32,System.Int32)">
+      <summary>Encodes a substring and writes it to a <see cref="T:System.IO.TextWriter"></see> object.</summary>
+      <param name="output">The stream to which to write the encoded text.</param>
+      <param name="value">The string whose substring is to be encoded.</param>
+      <param name="startIndex">The index where the substring starts.</param>
+      <param name="characterCount">The number of characters in the substring.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="output">output</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentException">The <see cref="System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)"></see> method failed. The encoder does not implement <see cref="System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter"></see> correctly.</exception>
+      <exception cref="T:System.ArgumentNullException"><paramref name="value">value</paramref> is null.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex">startIndex</paramref> is out of range.</exception>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="characterCount">characterCount</paramref> is out of range.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.FindFirstCharacterToEncode(System.Char*,System.Int32)">
+      <summary>Finds the index of the first character to encode.</summary>
+      <param name="text">The text buffer to search.</param>
+      <param name="textLength">The number of characters in <paramref name="text">text</paramref>.</param>
+      <returns>The index of the first character to encode.</returns>
+    </member>
+    <member name="P:System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter">
+      <summary>Gets the maximum number of characters that this encoder can generate for each input code point.</summary>
+      <returns>The maximum number of characters.</returns>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)">
+      <summary>Encodes a Unicode scalar value and writes it to a buffer.</summary>
+      <param name="unicodeScalar">A Unicode scalar value.</param>
+      <param name="buffer">A pointer to the buffer to which to write the encoded text.</param>
+      <param name="bufferLength">The length of the destination <paramref name="buffer">buffer</paramref> in characters.</param>
+      <param name="numberOfCharactersWritten">When the method returns, indicates the number of characters written to the <paramref name="buffer">buffer</paramref>.</param>
+      <returns>false if <paramref name="bufferLength">bufferLength</paramref> is too small to fit the encoded text; otherwise, returns true.</returns>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoder.WillEncode(System.Int32)">
+      <summary>Determines if a given Unicode scalar value will be encoded.</summary>
+      <param name="unicodeScalar">A Unicode scalar value.</param>
+      <returns>true if the <paramref name="unicodeScalar">unicodeScalar</paramref> value will be encoded by this encoder; otherwise, returns false.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.TextEncoderSettings">
+      <summary>Represents a filter that allows only certain Unicode code points.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor">
+      <summary>Instantiates an empty filter (allows no code points through by default).</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Instantiates a filter by cloning the allowed list of another <see cref="T:System.Text.Encodings.Web.TextEncoderSettings"></see> object.</summary>
+      <param name="other">The other <see cref="T:System.Text.Encodings.Web.TextEncoderSettings"></see> object to be cloned.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor(System.Text.Unicode.UnicodeRange[])">
+      <summary>Instantiates a filter where only the character ranges specified by <paramref name="allowedRanges">allowedRanges</paramref> are allowed by the filter.</summary>
+      <param name="allowedRanges">The allowed character ranges.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCharacter(System.Char)">
+      <summary>Allows the character specified by <paramref name="character">character</paramref> through the filter.</summary>
+      <param name="character">The allowed character.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCharacters(System.Char[])">
+      <summary>Allows all characters specified by <paramref name="characters">characters</paramref> through the filter.</summary>
+      <param name="characters">The allowed characters.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="characters">characters</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCodePoints(System.Collections.Generic.IEnumerable{System.Int32})">
+      <summary>Allows all code points specified by <paramref name="codePoints">codePoints</paramref>.</summary>
+      <param name="codePoints">The allowed code points.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="codePoints">codePoints</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowRange(System.Text.Unicode.UnicodeRange)">
+      <summary>Allows all characters specified by <paramref name="range">range</paramref> through the filter.</summary>
+      <param name="range">The range of characters to be allowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="range">range</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowRanges(System.Text.Unicode.UnicodeRange[])">
+      <summary>Allows all characters specified by <paramref name="ranges">ranges</paramref> through the filter.</summary>
+      <param name="ranges">The ranges of characters to be allowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="ranges">ranges</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.Clear">
+      <summary>Resets this object by disallowing all characters.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidCharacter(System.Char)">
+      <summary>Disallows the character <paramref name="character">character</paramref> through the filter.</summary>
+      <param name="character">The disallowed character.</param>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidCharacters(System.Char[])">
+      <summary>Disallows all characters specified by <paramref name="characters">characters</paramref> through the filter.</summary>
+      <param name="characters">The disallowed characters.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="characters">characters</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidRange(System.Text.Unicode.UnicodeRange)">
+      <summary>Disallows all characters specified by <paramref name="range">range</paramref> through the filter.</summary>
+      <param name="range">The range of characters to be disallowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="range">range</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidRanges(System.Text.Unicode.UnicodeRange[])">
+      <summary>Disallows all characters specified by <paramref name="ranges">ranges</paramref> through the filter.</summary>
+      <param name="ranges">The ranges of characters to be disallowed.</param>
+      <exception cref="T:System.ArgumentNullException"><paramref name="ranges">ranges</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.TextEncoderSettings.GetAllowedCodePoints">
+      <summary>Gets an enumerator of all allowed code points.</summary>
+      <returns>The enumerator of allowed code points.</returns>
+    </member>
+    <member name="T:System.Text.Encodings.Web.UrlEncoder">
+      <summary>Represents a URL character encoding.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.UrlEncoder.#ctor">
+      <summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder"></see> class.</summary>
+    </member>
+    <member name="M:System.Text.Encodings.Web.UrlEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
+      <summary>Creates a new instance of UrlEncoder class with the specified settings.</summary>
+      <param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.UrlEncoder"></see> instance encodes, primarily which characters to encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.UrlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="settings">settings</paramref> is null.</exception>
+    </member>
+    <member name="M:System.Text.Encodings.Web.UrlEncoder.Create(System.Text.Unicode.UnicodeRange[])">
+      <summary>Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode.</summary>
+      <param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
+      <returns>A new instance of the <see cref="System.Text.Encodings.Web.UrlEncoder"></see> class.</returns>
+      <exception cref="T:System.ArgumentNullException"><paramref name="allowedRanges">allowedRanges</paramref> is null.</exception>
+    </member>
+    <member name="P:System.Text.Encodings.Web.UrlEncoder.Default">
+      <summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder"></see> class.</summary>
+      <returns>A built-in instance of the <see cref="System.Text.Encodings.Web.UrlEncoder"></see> class.</returns>
+    </member>
+    <member name="T:System.Text.Unicode.UnicodeRange">
+      <summary>Represents a contiguous range of Unicode code points.</summary>
+    </member>
+    <member name="M:System.Text.Unicode.UnicodeRange.#ctor(System.Int32,System.Int32)">
+      <summary>Creates a new <see cref="T:System.Text.Unicode.UnicodeRange"></see> that includes a specified number of characters starting at a specified Unicode code point.</summary>
+      <param name="firstCodePoint">The first code point in the range.</param>
+      <param name="length">The number of code points in the range.</param>
+      <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="firstCodePoint">firstCodePoint</paramref> is less than zero or greater than 0xFFFF. 
+-or-           
+<paramref name="length">length</paramref> is less than zero.
+-or-
+<paramref name="firstCodePoint">firstCodePoint</paramref> plus <paramref name="length">length</paramref> is greater than 0xFFFF.</exception>
+    </member>
+    <member name="M:System.Text.Unicode.UnicodeRange.Create(System.Char,System.Char)">
+      <summary>Creates a new <see cref="T:System.Text.Unicode.UnicodeRange"></see> instance from a span of characters.</summary>
+      <param name="firstCharacter">The first character in the range.</param>
+      <param name="lastCharacter">The last character in the range.</param>
+      <returns>A range that includes all characters between <paramref name="firstCharacter">firstCharacter</paramref> and <paramref name="lastCharacter">lastCharacter</paramref>.</returns>
+      <exception cref="System.ArgumentOutOfRangeException"><paramref name="lastCharacter">lastCharacter</paramref> precedes <paramref name="firstCharacter">firstCharacter</paramref>.</exception>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRange.FirstCodePoint">
+      <summary>Gets the first code point in the range represented by this <see cref="T:System.Text.Unicode.UnicodeRange"></see> instance.</summary>
+      <returns>The first code point in the range.</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRange.Length">
+      <summary>Gets the number of code points in the range represented by this <see cref="T:System.Text.Unicode.UnicodeRange"></see> instance.</summary>
+      <returns>The number of code points in the range.</returns>
+    </member>
+    <member name="T:System.Text.Unicode.UnicodeRanges">
+      <summary>Provides static properties that return predefined <see cref="T:System.Text.Unicode.UnicodeRange"></see> instances that correspond to blocks from the Unicode specification.</summary>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.All">
+      <summary>Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF).</summary>
+      <returns>A range that consists of the entire BMP.</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.AlphabeticPresentationForms">
+      <summary>Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F).</summary>
+      <returns>The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Arabic">
+      <summary>Gets the Arabic Unicode block (U+0600-U+06FF).</summary>
+      <returns>The Arabic Unicode block (U+0600-U+06FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicExtendedA">
+      <summary>Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF).</summary>
+      <returns>The Arabic Extended-A Unicode block (U+08A0-U+08FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicPresentationFormsA">
+      <summary>Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF).</summary>
+      <returns>The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicPresentationFormsB">
+      <summary>Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF).</summary>
+      <returns>The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ArabicSupplement">
+      <summary>Gets the Arabic Supplement Unicode block (U+0750-U+077F).</summary>
+      <returns>The Arabic Supplement Unicode block (U+0750-U+077F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Armenian">
+      <summary>Gets the Armenian Unicode block (U+0530-U+058F).</summary>
+      <returns>The Armenian Unicode block (U+0530-U+058F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Arrows">
+      <summary>Gets the Arrows Unicode block (U+2190-U+21FF).</summary>
+      <returns>The Arrows Unicode block (U+2190-U+21FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Balinese">
+      <summary>Gets the Balinese Unicode block (U+1B00-U+1B7F).</summary>
+      <returns>The Balinese Unicode block (U+1B00-U+1B7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Bamum">
+      <summary>Gets the Bamum Unicode block (U+A6A0-U+A6FF).</summary>
+      <returns>The Bamum Unicode block (U+A6A0-U+A6FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BasicLatin">
+      <summary>Gets the Basic Latin Unicode block (U+0021-U+007F).</summary>
+      <returns>The Basic Latin Unicode block (U+0021-U+007F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Batak">
+      <summary>Gets the Batak Unicode block (U+1BC0-U+1BFF).</summary>
+      <returns>The Batak Unicode block (U+1BC0-U+1BFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Bengali">
+      <summary>Gets the Bengali Unicode block (U+0980-U+09FF).</summary>
+      <returns>The Bengali Unicode block (U+0980-U+09FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BlockElements">
+      <summary>Gets the Block Elements Unicode block (U+2580-U+259F).</summary>
+      <returns>The Block Elements Unicode block (U+2580-U+259F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Bopomofo">
+      <summary>Gets the Bopomofo Unicode block (U+3100-U+312F).</summary>
+      <returns>The Bopomofo Unicode block (U+3105-U+312F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BopomofoExtended">
+      <summary>Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF).</summary>
+      <returns>The Bopomofo Extended Unicode block (U+31A0-U+31BF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BoxDrawing">
+      <summary>Gets the Box Drawing Unicode block (U+2500-U+257F).</summary>
+      <returns>The Box Drawing Unicode block (U+2500-U+257F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.BraillePatterns">
+      <summary>Gets the Braille Patterns Unicode block (U+2800-U+28FF).</summary>
+      <returns>The Braille Patterns Unicode block (U+2800-U+28FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Buginese">
+      <summary>Gets the Buginese Unicode block (U+1A00-U+1A1F).</summary>
+      <returns>The Buginese Unicode block (U+1A00-U+1A1F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Buhid">
+      <summary>Gets the Buhid Unicode block (U+1740-U+175F).</summary>
+      <returns>The Buhid Unicode block (U+1740-U+175F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Cham">
+      <summary>Gets the Cham Unicode block (U+AA00-U+AA5F).</summary>
+      <returns>The Cham Unicode block (U+AA00-U+AA5F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Cherokee">
+      <summary>Gets the Cherokee Unicode block (U+13A0-U+13FF).</summary>
+      <returns>The Cherokee Unicode block (U+13A0-U+13FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CherokeeSupplement">
+      <summary>Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF).</summary>
+      <returns>The Cherokee Supplement Unicode block (U+AB70-U+ABBF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibility">
+      <summary>Gets the CJK Compatibility Unicode block (U+3300-U+33FF).</summary>
+      <returns>The CJK Compatibility Unicode block (U+3300-U+33FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibilityForms">
+      <summary>Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F).</summary>
+      <returns>The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibilityIdeographs">
+      <summary>Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9).</summary>
+      <returns>The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkRadicalsSupplement">
+      <summary>Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF).</summary>
+      <returns>The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkStrokes">
+      <summary>Gets the CJK Strokes Unicode block (U+31C0-U+31EF).</summary>
+      <returns>The CJK Strokes Unicode block (U+31C0-U+31EF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkSymbolsandPunctuation">
+      <summary>Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F).</summary>
+      <returns>The CJK Symbols and Punctuation Unicode block (U+3000-U+303F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkUnifiedIdeographs">
+      <summary>Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC).</summary>
+      <returns>The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CjkUnifiedIdeographsExtensionA">
+      <summary>Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5).</summary>
+      <returns>The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarks">
+      <summary>Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F).</summary>
+      <returns>The Combining Diacritical Marks Unicode block (U+0300-U+036F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksExtended">
+      <summary>Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF).</summary>
+      <returns>The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksforSymbols">
+      <summary>Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF).</summary>
+      <returns>The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksSupplement">
+      <summary>Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF).</summary>
+      <returns>The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CombiningHalfMarks">
+      <summary>Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F).</summary>
+      <returns>The Combining Half Marks Unicode block (U+FE20-U+FE2F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CommonIndicNumberForms">
+      <summary>Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F).</summary>
+      <returns>The Common Indic Number Forms Unicode block (U+A830-U+A83F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ControlPictures">
+      <summary>Gets the Control Pictures Unicode block (U+2400-U+243F).</summary>
+      <returns>The Control Pictures Unicode block (U+2400-U+243F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Coptic">
+      <summary>Gets the Coptic Unicode block (U+2C80-U+2CFF).</summary>
+      <returns>The Coptic Unicode block (U+2C80-U+2CFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CurrencySymbols">
+      <summary>Gets the Currency Symbols Unicode block (U+20A0-U+20CF).</summary>
+      <returns>The Currency Symbols Unicode block (U+20A0-U+20CF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Cyrillic">
+      <summary>Gets the Cyrillic Unicode block (U+0400-U+04FF).</summary>
+      <returns>The Cyrillic Unicode block (U+0400-U+04FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CyrillicExtendedA">
+      <summary>Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF).</summary>
+      <returns>The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CyrillicExtendedB">
+      <summary>Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F).</summary>
+      <returns>The Cyrillic Extended-B Unicode block (U+A640-U+A69F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.CyrillicSupplement">
+      <summary>Gets the Cyrillic Supplement Unicode block (U+0500-U+052F).</summary>
+      <returns>The Cyrillic Supplement Unicode block (U+0500-U+052F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Devanagari">
+      <summary>Gets the Devangari Unicode block (U+0900-U+097F).</summary>
+      <returns>The Devangari Unicode block (U+0900-U+097F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.DevanagariExtended">
+      <summary>Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF).</summary>
+      <returns>The Devanagari Extended Unicode block (U+A8E0-U+A8FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Dingbats">
+      <summary>Gets the Dingbats Unicode block (U+2700-U+27BF).</summary>
+      <returns>The Dingbats Unicode block (U+2700-U+27BF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EnclosedAlphanumerics">
+      <summary>Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF).</summary>
+      <returns>The Enclosed Alphanumerics Unicode block (U+2460-U+24FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EnclosedCjkLettersandMonths">
+      <summary>Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF).</summary>
+      <returns>The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Ethiopic">
+      <summary>Gets the Ethiopic Unicode block (U+1200-U+137C).</summary>
+      <returns>The Ethiopic Unicode block (U+1200-U+137C).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EthiopicExtended">
+      <summary>Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF).</summary>
+      <returns>The Ethipic Extended Unicode block (U+2D80-U+2DDF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EthiopicExtendedA">
+      <summary>Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F).</summary>
+      <returns>The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.EthiopicSupplement">
+      <summary>Gets the Ethiopic Supplement Unicode block (U+1380-U+1399).</summary>
+      <returns>The Ethiopic Supplement Unicode block (U+1380-U+1399).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GeneralPunctuation">
+      <summary>Gets the General Punctuation Unicode block (U+2000-U+206F).</summary>
+      <returns>The General Punctuation Unicode block (U+2000-U+206F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GeometricShapes">
+      <summary>Gets the Geometric Shapes Unicode block (U+25A0-U+25FF).</summary>
+      <returns>The Geometric Shapes Unicode block (U+25A0-U+25FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Georgian">
+      <summary>Gets the Georgian Unicode block (U+10A0-U+10FF).</summary>
+      <returns>The Georgian Unicode block (U+10A0-U+10FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GeorgianSupplement">
+      <summary>Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F).</summary>
+      <returns>The Georgian Supplement Unicode block (U+2D00-U+2D2F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Glagolitic">
+      <summary>Gets the Glagolitic Unicode block (U+2C00-U+2C5F).</summary>
+      <returns>The Glagolitic Unicode block (U+2C00-U+2C5F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GreekandCoptic">
+      <summary>Gets the Greek and Coptic Unicode block (U+0370-U+03FF).</summary>
+      <returns>The Greek and Coptic Unicode block (U+0370-U+03FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.GreekExtended">
+      <summary>Gets the Greek Extended Unicode block (U+1F00-U+1FFF).</summary>
+      <returns>The Greek Extended Unicode block (U+1F00-U+1FFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Gujarati">
+      <summary>Gets the Gujarti Unicode block (U+0A81-U+0AFF).</summary>
+      <returns>The Gujarti Unicode block (U+0A81-U+0AFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Gurmukhi">
+      <summary>Gets the Gurmukhi Unicode block (U+0A01-U+0A7F).</summary>
+      <returns>The Gurmukhi Unicode block (U+0A01-U+0A7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HalfwidthandFullwidthForms">
+      <summary>Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE).</summary>
+      <returns>The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulCompatibilityJamo">
+      <summary>Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F).</summary>
+      <returns>The Hangul Compatibility Jamo Unicode block (U+3131-U+318F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulJamo">
+      <summary>Gets the Hangul Jamo Unicode block (U+1100-U+11FF).</summary>
+      <returns>The Hangul Jamo Unicode block (U+1100-U+11FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulJamoExtendedA">
+      <summary>Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F).</summary>
+      <returns>The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulJamoExtendedB">
+      <summary>Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF).</summary>
+      <returns>The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.HangulSyllables">
+      <summary>Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF).</summary>
+      <returns>The Hangul Syllables Unicode block (U+AC00-U+D7AF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Hanunoo">
+      <summary>Gets the Hanunoo Unicode block (U+1720-U+173F).</summary>
+      <returns>The Hanunoo Unicode block (U+1720-U+173F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Hebrew">
+      <summary>Gets the Hebrew Unicode block (U+0590-U+05FF).</summary>
+      <returns>The Hebrew Unicode block (U+0590-U+05FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Hiragana">
+      <summary>Gets the Hiragana Unicode block (U+3040-U+309F).</summary>
+      <returns>The Hiragana Unicode block (U+3040-U+309F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.IdeographicDescriptionCharacters">
+      <summary>Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF).</summary>
+      <returns>The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.IpaExtensions">
+      <summary>Gets the IPA Extensions Unicode block (U+0250-U+02AF).</summary>
+      <returns>The IPA Extensions Unicode block (U+0250-U+02AF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Javanese">
+      <summary>Gets the Javanese Unicode block (U+A980-U+A9DF).</summary>
+      <returns>The Javanese Unicode block (U+A980-U+A9DF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Kanbun">
+      <summary>Gets the Kanbun Unicode block (U+3190-U+319F).</summary>
+      <returns>The Kanbun Unicode block (U+3190-U+319F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KangxiRadicals">
+      <summary>Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF).</summary>
+      <returns>The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Kannada">
+      <summary>Gets the Kannada Unicode block (U+0C81-U+0CFF).</summary>
+      <returns>The Kannada Unicode block (U+0C81-U+0CFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Katakana">
+      <summary>Gets the Katakana Unicode block (U+30A0-U+30FF).</summary>
+      <returns>The Katakana Unicode block (U+30A0-U+30FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KatakanaPhoneticExtensions">
+      <summary>Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF).</summary>
+      <returns>The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KayahLi">
+      <summary>Gets the Kayah Li Unicode block (U+A900-U+A92F).</summary>
+      <returns>The Kayah Li Unicode block (U+A900-U+A92F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Khmer">
+      <summary>Gets the Khmer Unicode block (U+1780-U+17FF).</summary>
+      <returns>The Khmer Unicode block (U+1780-U+17FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.KhmerSymbols">
+      <summary>Gets the Khmer Symbols Unicode block (U+19E0-U+19FF).</summary>
+      <returns>The Khmer Symbols Unicode block (U+19E0-U+19FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Lao">
+      <summary>Gets the Lao Unicode block (U+0E80-U+0EDF).</summary>
+      <returns>The Lao Unicode block (U+0E80-U+0EDF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Latin1Supplement">
+      <summary>Gets the Latin-1 Supplement Unicode block (U+00A1-U+00FF).</summary>
+      <returns>The Latin-1 Supplement Unicode block (U+00A1-U+00FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedA">
+      <summary>Gets the Latin Extended-A Unicode block (U+0100-U+017F).</summary>
+      <returns>The Latin Extended-A Unicode block (U+0100-U+017F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedAdditional">
+      <summary>Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF).</summary>
+      <returns>The Latin Extended Additional Unicode block (U+1E00-U+1EFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedB">
+      <summary>Gets the Latin Extended-B Unicode block (U+0180-U+024F).</summary>
+      <returns>The Latin Extended-B Unicode block (U+0180-U+024F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedC">
+      <summary>Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F).</summary>
+      <returns>The Latin Extended-C Unicode block (U+2C60-U+2C7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedD">
+      <summary>Gets the Latin Extended-D Unicode block (U+A720-U+A7FF).</summary>
+      <returns>The Latin Extended-D Unicode block (U+A720-U+A7FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedE">
+      <summary>Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F).</summary>
+      <returns>The Latin Extended-E Unicode block (U+AB30-U+AB6F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Lepcha">
+      <summary>Gets the Lepcha Unicode block (U+1C00-U+1C4F).</summary>
+      <returns>The Lepcha Unicode block (U+1C00-U+1C4F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.LetterlikeSymbols">
+      <summary>Gets the Letterlike Symbols Unicode block (U+2100-U+214F).</summary>
+      <returns>The Letterlike Symbols Unicode block (U+2100-U+214F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Limbu">
+      <summary>Gets the Limbu Unicode block (U+1900-U+194F).</summary>
+      <returns>The Limbu Unicode block (U+1900-U+194F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Lisu">
+      <summary>Gets the Lisu Unicode block (U+A4D0-U+A4FF).</summary>
+      <returns>The Lisu Unicode block (U+A4D0-U+A4FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Malayalam">
+      <summary>Gets the Malayalam Unicode block (U+0D00-U+0D7F).</summary>
+      <returns>The Malayalam Unicode block (U+0D00-U+0D7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Mandaic">
+      <summary>Gets the Mandaic Unicode block (U+0840-U+085F).</summary>
+      <returns>The Mandaic Unicode block (U+0840-U+085F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MathematicalOperators">
+      <summary>Gets the Mathematical Operators Unicode block (U+2200-U+22FF).</summary>
+      <returns>The Mathematical Operators Unicode block (U+2200-U+22FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MeeteiMayek">
+      <summary>Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF).</summary>
+      <returns>The Meetei Mayek Unicode block (U+ABC0-U+ABFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MeeteiMayekExtensions">
+      <summary>Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF).</summary>
+      <returns>The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousMathematicalSymbolsA">
+      <summary>Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF).</summary>
+      <returns>The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousMathematicalSymbolsB">
+      <summary>Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF).</summary>
+      <returns>The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousSymbols">
+      <summary>Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF).</summary>
+      <returns>The Miscellaneous Symbols Unicode block (U+2600-U+26FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousSymbolsandArrows">
+      <summary>Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF).</summary>
+      <returns>The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousTechnical">
+      <summary>Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF).</summary>
+      <returns>The Miscellaneous Technical Unicode block (U+2300-U+23FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.ModifierToneLetters">
+      <summary>Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F).</summary>
+      <returns>The Modifier Tone Letters Unicode block (U+A700-U+A71F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Mongolian">
+      <summary>Gets the Mongolian Unicode block (U+1800-U+18AF).</summary>
+      <returns>The Mongolian Unicode block (U+1800-U+18AF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Myanmar">
+      <summary>Gets the Myanmar Unicode block (U+1000-U+109F).</summary>
+      <returns>The Myanmar Unicode block (U+1000-U+109F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MyanmarExtendedA">
+      <summary>Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F).</summary>
+      <returns>The Myanmar Extended-A Unicode block (U+AA60-U+AA7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.MyanmarExtendedB">
+      <summary>Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF).</summary>
+      <returns>The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.NewTaiLue">
+      <summary>Gets the New Tai Lue Unicode block (U+1980-U+19DF).</summary>
+      <returns>The New Tai Lue Unicode block (U+1980-U+19DF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.NKo">
+      <summary>Gets the NKo Unicode block (U+07C0-U+07FF).</summary>
+      <returns>The NKo Unicode block (U+07C0-U+07FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.None">
+      <summary>Gets an empty Unicode range.</summary>
+      <returns>A Unicode range with no elements.</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.NumberForms">
+      <summary>Gets the Number Forms Unicode block (U+2150-U+218F).</summary>
+      <returns>The Number Forms Unicode block (U+2150-U+218F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Ogham">
+      <summary>Gets the Ogham Unicode block (U+1680-U+169F).</summary>
+      <returns>The Ogham Unicode block (U+1680-U+169F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.OlChiki">
+      <summary>Gets the Ol Chiki Unicode block (U+1C50-U+1C7F).</summary>
+      <returns>The Ol Chiki Unicode block (U+1C50-U+1C7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.OpticalCharacterRecognition">
+      <summary>Gets the Optical Character Recognition Unicode block (U+2440-U+245F).</summary>
+      <returns>The Optical Character Recognition Unicode block (U+2440-U+245F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Oriya">
+      <summary>Gets the Oriya Unicode block (U+0B00-U+0B7F).</summary>
+      <returns>The Oriya Unicode block (U+0B00-U+0B7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Phagspa">
+      <summary>Gets the Phags-pa Unicode block (U+A840-U+A87F).</summary>
+      <returns>The Phags-pa Unicode block (U+A840-U+A87F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.PhoneticExtensions">
+      <summary>Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F).</summary>
+      <returns>The Phonetic Extensions Unicode block (U+1D00-U+1D7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.PhoneticExtensionsSupplement">
+      <summary>Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF).</summary>
+      <returns>The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Rejang">
+      <summary>Gets the Rejang Unicode block (U+A930-U+A95F).</summary>
+      <returns>The Rejang Unicode block (U+A930-U+A95F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Runic">
+      <summary>Gets the Runic Unicode block (U+16A0-U+16FF).</summary>
+      <returns>The Runic Unicode block (U+16A0-U+16FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Samaritan">
+      <summary>Gets the Samaritan Unicode block (U+0800-U+083F).</summary>
+      <returns>The Samaritan Unicode block (U+0800-U+083F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Saurashtra">
+      <summary>Gets the Saurashtra Unicode block (U+A880-U+A8DF).</summary>
+      <returns>The Saurashtra Unicode block (U+A880-U+A8DF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Sinhala">
+      <summary>Gets the Sinhala Unicode block (U+0D80-U+0DFF).</summary>
+      <returns>The Sinhala Unicode block (U+0D80-U+0DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SmallFormVariants">
+      <summary>Gets the Small Form Variants Unicode block (U+FE50-U+FE6F).</summary>
+      <returns>The Small Form Variants Unicode block (U+FE50-U+FE6F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SpacingModifierLetters">
+      <summary>Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF).</summary>
+      <returns>The Spacing Modifier Letters Unicode block (U+02B0-U+02FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Specials">
+      <summary>Gets the Specials Unicode block (U+FFF0-U+FFFF).</summary>
+      <returns>The Specials Unicode block (U+FFF0-U+FFFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Sundanese">
+      <summary>Gets the Sundanese Unicode block (U+1B80-U+1BBF).</summary>
+      <returns>The Sundanese Unicode block (U+1B80-U+1BBF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SundaneseSupplement">
+      <summary>Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF).</summary>
+      <returns>The Sundanese Supplement Unicode block (U+1CC0-U+1CCF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SuperscriptsandSubscripts">
+      <summary>Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F).</summary>
+      <returns>The Superscripts and Subscripts Unicode block (U+2070-U+209F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalArrowsA">
+      <summary>Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF).</summary>
+      <returns>The Supplemental Arrows-A Unicode block (U+27F0-U+27FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalArrowsB">
+      <summary>Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F).</summary>
+      <returns>The Supplemental Arrows-B Unicode block (U+2900-U+297F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalMathematicalOperators">
+      <summary>Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF).</summary>
+      <returns>The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SupplementalPunctuation">
+      <summary>Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F).</summary>
+      <returns>The Supplemental Punctuation Unicode block (U+2E00-U+2E7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.SylotiNagri">
+      <summary>Gets the Syloti Nagri Unicode block (U+A800-U+A82F).</summary>
+      <returns>The Syloti Nagri Unicode block (U+A800-U+A82F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Syriac">
+      <summary>Gets the Syriac Unicode block (U+0700-U+074F).</summary>
+      <returns>The Syriac Unicode block (U+0700-U+074F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tagalog">
+      <summary>Gets the Tagalog Unicode block (U+1700-U+171F).</summary>
+      <returns>The Tagalog Unicode block (U+1700-U+171F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tagbanwa">
+      <summary>Gets the Tagbanwa Unicode block (U+1760-U+177F).</summary>
+      <returns>The Tagbanwa Unicode block (U+1760-U+177F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.TaiLe">
+      <summary>Gets the Tai Le Unicode block (U+1950-U+197F).</summary>
+      <returns>The Tai Le Unicode block (U+1950-U+197F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.TaiTham">
+      <summary>Gets the Tai Tham Unicode block (U+1A20-U+1AAF).</summary>
+      <returns>The Tai Tham Unicode block (U+1A20-U+1AAF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.TaiViet">
+      <summary>Gets the Tai Viet Unicode block (U+AA80-U+AADF).</summary>
+      <returns>The Tai Viet Unicode block (U+AA80-U+AADF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tamil">
+      <summary>Gets the Tamil Unicode block (U+0B80-U+0BFF).</summary>
+      <returns>The Tamil Unicode block (U+0B82-U+0BFA).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Telugu">
+      <summary>Gets the Telugu Unicode block (U+0C00-U+0C7F).</summary>
+      <returns>The Telugu Unicode block (U+0C00-U+0C7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Thaana">
+      <summary>Gets the Thaana Unicode block (U+0780-U+07BF).</summary>
+      <returns>The Thaana Unicode block (U+0780-U+07BF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Thai">
+      <summary>Gets the Thai Unicode block (U+0E00-U+0E7F).</summary>
+      <returns>The Thai Unicode block (U+0E00-U+0E7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tibetan">
+      <summary>Gets the Tibetan Unicode block (U+0F00-U+0FFF).</summary>
+      <returns>The Tibetan Unicode block (U+0F00-U+0FFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Tifinagh">
+      <summary>Gets the Tifinagh Unicode block (U+2D30-U+2D7F).</summary>
+      <returns>The Tifinagh Unicode block (U+2D30-U+2D7F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.UnifiedCanadianAboriginalSyllabics">
+      <summary>Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F).</summary>
+      <returns>The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.UnifiedCanadianAboriginalSyllabicsExtended">
+      <summary>Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF).</summary>
+      <returns>The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.Vai">
+      <summary>Gets the Vai Unicode block (U+A500-U+A63F).</summary>
+      <returns>The Vai Unicode block (U+A500-U+A63F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.VariationSelectors">
+      <summary>Gets the Variation Selectors Unicode block (U+FE00-U+FE0F).</summary>
+      <returns>The Variation Selectors Unicode block (U+FE00-U+FE0F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.VedicExtensions">
+      <summary>Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF).</summary>
+      <returns>The Vedic Extensions Unicode block (U+1CD0-U+1CFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.VerticalForms">
+      <summary>Gets the Vertical Forms Unicode block (U+FE10-U+FE1F).</summary>
+      <returns>The Vertical Forms Unicode block (U+FE10-U+FE1F).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.YijingHexagramSymbols">
+      <summary>Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF).</summary>
+      <returns>The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.YiRadicals">
+      <summary>Gets the Yi Radicals Unicode block (U+A490-U+A4CF).</summary>
+      <returns>The Yi Radicals Unicode block (U+A490-U+A4CF).</returns>
+    </member>
+    <member name="P:System.Text.Unicode.UnicodeRanges.YiSyllables">
+      <summary>Gets the Yi Syllables Unicode block (U+A000-U+A48F).</summary>
+      <returns>The Yi Syllables Unicode block (U+A000-U+A48F).</returns>
+    </member>
+  </members>
+</doc>
\ No newline at end of file
diff --git a/packages/System.Text.Encodings.Web.4.5.0/useSharedDesignerContext.txt b/packages/System.Text.Encodings.Web.4.5.0/useSharedDesignerContext.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/System.Text.Encodings.Web.4.5.0/useSharedDesignerContext.txt
diff --git a/packages/System.Text.Encodings.Web.4.5.0/version.txt b/packages/System.Text.Encodings.Web.4.5.0/version.txt
new file mode 100644
index 0000000..47004a0
--- /dev/null
+++ b/packages/System.Text.Encodings.Web.4.5.0/version.txt
@@ -0,0 +1 @@
+30ab651fcb4354552bd4891619a0bdd81e0ebdbf

--
Gitblit v1.9.3