Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Langt de fleste som laver tutorials og andre små eksempler på nettet, støtter sig op af metode nummer 1.
Men ellers vil mange nok tage nummer 2 i brug hvis de lige skal have noget hen. Men hvad falder mest i din smag?
Jeg kan godt lige nummer 1 da det ikke "ødelægger" linjen når jeg skal læse den, jeg skal ikke se 100 uderlige typecasts eller andet lir. Jeg ser nogle henvisninger til variabler. Problemet ved nummer 1 kan så opstå når du har mere end 4-6 stks variabler du skal have med, så kan det være svært at overskue hvis man ikke lige er 130% obs på alt.
Jeg ville bruge String.Format("{0} med dig", test), hvis opgaven går ud på at bygge en string op med et fast indhold, hvor enkelte dele kan variere.
Hvis opgaven omfatter mange formatteringer og appends til en tekst, så er StringBuilder vejen frem. Den har en Append metode, der tilføjer tekst, og en AppendFormat, der appender med formattering som string.Format.
Synes godt om
Slettet bruger
07. juli 2006 - 10:49#4
Med de simple eksempler du viser er der ikke rigtigt nogen forskel og derfor heller ikke nogen grund til at bruge meget krudt på at vælge, men tommelfingerreglen lyder,
1) Hvis du skal lægge mange stringe sammen brug en StringBuilder. 2) Hvis noget skal placeres inde midt i en string brug en formatter, ala version 1 eller brug evt. String.Format, hvis du skal bruge resultatet i en variable. 3) String.ConCat eller string + string er "ens" og derfor en smagssag.
Det som betyder mest er at du ligeså snart du begynder a concatenerer i et loop får skiftet til en StringBuilder.
Personligt i dit tilfælde foretrækker jeg 1'eren, og det har været i forbindelse med en overgang fra Java til C#...
Startede med: string n = "Peter"; string s = "hej " + n; Console.WriteLine( s + ", Hvordan går det?" );
Det der kan siges her, er at sådan gjorde vi jo i Java, det var hvad vi kendte...
Så blev det: string n = "Peter"; string s = "hej " + n; Console.WriteLine( "{0}, Hvordan går det?", s );
Opdagelsen af Format i Console.WriteLine, og begyndte at bruge det meget af stort set samme grund som the party dog... det virkede mere overskueligt...
Og sidst: string n = "Peter"; string s = string.Format("hej {0}",n); Console.WriteLine( "{0}, Hvordan går det?", s );
Det er det jeg i dag bedst kan lide, med mindre vi snakker nødvendighed for StringBuilders, men den snak er taget -------------------------------------------------------------------------------------
Sagen er jo at det er mest smagsag hvis du spørg mig... Personligt kan jeg bedst lide Formatters frem for ConCat eller + ("som er det samme").
Dog vil jeg anbefale at være Konsekvent, brug ikke Format et sted og ConCat et andet... Det bidrager bare til forviring hvis du spørg mig...
Men vil da mene at det er mere overskueligt med format... tag fx:
"Data Source=" + server + ";Database=" + database + "; User ID=" + user + ";Password=" + password
PS: Java 1.5 introducerede formatering i Java (dog mere C style end C# style d.v.s. at det er % som escaper)
Synes godt om
Ny brugerNybegynder
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.