czwartek, 1 czerwca 2017

daj się poznać

Mój impuls do działania - Daj się poznać

Może nie udało mi się zrobić tak prostej rzeczy w tak długim czasie, ale udało mi się wygospodarować trochę czasu poza pracą i domem na zrobienie czegoś dla siebie. Dla mnie to sukces.

Wiem, że dokończę stronę, ponieważ będzie ona potrzebna. 
Będą tam prawdziwe dane Zakładu Kosmetycznego.
Wiem, że przerobię ją na php i wrzucę na serwer.

Wiem, że nauczyłam się paru nowych rzeczy i wiem jak wykorzystać je w praktyce.
Wiem, że mogę uwierzyć w siebie.

niedziela, 28 maja 2017

Tworzenie projektu

Jak często zdarza się Wam, że ktoś przychodzi i mówi:
"Chciałbym taką prostą aplikację, która będzie służyła do wprowadzenia paru prostych danych i wyświetlenia ich"

a za chwilę okazuje się, że oprócz wyświetlenia ma jeszcze wykonać parę "nieistotnych" obliczeń, raporty prezentować w zestawieniach rocznych, miesięcznych i dowolnych, dostęp do tego mogą mieć tylko nieliczne osoby, albo część powinna mieć dostęp do czegoś innego, a pozostali to jeszcze do czegoś innego, albo najlepiej jeszcze część danych powinno być automatycznie ściągane z jakiegoś innego programu ....

i tak mała aplikacja rozrasta się do wielkich rozmiarów.

Jak przystąpić do tworzenia projektu?
Ano tak, żeby poświęcić trochę czasu i spróbować przewidzieć, jak bardzo ta prosta aplikacja może się skomplikować.

Jak zaprojektować bazę danych, aby zmiana założeń nie wymuszała budowania projektu od początku?

Bardzo często zdarza się taka sytuacja i coraz bardziej jestem przekonana, że czas spędzony na projektowaniu i przemyśleniach nie jest czasem straconym. Dzięki temu rozbudowa aplikacji nie wymaga kompletnej zmiany i problemów z migracją danych.


sobota, 27 maja 2017

Razor

Razor to silnik renderujący, który znacząco upraszcza projektowanie widoków. Posiada on prostszą składnię, która wymaga po prostu mniejszej ilości kodu do uzyskania takich samych efektów co aspx. Ale trzeba się do niego przyzwyczaić.

Wykorzystanie go jest rzeczywiście proste, wystarczy pod wartość value podstawić nazwę odpowiedniej zmiennej wykorzystując:
<%=ViewBag.Name %>
lub po prostu
@ViewBag.Name
 
ja skorzystałam z @Model

<input class="span3" type="text" name="Imie" id="Imie" value=@Model.Imie onFocus="if 
(this.value == 'Imię') this.value = '';" onBlur="if (this.value == ''
 this.value = 'Imię';" />
<input class="span3" type="text" name="nazwisko" id="nazwisko" value=@Model.Nazwisko onFocus="if (this.value == 'Nazwisko') this.value = '';" onBlur="if (this.value == '') this.value = 'Nazwisko';" />
<input class="span3" type="text" name="telefon" id="telefon" value=@Model.Telefon onFocus="if (this.value == 'Telefon') this.value = '';" onBlur="if (this.value == '') this.value = 'Telefon';" />
<input class="span3" type="text" name="email" id="email" value=@Model.Email onFocus="if (this.value == 'Email') this.value = '';" onBlur="if (this.value == '') this.value = 'Email';" />
@Html.DropDownListFor(model => model.RodzajZabiegu, Model.Rodzaj_zabiegu(x => new SelectListItem { Text = x.Nazwa, Value = x.Id.ToString() }))
<div class="input-append date form_datetime">
      <input size="16" type="text" value=@Model.Data_od readonly>
      <span class="add-on"><i class="icon-th"></i></span>
</div>
 <script type="text/javascript">
     $(".form_datetime").datetimepicker({
             format: "dd MM yyyy - hh:ii"
     });
 </script>                     
<textarea name="message" id="message" class="span3" value=@Model.Inne_informacje onFocus="if (this.value == 'Dodatkowe informacje') this.value = '';" onBlur="if (this.value == '') this.value = 'Dodatkowe informacje';">Dodatkowe informacje</textarea>


Niestety utknęłam przy DropDownList. Mam wrażenie, że czegoś brakuje, ale... - sprawa do przegryzienia.

niedziela, 30 kwietnia 2017

wypełnienie treścią

Trochę mrówczej pracy.

Cennik i opisy gotowe


Następnym etapem będzie w końcu meritum - czyli rezerwacja wizyty :)

czwartek, 27 kwietnia 2017

telerik

Moja przygoda z .NET rozpoczęła się z WebForms i bardzo szybko zaczęłam korzystać z kontrolek Telerik. Mimo sporego kosztu zakupu kontrolki bardzo przydają się w codziennym programowaniu, szczególnie, gdy nie zwracamy bardzo dużej uwagi na sam wygląd, a najważniejszym punktem jest funkcjonalność. Dzięki temu można w dość krótkim czasie przygotować użytkowników potrzebne narzędzie do pracy.

Telerik ma sporą listę kontrolek. Najczęściej używane przeze mnie to RadGrid, RadComboBox, RadMenu, RadTexBox itp. Kontrolki te mają już z góry zdefiniowane metody i należy je tylko wykorzystać. Firma również oferuje bardzo pomocne dema pokazując możliwości kontrolek, a także w jaki sposób z nich korzystać i jakie trudności można napotkać.

niedziela, 23 kwietnia 2017

connectionstring


Connectionstring dostarcza informacji, które są potrzebne do komunikowania się z bazą danych. Za pomocą niego możemy określać parametry specyfikujące połączenie, takie jak:
  • Data Source – ten parametr określa nazwę instancji SQL Server’a
  • AttachDbFileName – parametr określający miejsce przechowywania pliku bazy danych oraz jego nazwę,
  • ID – login wykorzystywany do autoryzacji dostępu do SQL Server’a,
  • Initial Catalog – określa nazwę bazy danych,
  • Integrated Security – określa sposób logowania do instancji SQL Server:
    • True – logowanie tylko za pomocą Windows Integrated Security (systemu operacyjnego),
    • False – logowanie za pomocą IDhasła dostarczonego w connection string,
    • SSPI – ten parametr określa, że zastosujemy logowania za pomocą Windows Integrated Security, jeśli nie dostarczono ID i hasła w connection string,
  • MultipleActiveResultSets – umożliwia równoległą egzekucję zapytań do bazy danych,
  • Password – hasło wykorzystywane do autoryzacji dostępu do SQL Server’a,
  • User Instance – wykorzystywane tylko dla SQL Server Express, z parametrem True tworzy specjalną instancję SQL Server Express, w której zwykły użytkownik będzie miał prawa administratorskie.
Najlepszym rozwiązaniem jest umieszczenie connectionstring w pliku web.config. Dzięki temu, jeżeli zmienimy lokalizację bazy danych będzie można za pomocą jednego wpisu dokonać odpowiednich zmian bez kompilacji całego projektu.

W moim projekcie connectionstring w pliku web.config wygląda następująco:

piątek, 21 kwietnia 2017

strona mobilna

Zmagań z grafiką ciąg dalszy. Tym razem stronka została dostosowana do wersji mobilnych.


Powstała również grafika stronki do rezerwacji. Choć potrzebuje jeszcze kosmetycznej korekty.