wtorek, 25 stycznia 2011

SMO: sprawdzanie dostępnych serwerów MS SQL i automatyczna konstrukcja ConnectionString [PL]

Jakiś czas temu, we wpisie związanym z SQLServer Management Objects (SMO), pod tytułem: „SMO i sprawdzanie, czy baza danych istnieje [PL]” otrzymałem komentarz, że warto wspomnieć o jeszcze innych możliwościach SMO, jak choćby listowanie instancji SQL Server: SmoApplication.EnumAvailableSqlServers(). W tym wpisie chciałbym właśnie wrócić do tego tematu.

niedziela, 23 stycznia 2011

SpecialFolders i zmienne systemowe w definicji TraceListener'a [PL]

Wpisy na temat śledzenia i logowania w .NET pojawiały się już wcześniej na tym blogu (np. „Śledzenie i logowanie zdarzeń (tracing and logging) na platformie .NET (przykłady w oparciu o C#).” i „Śledzimy w .NET dalej (dzisiaj uruchomimy własny podsłuch)”). Mechanizm wykorzystania elementów platformy .NET, jak: TraceSource, TraceListener i innych związanych z nimi jest dość wygodny, tym bardziej, że są dostępne gotowe klasy typu TraceListener zapisujące w plikach logi przy pomocy XML-a lub w których każdy element jest oddzielony jakimś znakiem rozdzielającym (np. przecinkiem, czy średnikiem). Te klasy to XmlWriterTraceListener lub DelimitedListTraceListener. Klasy te można łatwo utworzyć w pliku app.config przekazując nazwę pliku, do którego zostanie zapisany log. Niestety w nazwie pliku trzeba posłużyć się pełną ścieżką, by móc w pełni kontrolować jego lokalizację, w przeciwnym razie plik zostanie utworzony w kartotece, z której uruchamiana jest aplikacja. Zobaczmy jak można spowodować, by w nazwie wykorzystywać dodatkowo „foldery specjalne” i zmienne systemowe.

niedziela, 16 stycznia 2011

OPC – a programowanie – jak zacząć? [PL]


Niniejszy wpis jest zainspirowany pytaniami dotyczącymi OPC, jakie otrzymuję od czasu do czasu poprzez email, fora itp... Są one mniej więcej takie:
  • W jakim języku najlepiej napisać oprogramowanie wykorzystujące OPC?
  • Czy możesz mi doradzić w kwestii zrobienia oprogramowania w środowisku C++/ Visual C#. NET z wykorzystaniem standardu OPC?
  • Co potrzebuję, żeby zacząć tworzyć oprogramowanie zgodne z OPC? Gdzie szukać informacji na ten temat?
  • Zamierzam napisać prace magisterska na temat wykorzystania standardu OPC w zastosowaniu w automatyce przemysłowej. Rozważam kwestie opracowania własnej aplikacji w środowisku Visual C#.NET do komunikacji np. przez internet z jakimś układem automatyki (może sterownikiem PLC). Bardzo proszę o wszelkie sugestie.

czwartek, 13 stycznia 2011

Architekt oprogramowania [PL]

Jeżeli chcesz dowiedzieć się:
  • Co to jest architektura oprogramowania?
  • Kim jest architekt oprogramowania?
  • Jaka jest rola architekta oprogramowania?
  • Jakiego typu zadania są stawiane przed architektem oprogramowania?
  • Jakie są cechy dobrego architekta oprogramowania?
Przeczytaj....

środa, 12 stycznia 2011

Programowanie i Technologie blogiem roku 2010? - głosowanie rozpoczęte[PL]

Tak jak pisałem wcześniej zgłosiłem bloga Programowanie i Technologie do konkursu "Blog roku  2010". Blog został zgłoszony w kategorii "Profesjonalne". Wczoraj wystartowało głosowanie, jeśli chcesz oddać na niego głos, wyślij SMS o treści B00189 na numer 7122. Koszt SMS, to 1,23 zł brutto.

poniedziałek, 10 stycznia 2011

SMO i sprawdzanie, czy baza danych istnieje [PL]

Czasami istnieje potrzeba sprawdzenia czy baza danych jest dostępna na serwerze Ms SQL Server. W tym celu można wykorzystać widok sys.databases, na którym można wykonać select'a i sprawdzić czy dana baza danych występuje na liście (np. „select * from sys.databases”). Zobaczmy jednak, jak to zrobić przy pomocy SMO.

wtorek, 4 stycznia 2011

Element 'DropDownList' ma wartość SelectedValue, która jest nieprawidłowa, ponieważ nie istnieje na liście elementów... [PL]

Jakiś czas temu był na tym blogu wpis dotyczący GridView i TemplateField, czyli sposobu wygodniejszą wizualizację i edycję danych tabelarycznych. W ten sposób łatwo można zamienić skomplikowane numeryczne identyfikatory (pochodzące z kluczy obcych) na dropdown-listy przedstawiające dane z innych tabel. Jednak co się stanie, gdy nasza kolumna z identyfikatorami dopuszcza wartości puste (NULL)? Otóż pojawi się wtedy „błąd serwera w aplikacji ....”. Zobaczmy jak sobie można z tym poradzić.

poniedziałek, 3 stycznia 2011

SqlBulkCopy i wyłączenie auto-inkrementacji w tabeli [PL]

Jakiś czas temu pisałem na temat jak DataSet’a przenieść do MsSQL'a (z wykorzystaniem SQLServer Management Objects i SqlBulkCopy). W takim przypadku, gdy kolumna w tabeli w DataSet'cie ma ustawioną właściwość AutoIncrement, to należy w kolumnie w SQL serwerze ustawić Identity na true, oraz IdentityIncrement i IdentitySeed na odpowiednie im wartości (AutoIncrementStep i AutoIncrementSeed) pochodzącej ze źródłowej kolumny z tabeli z DataSet'a. Niestety w takim przypadku, podczas późniejszego ładowania danych do tabeli, kolumny danych korzystające z auto-inkrementacji (identity) mogą w efekcie być uzupełnione innymi danymi, niż wyglądało to w oryginalnym zestawie danych. Zobaczmy jak to można rozwiązać.

niedziela, 2 stycznia 2011

Blog roku 2010 [PL]

Chciałbym wszystkich poinformować, że zgłosiłem bloga Programowanie i Technologie do konkursu "Blog roku  2010". Blog został zgłoszony w kategorii "Profesjonalne". Od 11.01.2011 godz. 15.00 rusza głosowanie sms'owe ...

sobota, 1 stycznia 2011

2010 – podsumowanie [PL]

Rok 2010 zakończony, chciałbym więc podsumować moją działalność związaną z blogiem w tym roku. Niniejsze podsumowanie zbiega się prawie z drugą rocznicą powstania bloga „Programowanie i Technologie”, który wystartował 11 stycznia 2009.

Posty powiązane / Related posts