c#如何请求url参数并更改char

时间:2012-07-15 14:04:15

标签: c# url parameters request.querystring namevaluecollection

获取一些url参数后,我想稍后在我的c#代码中使用它们,但格式略有不同。

“HTTP://example/myexample.aspx与会者= john.sam&安培;扬声器= fred.will.tony.amy.al”

我可以使用以下格式将值作为现有格式的字符串获取: c#代码

public string myattendees()
{
    string attendees;
    attendees = Request.QueryString["attendees"];
    return attendees;
}
public string myspeakers()
{
    string speakers;
    speakers = Request.QueryString["speakers"];
    return speakers;
}

myattendees返回(以句号分隔,没有引号)

john.sam

和 myspeakers返回(以句号分隔,没有引号)

fred.will.tony.amy.al

但是我想转换它,所以它会返回一个像逗号分隔和单引号值的字符串。

'john','sam'

'fred','will','tony','amy','al'

在c#中执行此操作的最佳方法是什么?使用NameValueCollection?

为了清晰起见,编辑了*问题。 *编辑 - 修正了拼写错误。

2 个答案:

答案 0 :(得分:3)

此代码将为您提供通过分割点获取的字符串数组:

string[] speakers;
if (Request.QueryString["speakers"] == null)
    speakers = new string[0];
else
    speakers = Request.QueryString["speakers"].Split('.');

答案 1 :(得分:1)

试试这个:

public class MyClassGetQueryString
{

    private const string Attendees = "attendees";
    private const string Speakers = "speakers";

    public string MyAttendees()
    {
        return Request.QueryString[MyClassGetQueryString.Attendees] ?? string.Empty;
    }

    public string MySpeakers()
    {
        return Request.QueryString[MyClassGetQueryString.Speakers] ?? string.Empty;
    }

    public string[] MyAttendeesParts()
    {
        return this.MyAttendees().Split('.');
    } 

    public string[] MySpeakersParts()
    {
        return this.MySpeakers().Split('.');
    } 
}