URI IsWellFormedOriginalString for URL with hashbang

本文关键字:with hashbang URL for IsWellFormedOriginalString URI | 更新日期: 2023-09-27 18:33:17

我想使用 IsWellFormedOriginalString 验证 URL。我使用此代码:

var enc2 = "/discussion/somepage.aspx?DiscussionID=13&PostID=1#post4";
Uri.TryCreate(enc2, UriKind.RelativeOrAbsolute, out u1);
Console.WriteLine(u1.IsWellFormedOriginalString());

但它返回false.如果我使用没有哈希的网址

/discussion/somepage.aspx?DiscussionID=13&PostID=1

它工作正常。如何解决?

URI IsWellFormedOriginalString for URL with hashbang

在重新阅读本文 https://blog.httpwatch.com/2011/03/01/6-things-you-should-know-about-fragment-urls/后,我意识到哈希不应该作为 Uri 的一部分进行验证。所以我在检查之前排除了哈希部分:

enc2 = enc2.Split('#')[0];