Witaj na Zine.net online Zaloguj się | Rejestracja | Pomoc

Kilka głupich wpadek...

Nawiązując do postu Procenta o głupich rzeczach podczas kodowania chciałam dodać swoje przykłady, które czasem (często ?) doprowadzają mnie do szału. I żeby nie zrozumieć mnie źle – zwykle jestem zła na siebie, ale chyba równocześnie równie mocno na Microsoft.
Let me begin…

Gdzie jest tekst z TextBox’a?

Problem o którym zaraz napiszę zwrócił moją uwagę głównie z powodu, iż zdarza mi się nader często i wciąż zapominam czym jest spowodowany. Generalnie sama już nie wiem czy ciągle występuje z powodu mojej głupoty (w końcu skoro znam powód i rozwiązanie to powinnam o nim pamiętać, a nie wciąż popełniać te same błędy) czy mojego braku umiejętności zaakceptowania takiego stanu spraw.
Ale do rzeczy…
Buduję sobie piękną aplikację ASP.Net. Używam standardowych kontrolek. Powiedzmy ze wyświetlam listę wydatków:



Sens akceptacji to zgłoszenie wydatków (choćby jednego). Jak to najłatwiej sprawdzić? Oczywiście sprawdzając czy ich suma jest większa od zera. Przy wpisywaniu wydatków wykonywana jest funkcja JavaScript sumująca je do pola ‘Suma:’. Walidacja wartości może być wykonana przez kod:

        protected bool ValidateSum()
        {
            if (!string.IsNullOrEmpty(sum.Text))
            {
                int sumValue;
                int.TryParse(sum.Text, out sumValue);
                return sumValue > 0;
            }
            else
            {
                return false;
            }
        }


Dlaczego więc dostaję błąd walidacji? Suma moich wydatków to 105.3. Skąd komunikat ‘Aby zaakceptować  musisz zgłosić wydatki’?
Wbrew zasadzie ‘nie debugguj, pomyśl’, ja jednak zaczęłam debuggować. No i okazało się, że…



… mimo iż widzę jak byk, ze na stronie wartość to „105.3”, pole nie posiada wartości property .Text. Why Leo, why? Tak wiem – można się kłócić, że to z powodu mojej głupoty, że powinnam wiedzieć, że TextBoxy o ustawionej wartości ReadOnly na „true” nie mają ustawionej wartości Text… Powinnam, wiem, ale prawie nigdy o tym nie pamiętam.

Dlaczego? Bo to nie ma dla mnie żadnego sensu – oczywiście mówię tu o punkcie widzenia użytkownika takiej kontrolki. Być może z perspektywy jej implementacji jest to sprawa oczywista, ale tego nie wiem.
Skąd ty czytelniku miałeś wiedzieć, że kontrolka ma wartość ReadOnly ustawioną na „true”? Pewnie trochę z doświadczenia z podobną sytuacją, albo z faktu, iż pole sumujące nie powinno być edytowalne. Anyway – ja niemal nigdy nie pamiętam, że przeżyłam już taką sytuację 100 razy. Może napisanie o tym w notce coś zmieni przynajmniej dla mnie.

BTW – ma ktoś jakieś sensowne lekarstwo na ReadOnly?

Execu dlaczego się nie uruchamiasz?

Pewnego pięknego dnia uruchomiłam sobie plik.exe. Robiłam to od kilku miesięcy kilka razy dziennie, a tym razem dostałam komunikat:



MyExec uruchamiał zdalnie aplikację znajdującą się na serwerze testowym, więc pomyślałam w pierwszej chwili, że ktoś bawił się tam uprawnieniami (w końcu komunikat wygląda tak jakby był jakiś problem z bezpieczeństwem). Nie znam się na tym kompletnie, więc w końcu zaczęłam google’ać. To również nie przyniosło pożądanego skutku – najczęstsza rada dotyczyła zmiany Policy level. Nie muszę chyba dodawać jak mało pomocne się to okazywało.
Na szczęście jeden post mnie natchnął i doprowadził do rozwiązania. Chodziło mianowicie o ustawienie opcji uruchamiania mojego programu jako ‘Run as administrator’. Powinnam dodać, że pracuję na… Windows 7?
Opublikowane 27 kwietnia 2010 11:21 przez fusion

Komentarze:

27 kwietnia 2010 21:44 by dotnetomaniak.pl

# Cold Fusion : Kilka głupich wpadek...

Dziękujemy za publikację - Trackback z dotnetomaniak.pl

Komentarze anonimowe wyłączone