コード内の strPb1.Length は常に 0 より大きくなります。コンマがない場合でも、Split(',') は元の文字列を含む配列を返します。したがって、値の初期設定は必要ありません。
QueryString と split() 自体は問題ないようです。おそらく、問題はコードまたは使用しているクエリ文字列の別の場所にあります。コンマを文字列に追加し直す場合、なぜそれらを削除するのですか?
また、コンマ区切りのパラメーターを使用する代わりに、同じパラメーターを再利用することもできます.www.test.com/?pm1=test1&pm1=test2&pm1=test3
string[] strPb1 = Request.QueryString.GetValues("pm1");
if(strPb1 != null && strPb1.Length > 0)
{
for(int i = 0; i != strPb1.Length; i++)
{
//Code here
}
}