Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Nie można przekazać wielu wartości w ciągu zapytania w .aspx do raportu w czasie wykonywania

strPb1.Length zawsze będzie większe niż 0 w twoim kodzie. Jeśli nie ma przecinków, Split(',') nadal zwróci tablicę zawierającą oryginalny ciąg. Dlatego początkowe ustawienie wartości nie jest konieczne.

Sam QueryString i split() wydają się być w porządku. Być może problem leży w innym miejscu kodu lub ciągu zapytania, którego używasz. Jeśli zamierzasz dodać przecinki z powrotem do ciągu, po co je usuwać?

Ponadto alternatywą dla użycia parametru rozdzielanego przecinkami jest ponowne użycie tego samego parametru.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
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zamień wiele znaków w SQL

  2. TSQL Shred XML — praca z przestrzeniami nazw

  3. Zaktualizuj opcję ANSI_NULLS w istniejącej tabeli

  4. Klawisz skrótu do modyfikacji procedury składowanej w ssms

  5. Użyj zmiennej z TOP w instrukcji select w SQL Server bez robienia jej dynamicznej