从字符串输入中获取参数值

001*_*001 1 c# string arguments web-services restful-authentication

如何创建一个类方法来从字符串输入中获取参数?

字符串值GetArugmentValueByName(字符串输入,字符串名称)

myInput="code=4/P7q7W91a-oMsCeLvIaQm6bTrgtp6&
client_id=21302922996.apps.googleusercontent.com&
client_secret=XTHhXh1SlUNgvyWGwDk1EjXB&
redirect_uri=https://www.example.com/back&
grant_type=authorization_code";
Run Code Online (Sandbox Code Playgroud)

如果我这样做

string myGrantType = GetArugmentValueByName(myInput, "grant_type");
Run Code Online (Sandbox Code Playgroud)

myGrantType的值应该等于"authorization_code"

Cla*_*ton 5

您可以使用ParseQueryString将params解析为名称值集合,然后将索引转换为您要查找的param的索引.

public string GetArgumentValueByName(string queryString, string paramName)
{
    var paramCol = HttpUtility.ParseQueryString(queryString);
    return paramCol[paramName] ?? string.Empty;        
}
Run Code Online (Sandbox Code Playgroud)