C# 如何在c中获取URL的onyl部分#
我正在使用C#创建一个模块,它需要引用URL 我这里有两个URL示例 && 现在我需要从这两个URL得到产品ID,第一个是8660,第二个是49950。我无法更改生成这些URL的方式。最简单的方法是 然后我可以做下面的事情,生活就会变得轻松C# 如何在c中获取URL的onyl部分#,c#,asp.net,url,C#,Asp.net,Url,我正在使用C#创建一个模块,它需要引用URL 我这里有两个URL示例 && 现在我需要从这两个URL得到产品ID,第一个是8660,第二个是49950。我无法更改生成这些URL的方式。最简单的方法是 然后我可以做下面的事情,生活就会变得轻松 string Pid= Request.Querystring["rvdsfpid"]; 但是,由于我无法控制URL的生成方式,我如何捕获URL并仅获取productId。假设这是传递给您的URL格式,而您无法执行任何其他操作……您需要获取完整的UR
string Pid= Request.Querystring["rvdsfpid"];
但是,由于我无法控制URL的生成方式,我如何捕获URL并仅获取productId。假设这是传递给您的URL格式,而您无法执行任何其他操作……您需要获取完整的URL,然后将其拆分。这是基本的,你必须在里面添加一些额外的支票和东西
string url = "http://www.website.com/ProductDetail/tabid/86/rvdsfpid/1gb-dual-port-iscsi-8660/rvdsfmfid/qlogic-174/Default.aspx"
//string url = "http://www.website.com/ProductDetail/tabid/86/rvdsfpid/49950/default.aspx";
url = url.Replace("http://", ""); //get rid of that, add code to check for https?
string[] x = url.Split('/');
string productCode = x[5]; //assuming the product code is always the 6th item in the array!
string code = "";
if (productCode.IndexOf("-") > -1)
{
code = productCode.Substring(productCode.LastIndexOf("-")+1);
}
else
{
code = productCode;
}
给定像第一个示例一样的URL,如何确定哪个部分是产品ID?在两个示例中,搜索URL的相对位置是相同的:它位于从“www.website.com/ProductDetail/tabid/86/rvdsfpid/”后面开始并以下一个“/”结尾的块中,因此将该部分作为字符串获取没有问题,但是在1个示例中,在这个块中只有您正在查找的ID,在第二个示例中,有您正在查找的ID和我们不关心的数据,那么您如何知道您关心的是什么数据?