ASP.NET Core 1 또는 2를 사용 Microsoft.AspNetCore.WebUtilities.QueryHelpers
하는 경우 Microsoft.AspNetCore.WebUtilities 패키지 에서이 작업을 수행 할 수 있습니다 .
ASP.NET Core 3.0 이상을 사용 WebUtilities
하는 경우은 이제 ASP.NET SDK의 일부이며 별도의 nuget 패키지 참조가 필요하지 않습니다.
사전으로 구문 분석하려면 :
var uri = new Uri(context.RedirectUri);
var queryDictionary = Microsoft.AspNetCore.WebUtilities.QueryHelpers.ParseQuery(uri.Query);
ParseQueryString
System.Web 과 달리 이것은 IDictionary<string, string[]>
ASP.NET Core 1.x 또는 IDictionary<string, StringValues>
ASP.NET Core 2.x 이상에서 유형의 사전을 반환 하므로 값은 문자열 모음입니다. 이것이 사전이 동일한 이름을 가진 여러 쿼리 문자열 매개 변수를 처리하는 방법입니다.
쿼리 문자열에 매개 변수를 추가하려면 다음에서 다른 방법을 사용할 수 있습니다 QueryHelpers
.
var parametersToAdd = new System.Collections.Generic.Dictionary<string, string> { { "resource", "foo" } };
var someUrl = "http://www.google.com";
var newUri = Microsoft.AspNetCore.WebUtilities.QueryHelpers.AddQueryString(someUrl, parametersToAdd);
.net core 2.2를 사용하면 다음을 사용하여 쿼리 문자열을 얻을 수 있습니다.
var request = HttpContext.Request;
var query = request.query;
foreach (var item in query){
Debug.WriteLine(item)
}
다음과 같이 키 : 값 쌍 모음을 얻을 수 있습니다.
[0] {[companyName, ]}
[1] {[shop, ]}
[2] {[breath, ]}
[3] {[hand, ]}
[4] {[eye, ]}
[5] {[firstAid, ]}
[6] {[eyeCleaner, ]}
Microsoft.AspNet.WebUtilties
은Mono.HttpUtility
라이브러리 일 수 있습니다 .