Łukasz Gąsior
  • Home
  • now!
  • Blog
  • Po polsku
Social Links
Twitter
LinkedIn
Facebook
YouTube
Reddit
Instagram
GitHub
Medium
RSS
Łukasz Gąsior
  • Home
  • now!
  • Blog
  • Po polsku

Po polsku

104 posts
  • Po polsku

Quick Tip: 05. waliduj dane w formacie w jakim je wyświetlasz

  • 2009-09-11
  • 2 komentarze

Często dane, które posiadamy musimy odpowiednio sformatować przed ich wyświetleniem.
Jeżeli takie dane musimy zwalidować, to warto zadbać, aby walidowane dane były  w takim samym formacie jak je wyświetlamy.
Prosty przykład:
Powiedzmy, że mamy metodę pobierającą kwotę faktury:
[sourcecode language=”csharp”] var invoiceBalance = GetInvoiceBalance();
[/sourcecode] Kwotę tą otrzymujemy z dokładnością do 4 miejsc po przecinku.
Jednak przez wyświetleniem formatujemy ją:
[sourcecode language=”csharp”] litInvoiceBalance.Text = invoiceBalance.ToString("C");
[/sourcecode] Co w wyświetli nam np. 100,00 zł.
Jak widać nasza zmienna wyświetlana jest z dokładnością do 2 miejsc po przecinku.
Dodatkowo załóżmy, że jeżeli pobrana kwota jest większa od 0, umożliwimy użytkownikowi zaznaczenie RadioButton’a, czyli:
[sourcecode language=”csharp”] if (invoiceBalance > 0)
{
rbMakePayment.Enabled = true;
}
[/sourcecode] Niby wszystko ok – aplikacja działa. Jeśli kwota jest większa od 0 możemy zaznaczyć RadioButton’a, a jeśli nie to nie możemy.
Problem pojawi się w sytuacji, kiedy nasza procedura zwróci np. 0,0010.
Co wówczas zrobi nasz program? Wyświetli 0,00 zł, ale jednocześnie pozwoli zaznaczyć RadioButton’a 🙁
Dzieje się tak, ponieważ 0,0010 zaokrąglone do dwóch miejsc po przecinku da nam 0,00, ale podczas walidowania kwota jest większa od zera.
Tego typu błędy są czasami ciężkie do wykrycia – kompilator nic nie zgłosi, a i sam błąd występuje rzadko.
Rozwiązaniem w tym przypadku jest zaokrąglenie naszej kwoty przed wyświetleniem i zwalidowaniem, czyli:
[sourcecode language=”csharp” highlight=”3″] var invoiceBalance = GetInvoiceBalance();
invoiceBalance = Math.Round(invoiceBalance, 2);
litInvoiceBalance.Text = invoiceBalance.ToString("C");
if (invoiceBalance > 0)
{
rbMakePayment.Enabled = true;
}
[/sourcecode] Warto zwrócić uwagę na takie sytuacje.

Share
  • Po polsku

Jak pobrać PublicKeyToken – GetAssemblyDetails

  • 2009-09-07
  • 4 komentarze
W jednym z projektów, nad którym ostatnio pracowałem, musiałem dodać referencje do pewnej biblioteki, czyli np. standardowe: [sourcecode language=”xml”] <add assembly="System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> [/sourcecode] Niby wszystko ok, ale to…
Share
  • Po polsku

Quick Tip: 04. przeszukuj kolekcje z where zamiast foreach

  • 2009-09-01
LINQ udostępnia metodę where, która umożliwia przeszukiwanie kolekcji tak jak foreach. Przykładowo, zamiast: [sourcecode language=”csharp”] var polishCustomers = new List<Customer>(); foreach (var customer in customers) { if (customer.Country == "Poland")…
Share
  • Po polsku

Darmowy hosting z ASP.NET 4.0 beta

  • 2009-06-02
  • 2 komentarze
Nie lada gratka dla każdego programisty ASP.NET 🙂 Firma ORCS Web udostępniła darmowy hosting z ASP.NET 4.0 beta(!). Oferta przeznaczona jest jedynie dla projektów testowych i nie zawiera m.in. e-maili,…
Share
  • Po polsku

ASP.NET MVC Training Kit

  • 2009-04-01
Parę dni temu Microsoft opublikował Training Kit do ASP.NET MVC 🙂 Pakiet materiałów przedstawia podstawowe zagdanienia związane z ASP.NET MVC. Training Kit składa się z czterech części: prezentacje hands-on-labs demonstracje…
Share
  • Po polsku

Intellisense dla jQuery i innych bibliotek javascript

  • 2009-03-19
  • One comment
W Visual Studio 2008 mamy możliwość korzystania z intellisense dla różnych bibliotek javascript. Aby jednak korzystać z tego dobrodziejstwa musimy: zainstalować SP1 do Visual Studio 2008 (wcześniej SP1 do .NET…
Share
  • Po polsku

ReSharper 4.5 Beta

  • 2009-03-18
  • One comment
Oj dzieje się, dzieje 🙂 Od wczoraj jest dostępne ASP.NET MVC w wersji RTM, dodatkowo został udostępniony ASP.NET AJAX 4.0 w wersji Preview 4 (o tym wkrótce); a do tego…
Share
  • Po polsku

ASP.NET MVC 1.0 wydany!

  • 2009-03-18
Wczoraj została wydana końcowa wersja ASP.NET MVC 1.0 🙂 Zwględem wersji RC2 jQuery został uaktualniony do wersji 1.3.2 (wcześniej załączona była wersja 1.3.1). ASP.NET MVC 1.0 można pobrać ze stron…
Share
  • Po polsku

Hip hip …

  • 2009-03-16
  • One comment
Stało się… … po długej i ciężkiej walce 🙂 ukończyłem dzisiaj studia oraz uzyskałem tytuł inżyniera. Głównym elemetem mojej pracy było stworzenie projektu bazy danych aplikacji – “Rejestr faktur”. Projekt…
Share
  • Po polsku

Quick Tip: 03. Stosuj nagłówki

  • 2009-03-06
Przeglądając źródła różnych stron www (HTML) często można znaleźć taki kod: [sourcecode language=”xhtml”] <span class="bigHeader">Mój Nagłówek</span> <span class="newsTitle">Mój News</span> [/sourcecode] W ten sposób za pomocą CSS ustalamy wygląd nagłówków, tytułów…
Share

Nawigacja po wpisach

Previous 1 … 5 6 7 8 9 … 11 Next
click & help!
Nakarm dziecko!
Follow me
RESHARPER ESSENTIALS
ReSharper Essentials
CODINGTV();
codingtv();
Twitter Feed
Categories
  • Azure Cloud (6)
  • Po polsku (104)
  • Windows (1)
Featured Posts
  • Azure Activity Log – Change History
    • 2020-09-29
  • Diagram Driven Cloud Infrastructure with Cloud Maker
    • 2020-09-22
  • Azure ARM template, but it is not JSON!
    • 2020-09-15
About
👍 Cloud | DevOps | Development | Technical Leadership | 📗Author of "ReSharper Essentials
© 2019 Łukasz Gąsior. All rights reserved.
hosted with ♥️ on webio | Polityka prywatności

Input your search keywords and press Enter.