c# - 有没有一种简单的方法可以从 Windows Phone 中的 URI 获取查询字符串参数?

标签 c# windows-phone-8 uri query-string windows-phone

我目前正在使用自定义 URI 方案来验证使用 OAuth 的用户。为此,我需要从查询字符串中获取某些参数的值。

有没有一种简单的方法可以获取这些信息?或者是我使用 REGEX 或其他字符串操作的唯一选择?

我之前找到了对 ParseQueryString 等内容的引用,但这些内容包含在 Windows Phone 上不可用的库中。

最佳答案

经过大量搜索,我找到了一种简单的方法。只要查询字符串保持相当简单(就像它们在 OAuth 中一样),此方法就应该有效。

public static Dictionary<string, string> ParseQueryString( string uri ) {

    string substring = uri.Substring( ( ( uri.LastIndexOf('?') == -1 ) ? 0 : uri.LastIndexOf('?') + 1 ) );

    string[] pairs = substring.Split( '&' );

    Dictionary<string,string> output = new Dictionary<string,string>();

    foreach( string piece in pairs ){
        string[] pair = piece.Split( '=' );
        output.Add( pair[0], pair[1] );
    }

    return output;

}

关于c# - 有没有一种简单的方法可以从 Windows Phone 中的 URI 获取查询字符串参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15888883/

相关文章:

android - 如何使用 "Share image using"共享 Intent 在 android 中共享图像?

c# - WPF Canvas 中有超过 200 万个矩形

c# - NHibernate 没有获取更改

windows-phone-8 - 是否可以仅使用 HTML5、CSS3 和 JavaScript 开发 Windows Phone 8 应用程序?

url - 如何在 url 中使用 at 符号 (@)?

java - 解决 URI 在 Jersey 中匹配的资源+方法

c# - 为什么锁定同一对象不会导致死锁?

c# - 如何使用 AutoFixture 在保留类型自定义的同时使用自定义属性进行构建?

c# - 从邮件客户端打开应用程序,Windows Phone 8

c++ - Windows Phone 中的进程关联