01. marts 2010 - 11:23Der er
8 kommentarer og 1 løsning
Dynamisk object
Nu har jeg været vandt til i Flash at kunne lave en dynamic class, hvor jeg kan tilføje members uden at den giver fejl. Så prøvede jeg i C#, men jeg får en fejl. Dette er, had jeg ønsker:
public static class StringPairs { private static Stack<String> Indexes = new Stack<String>(); private static Stack<String> Values = new Stack<String>();
public static String Get(String Index) { for (Int32 i = 0; i < Indexes.Count; i++) { if (Indexes.ToArray()[i] == Index) { return Values.ToArray()[i]; } }
1) JavaScript er prototype baseret. Det er C# ikke. Derfor har C# ikke den mulighed.
2) Den StringPairs class er slem. Man skal absolut ikke skrive den slags selv.
3) StringDictionary er brugbar, men forudsat at vi snakker .NET 2.0 eller nyere (3.5 er current og 4.0 udkommer i næste måned !), så er Dictionary<string,string> bedre.
4) Hvis man er på et rimeligt sofistikeret niveau i .NET, så kan man f.eks. bruge Castle DynamicProxy til at generere en proxy klasse som både extender en original klasse og Dictionary<string,string>.
Det handler om at kode defensivt og det du laver der er et rent debugging helvede.
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.