Avatar billede ameq Nybegynder
19. april 2006 - 19:30 Der er 11 kommentarer og
1 løsning

hjælp til SqlCommand.Parameters

Jeg har lavet den her kode til net 2.0
public void SqlCommand(string ProceduresName, SqlParameter[] Parameter)
{
    try
    {
          SqlCommand _sqlCommand = new SqlCommand(ProceduresName, this.Connect);
          _sqlCommand.CommandType = CommandType.StoredProcedure;
          _sqlsommand.Parameters.AddRange(Parameter);
          this.Open();
      _sqlCommand.ExecuteNonQuery();
      this.Close();
    }
    catch(Exception _fejl)
    {
        throw _fejl;
    }
}

Nu skal jeg så rekode det her til 1.1 og mit problem er så at stadig godt vil kunne overføre SqlParameter[] Parameter men der findes ikke en Parameters.AddRange på SqlCommand'er i 1.1 så hvordan gøre jeg så lige det?

og jeg vil helt ikke loop mit Parameter array igennem
Avatar billede dr_chaos Nybegynder
19. april 2006 - 19:55 #1
_sqlsommand.Parameters =Parameter;
Avatar billede dr_chaos Nybegynder
19. april 2006 - 19:59 #2
prøv med det
Avatar billede ameq Nybegynder
19. april 2006 - 20:04 #3
Parameters er readonly eller kun get
Avatar billede dr_chaos Nybegynder
19. april 2006 - 20:08 #4
public void SqlCommand(string ProceduresName, SqlParameter[] Parameters)
{
    try
    {
          SqlCommand _sqlCommand = new SqlCommand(ProceduresName, this.Connect);
    _sqlCommand.CommandType = CommandType.StoredProcedure;
        _sqlCommand.Parameters.AddRange(Parameters);
        this.Open();
        _sqlCommand.ExecuteNonQuery();
      this.Close();
    }
    catch(Exception _fejl)
    {
        throw _fejl;
    }
}
Avatar billede hmortensen Nybegynder
19. april 2006 - 20:10 #5
Du kan lave en løkke.

foreach (SqlParameter sp in Parameters)
  _sqlCommand.Parameters.Add(sp);

eller

for (int i = 0; i < Parameters.Length; i++)
  _sqlCommand.Parameters.Add(Parameters[i]);
Avatar billede ameq Nybegynder
19. april 2006 - 20:17 #6
dr_chaos 20:08:44 : hva har du lige ændret?
hmortensen: Jeg ville meget gerne undgå det, men jo det kan blive en nødvendighed
Avatar billede dr_chaos Nybegynder
19. april 2006 - 20:25 #7
linie 1 Parameter omdøbt til Parameters.
stavefejl i
    _sqlsommand.Parameters.AddRange(Parameter);
til
  _sqlCommand.Parameters.AddRange(Parameters);

hjalp det ikke noget ?
prøv lige at tjekke om Parameters er tom før du tilføjer den til _sqlCommand
Avatar billede ameq Nybegynder
19. april 2006 - 20:30 #8
nej AddRange findes slet ikke i 1.1, stavefejl fordi jeg sad lige og ændre noget inden jeg oprettede sprøgsmålet =)
Avatar billede dr_chaos Nybegynder
19. april 2006 - 20:33 #9
Det kan jeg se.
du kan bruge den metode som hmortensen forslog eller

foreach (SqlParameter parameter in Parameters)
        {
            _sqlCommand.Parameters.Add(parameter);
        }
Avatar billede dr_chaos Nybegynder
19. april 2006 - 20:36 #10
De er basalt set ens foreach er måske bare lidt kønnere.

Så ikke at du skrev det med at addrange ikke fandtes :(
Skal snart i seng tror jeg
Avatar billede ameq Nybegynder
19. april 2006 - 20:45 #11
=) helt okey, jeg tror det må blive på den måde så =) takker for hjælpen
Avatar billede hmortensen Nybegynder
19. april 2006 - 20:55 #12
Det var så lidt.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester