This well known domain BLOGATOR.COM is available for you!
http://live.visitmix.com/MIX10/Sessions/KEY01 var addthis_pub="spigi";
Znovu niekoľko užitočných odkazov, tentokrát pre mobilné zariadenia Download Windows Phone 7 Developer tools – Click Here Windows Phone 7 Series Developer Training Kit now available on Channel 9 – Click Here A guide to what has changed in the Silverlight 4 RC – Click Here Check out the Silverlight customer highlight video – Click Here MSDN Link – Read up on developing for Windows Phone in MSDN Click Here ‘Right Mix’ – A nice post from Windows Mobile team – Click Here Posts on Blend 4 Here and Blend 4 for Windows Phone – Here var addthis_pub="spigi";
Keynote je dostupne on demmand http://www.microsoft.com/presspass/events/mix/VideoGallery.aspx Silverlight 4 tools pre Visual Studio 2010 RC je k dispozícii na adrese Silverlight 4 Tools for Visual Studio 2010 Novinky verzie Silverlight 4 RC oproti Bete sú popísané na blogu Time Heuera http://timheuer.com/blog/archive/2010/03/15/whats-new-in-silverlight-4-rc-mix10.aspx> Dostupný je aj Expression Blend 4 beta na adrese http://go.microsoft.com/fwlink/?LinkId=169446 Keynote z minulorocneho Mixu si môžete pozrieť alebo stiahnuť z http://videos.visitmix.com/MIX09/KEY01 Veľmi zaujímavé sú aj niektoré prezentacie, ktorých je na adrese http://videos.visitmix.com/MIX09 viac než 100 snad to na podobnej adrese zverejnia aj tento rok var addthis_pub="spigi";
Aké novinky prináša v porovnaní s SL3? - editovateľný prvok RichTextArea a rôzne vylepšenia v existujúcich ovládacích prvkoch- "AllowDrop" atribút v UIElement pre podporu "dragovania" napr. súborov priamo z desktopu/explorera na Silverlight aplikáciu- printing API- prístup k web.kamere a mikrofónu- možnosť vyžiadať si väčšie práva pre Silverlight aplikáciu pre prístup k lokálnemu súborovému systému, COM komponentom (a teda aj ku klientským komponentom Office)- sieťové rozšírenia napr. v podpore posielania NetworkCredential v ClientHttp pre volanie zabezpečených služieb tretej strany- WCF RIA Services pre integrovanie Silverlight komponentov na klientovi a ASP.NET na strane servera- pre trusted aplikácie už netreba cross-domain policy súbor- úprava "out-of-browser" programovania tak, aby bolo rovnaké ako pri tvorbe typickej Silverlight aplikácie- hardvérová akcelerácia pre Deep Zoom- oficiálna podpora Google Chrome- atď. :-) Pre tých, ktorí ešte stále váhajú nad tým, či sa Silverlight-u venovať: "Silverlight plug-in je nainštalovaný na 60-ich percentách zariadení pripojených do internetu. Pritom len od novembra 2009 zaznamenal Silverlight 15% prírastok inštalácií." Kde nájsť všetko potrebné (hlavne Silverlight 4 Tools for Visual Studio 2010 RC, WCF RIA Services, Silverlight Toolkit)?http://silverlight.net/getstarted/silverlight-4/ Miro var addthis_pub="spigi";
Dnes (15.3.2010) na konferencii MIX10 uviedol Microsoft prvé vývojárske technológie a nástroje pre Windows Phone 7. Jadro aplikačného vývoja pre túto pripravovanú "mobile" generáciu je založené na šikovnosti Silverlight-u. Takže od dnes máme k dispozícii prvý CTP vývojársky balíček pre Windows Phone 7 zložený z: - CTP vydania "Visual Studio 2010 Express for Windows Phone". (Ak máte RC VS 2010, vystačíte si s rozšírením "Windows Phone 7 Series Add-in for Visual Studio".)- emulátor Windows Phone 7 (pre simulovanie a ladenie aplikácií)- Silverlight for Windows Phone CTP- XNA 4.0 Game Studio CTP pre možnosť tvorby hier pre mobil, desktop aj Xbox 360 Kde hľadať? 1. Na stránkach Visual Studio 2010 Express for Windows Phone http://www.microsoft.com/express/phone/ 2. Na vývojárskych stránkach Windows Phone 7 http://developer.windowsphone.com/windows-phone-7-series/ Miro var addthis_pub="spigi";
V práci používam Telerik komponenty pre ASP.NET AJAX (teda okrem iného :)). Musím sa priznať, že sú podľa môjho názoru celkom fajn.Tým celkom myslím, že ako každý soft, majú svoje vrtochy. Jedným z nich je okrem celkom veľkej pamäťovej náročnosti aj fakt, že občas majú veľký problém vykresliť sa za design time. Nejak sa im nechce, koťuhám. :) A keďže to nieje ojedinelý problém, už sa tomu venovalo aj pár ľudí z Telerik-u, napr tu. A kde teda väzí ten problém prečo sa tieto controls nechcú rendrovať, hrom do nich? :)Nuž, Telerikovci si v tej svojej Bulharskej centrále (či kde to sídlia) povedali, že by bol celkom dobrý nápad oddeliť design time kód od kódu, ktorý budete deploy-ovať. To je fajn, len občas sa vyskytnú problémy, napr ako ten ktorý sa stal kolegovi.Mal predchádzajúci build AJAX kontrolov a chcel prejsť na iný. Ja som to prezieravo urobil tak, že som odinštaloval starú verziu, vymazal folder v progam files a nainštaloval novú. Mne to tento postup zabral. Kolega však len upgrade-oval. Podotýkam bez chýb. Design time, ani ťuk, samá chyba.Super, čo teraz? Uninstall (bez vymazania telerik foldru v program files) a reinstall. Opäť nič. Moja zúfalosť nad týmto faktom popri práci nad projektom naberala slušné obrátky. :/Až som dostal spásonosnú myšlienku, skontrolovať aj GAC. Nuž predstavte si, spomínané Telerik.Web.Design.dll v predchádzajúcej verzii si tam spokojne hoveli. Nuž potom sa nečudujem, že sa controls nedali za designtime inštancovať, ak verzie buildov ne
Potrebujete niečo schovať alebo naopak povoliť pre užívateľa podľa jeho Security Role v CRM 4.0? Takéto riešenie nemáte naporúdzi out-of-the-box, ale ak sa nejedná o vec, ktorá je veľmi bezpečnostne kritická, môžete ju schovať pomocou CSS štýlu (je to len oklamanie usera, preto ten dodatok nieje veľmi bezpečnostne kritická). Na dopyt do CRM môžeme použiť tento kód, ktorý už urobil nejaký neštastník, ktorý bojoval s podobným problémom a pre skrátenie, urobí web servisový request a vráti bool hodnotu ak patrí aktuálny user do skupiny. Potom možeme šikovne na základe flagu schovať, alebo neschovať časť stránky. Musí mať samozrejme nejaké to ID ktorým ho zavoláme. Našťastie ID sa nemení a tak na schovanie môžeme použiť nasledujúci snippet : document.getElementById("id").style.display='none'; guid je CRMkom vygenerované id elementu. Poviete si, kam vložiť tento kód? Nuž v sekcii Customizácii do eventu OnLoad formu kde chceme robiť tento hack :) Enjoy var addthis_pub="spigi";
Naša spoločnosť CHASTIA s.r.o. so sídlom v Poprade sa rozhodla otvoriť v Košiciach novú kanceláriu pre malý tím programátorov. Momentálne hľadáme programátora/vývojára na platforme .NET pre vývoj modulov Windows Forms aplikácie. Informácie: http://www.chastia.com/Ponuka-prace~Profile~Jobs.aspx Možnosť kontaktu je možný aj cez portál http://www.profesia.sk/praca/chastia/O802230 Informácie o pracovnom mieste Miesto práce: Košice Ponúkaný plat (brutto): dohodou Termín nástupu: marec 2010 Druh pracovného pomeru: plný úväzok Náplň práce, informácie o pracovnom mieste Vývoj modulov informačného systému Chastia FM (VB.NET a C#). Analyzovanie potrieb zákazníkov. Vytváranie tlačových zostáv podľa potrieb zákazníkov. Iné výhody Ponúkame: - prácu v mladom kolektíve, - prácu na zaujímavých, úspešných a perspektívnych projektoch, - prístup k najnovsím technológiám z oblasti IT - možnosť neustáleho vzdelávania Požiadavky na zamestnanca Požadované vzdelanie Vzdelanie: študent vysokej školy vysokoškolské I. stupňa vysokoškolské II. stupňa Zameranie, odbor: IT Znalosti Jazykové znalosti: Anglický jazyk - mierne pokročilý Počítačové znalosti - používateľ: Microsoft Windows – pokročilý Počítačové znalosti - programátor: C# - pokročilý SQL – pokročilý Pozícia vhodná pre absolventa Áno Ďalšie požiadavky na uchádzača Výborná znalosť platformy Microsoft .NET Vý
Ahojte všetci blogeri a návštevníci blog.aspnet.sk. Dnes som skúmal množstvo spamu, ktorý sa hromadil v komentároch ku blog príspevkom a zistil som, že pribúdajú závratnou rýchlosťou (desiatky za minútu :)) - anonymných. Potom som sa tiež pozrel, kto je zvyčajne autorom nespamových komentárov a moje zistenie je, že zvyčajne ľudia, ktorí majú účet na aspnet.sk. Preto som sa rozhodol vypnúť možnosť pridávania anonymných komentárov ku blog príspevkom. Každý, kto ma konto na portáli aspnet.sk sa môže do blogov prihlásiť (zvyčajne je niekde hore na stránke link) a pohodlne pridávať komentáre. var addthis_pub="spigi";
Ak si niekedy púšťate kontrolu kódu vo VS nad svojím vlastným výtvorom, možno ste sa prepracovali aj k takejto hláške : Warning 11 CA1903 : Microsoft.Portability : Assembly 'blablabla.dll' has a reference to assembly 'System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'. Because this assembly was introduced in .NET Framework 3.5 Service Pack 1, which is higher than the project's target framework, .NET Framework 3.5, your application may fail to run on systems without this framework installed.Nuž ale čo s tým? VS má možnosť multitargetu, to vieme, ale vybrať si .NET fw 3.5 SP1 nemôžeme, len 3.5 ako taký.Údajne ide len o warning, ktorý nám hovorí, že SP1 musí byť prítomný na mašine, kde aplikácia pobeží. Trochu od veci, ak sa zamyslíme, že analýza bola vykonaná nad ASP.NET app, kde sa nič nikam neinštaluje, ale OK. Aspoň vieme :)Viac info o varovaní aj tu : link.Blog Code Analysis teamu. var addthis_pub="spigi";
V rámci jedného projektu som potreboval urobiť kontroly IBAN, SIPO, rodného čísla a účtu. Vytvoril som pre tento účel class library a keďže sú to dosť všeobecné veci, prečo sa nepodeliť . Ako prílohu vám prikladám čisto class library, unit testoval som ju, aj vhodnými dátami aj PEXom, poštval som na ňu aj kontroly vstavané vo VS. Ak sa na ten kód niekto pozrie, som otvorený návrhom na refactoring a prípadným bug fixom . Enjoy. PS : pri kontrole FxCop-om som dostal zaujímavú hlášku : "SomeClass.SomeMethod() rethrows a caught exception and specifies it explicitly as an argument. Use 'throw' without an argument instead, in order to preserve the stack location where the exception was initially raised." Vždy som si myslel, že zachytiť exception, pomenovať si ju a potom urobiť throw ex; je ten správny spôsob, ako re-thrownúť exception. Zrejme nie . Zachytenie pomocou catch a iba čisté throw re-throwne exception ale zachová stack a tak presnejšie vieme, kde exception nastala. Hodí sa pri logovaní chýb. PS2: Informácie, ako overovať nájdete napr tu : http://latrine.dgx.cz/jak-overit-platne-ic-a-rodne-cislohttp://www.modry-klub.sk/honorare/07_modulo.htmhttp://www.cnb.cz/m2export/sites/www.cnb.cz/cs/platebni_styk/iban/download/EBS204.pdf var addthis_pub="spigi";
Pri jednom projekte, ktorý používa WCF services som sa stretol s nasledujúcou vecou :Projekt je vyvíjaný pod win xp aj pod win 7 na plných VS, aj na Express verziách. Pri pridávaní referencie medzi projektami na pc s win 7 všetko funguje, ako má. Na pc s win xp nie. Vývojár je pri pridávaní referencie na service počastovaný nasledujúcou hláškou : The configuration for the service reference could not be added due to the following issue : Unrecognized element "extendedProtectionPolicy".Vývojár na win 7 pritom nič podobné do .ClientConfig súboru nepridával (vedome).Riešenie? Nuž pomôže len zmazanie riadku a potom všetko funguje, ako má. Bližší popis prečo nájdete tu : link. var addthis_pub="spigi";
Nedávno som dostal požiadavku na programček na posielanie obsahu clipboardu medzi počítačmi od človeka, ktorý používa viac počítačov naraz. Celkom jednoduchý programček s použitím WCF. Práve pri tom vznikol článok WCF service na voľnom TCP porte. Obsah sa pri posielaní šifruje a podpíše. Potom je možné prijať obsah clipboardu len od dôveryhodných odosielateľov. Trochu bol problém zistiť zoznam počítačov, na ktorých beží tento programček. Práve na to som použil Net Peer Binding vo WCF. A keďže je úplne zbytočné niečo spraviť, keď sa o to človek nepodelí, tak som sa rozhodol to dať na CodePlex. A samotný Clipboard Share nájdete tu. var addthis_pub="spigi";
Odo dneška máme k dispozícii na download RC (Release Candidate) Visual Studia 2010. RC je zameraný na výkon/stabilitu vývojového prostredia a lepšiu podporu add-inov. Viac o RC nájdete na blogu Jasona Zandera http://blogs.msdn.com/jasonz/archive/2010/02/09/announcing-vs2010-net-framework-4-release-candidate-rc.aspx Od 8.2. majú k dispozícii VS 2010 RC predplatitelia MSDN na adrese https://msdn.microsoft.com/en-us/subscriptions/securedownloads/default.aspx?pv=18:370 Od 10.2. bude VS 2010 RC na download všetkým vývojárom.Najschodnešia cesta pre verejný "download" bude stránka:http://msdn.microsoft.com/sk-sk/vstudio/dd582936(en-us).aspxprípadnehttp://go.microsoft.com/fwlink/?LinkID=151797 Aktualizované návody pre odskúšanie VS 2010 RC nájdete na:http://msdn.microsoft.com/en-us/vstudio/dd441784.aspx Miro var addthis_pub="spigi";
Čo sa za mladi naučíš, v starobe ako by si našiel. Tak toto som našiel celkom neskoro. Už niekoľkokrát som potreboval kolekciu s udalosťami o pridaní a odobraní prvku. Napísať si takú kolekciu podedením z triedy Collection<T> nie je žiadny problém. Lenže načo niečo také, keď v .NET od verzie 3.0 máme triedu ObservableCollection<T>. A tá obsahuje dve udalosti. CollectionChanged sa vyvolá, keď sa zmení kolekcia. Teda, keď tam pridáme, odoberieme prvok, zmeníme na určitej pozícii alebo vyčistíme kolekciu. PropertyChanged sa vyvolá, keď sa zmení nejaký objekt v kolekcii. Toto funguje, iba ak objekty v kolekcii implementujú interface INotifyPropertyChanged. A túto triedu som doteraz poctivo ignoroval práve preto, že je v netradičnej assembly WindowsBase, ktorú si spájam práve s WPF. Ale v skutočnosti táto assembly súvisí hlavne so XAML, ktorý je oveľa univerzálnejší ako WPF. Napríklad sa dá použiť s Workflow Foundation. Ešte pre úplnosť, tak táto trieda je v namespace System.Collections.ObjectModel. var addthis_pub="spigi";
Pre všetkých Telerik-u učenia sa chtivých som našiel dve linky, ktoré by sa Vám mohli hodiť : ASP.NET AJAX :http://www.telerik.com/support/documentation-and-tutorials/step-by-step-tutorial-for-ajax.aspx Silverlight :http://www.telerik.com/support/documentation-and-tutorials/step-by-step-tutorial-for-silverlight.aspx Tutoriály sú dosť veľké, nebudete sa nudiť var addthis_pub="spigi";
Spoločnosť Gartner, Inc. zaradila vo svojej správe z 28. januára 2010 spoločnosť Microsoft do segmentu lídrov tzv. Magic Quadrantu v oblasti Datawarehouse systémov: Celá správa spoločnosti Gartner, Inc. je uverejnená na adrese Magic Quadrant for Data Warehouse Database Management Systems. var addthis_pub="spigi";
Predpokladám, že v čase čítania tohto príspevku už budú e-mailové aliasy v novej doméne "hotmail.sk" ako "macko", "srdiecko", "kvetinka" atď. obzvlášť vhodné pre technickú vývojársku komunitu rozchytané :-) Ak ste mali (alebo máte na hotmail.com alebo iných "free" mail službách) už váš obľúbený alias obsadený, skúste si ho zarezervovať na "hotmail.sk". O tom, čo je nové sa dozviete tu http://windowsblog.sk/article/zaregistrujte-si-e-mailovu-adresu-presne-podla-vasich-predstav---spusta-sa-hotmailsk.aspx . Malé upozornenie: Veľa z nás pri vývoji používa EN prednastavený OS a browser. Aby ste sa dostali k registračnej stránke pre mailbox na "hotmail.sk", musíte si zmeniť v prehliadači prednastavený jazyk na "Slovak". ( Napr v IE8 cez Internet Options -> záložka General , tlačidlo Languages.) Po registrácii a vytvorení hotmail.sk účtu, môžete kľudne vrátiť browser do pôvodného nastavenia. Miro var addthis_pub="spigi";
Nedávno som robil jednoduchú desktopovú aplikáciu, ktorá prenáša dáta medzi užívateľmi. Niečo ako instant messaging, len sa neprenášajú užívateľom písané správy. Keďže aplikácia nemusí fungovať cez internet, stačí len na LAN, tak som sa rozhodol použiť WCF a NetTcpBinding. A keďže je to desktopová aplikácia a môj protokol nie je žiaden štandard, tak som nevyhradil žiaden špecifický TCP port, na ktorom by služba počúvala. Ale narazil som na problém, že donútiť WCF službu počúvať na ľubovoľnom voľnom porte a ešte zistiť ten port nie je celkom jednoduché. Našťastie je to možné a nie je to žiadna tragédia. Najprv na NetTcpBinding musíme nastaviť nejaký špecifický namespace aj name. Potom po pridaní ServicePoint do ServiceHost nastavíme na ServicePoint ListenUriMode na Unique. Toto zabezpečí, že WCF služba bude fungovať na ľubovoľnom voľnom TCP porte. A po spustení ServiceHost vyhľadáme ChannelDispatcher s príslušným name a namespace. A potom už stačí len zobrať Lister Uri a z nej prečítať port. Tu je kód ako to spraviť. // vytvorim novy ServiceHost var host = new ServiceHost(new MyService(), new Uri(“net.tcp://localhost/MyService”)); // nastavim TCP binding var binding = new NetTcpBinding(); binding.Namespace = “MyNamespace”; binding.Name = “MyServiceBinding”; // pridam a nastavim ServicePoint var sp = host.AddServicePoint(typeof(IMyService), binding, String.Empty); sp.ListenUriMode = ListenUriMode.Unique; // spustime sluzbu host.Open(); /
Dnes ma napadla kacírska myšlienka, či náhodou Telerik, ktorého komponenty používame v práci nemá možnosť použiť CDN. A na moje milé prekvapenie má. :)A dokonca si ho môžete zapnúť aj vo web.configu. Takto :<appSettings> <add key="Telerik.ScriptManager.TelerikCdn" value="Enabled" /> <add key="Telerik.StyleSheetManager.TelerikCdn" value="Enabled" /></appSettings>Viac sa dočítate tu :http://blogs.telerik.com/blogs/posts/09-12-08/cdn_support_ndash_radcontrols_for_asp_net_ajax.aspx Nutno pripomenúť, že musíte mať verziu Q3 SP1. Naviac na CDN sú hostované aj skiny pre controly. Krok Teleriku hodnotím kladne. var addthis_pub="spigi";
V knižnici el.brožúr máme ďalší prírastok v podobe slovenskej brožúry "Visual Basic 2010 - Hotové riešenia" od Jána Hanáka, MVP. Nájdete ju na http://msdn.microsoft.com/sk-sk/dd727769.aspx . V zozname príkladov v brožúre nájdete: - Počítačová hra na hádanie tajného čísla - Prehliadač fotogalérií - Bioinformatický súboj vírusov a baktérií - Riešenie sústav 3 lineárnych rovníc s 3 neznámymi - Správa bankového účtu Každý príklad je riešený v krokoch "založenie projektu", "stavba/diagram projektu", "riešenie/kód" a "návrhy na vylepšenie". Miro var addthis_pub="spigi";
Toto je rýchly blog, aby som to nemusel googliť zase niekoľko hodín. Jedna možnosť je overide vlastnosti ShowWithoutActivation. Stačí, aby táto vlastnosť vrátila true a okno nebude mať focus pri otvorení. Problém je, že toto nefunguje pri TopMost formách. Avšak našiel som pekný trik. Overide vlastnosti CreateParams. Táto vlastnosť vytvorí argumenty, ktoré sa pošlú funkcii CreateWindowEx. Toto ponúka celkom dosť možností. A hlavne nastaviť štýl okna na WS_EX_NOACTIVATE. Tento štýl znamená, že okno nebude mať nikdy focus, ani keď užívateľ na neho klikne. Tento štýl sa používa na floating toolbars a podobne okná, keď užívateľ klikne na gombík na toolbare, ale focus má stále hlavné okno. Ja som toto použil pri vlastnej notifikácii nad ikonou v system tray. A tu je kód. protected override CreateParams CreateParams { get { CreateParams result = base.CreateParams; result.ExStyle |= WinApi.WS_EX_NOACTIVATE; return result; } } Ešte pre úplnosť, tak WS_EX_NOACTIVE = 0x08000000. Toto je možné zistiť na stránke www.pinvoke.net. Mimochodom veľmi dobrá stránka ak potrebujete volať WinAPI z .NET. var addthis_pub="spigi";
Letmo som zachytil nedávno správu o stratenom USB kľúči nejakého vojaka. Chudák, je z toho bublina a novinári si ho vychutnali. Nevdojak ma napadlo, ale veď aj ja mám USB kľúč a teším sa z portable verzií rôznych softíkov. Nieje to tak dávno, čo som bol u kamaráta a z jeho stroja, na ktorom mal len svoje srdcu milé softy som si vybavil, čo som potreboval. Super vec, mať všetko po ruke. No keby som ho stratil, uložené heslá vo FireFoxe by ma isto potešili a najmä nálezcu, ak by vedel čo s nimi. Prípadne súkromné a firemné maily... bol by to prúser.Takže ako na vec? Ak máte správnu verziu Visty, 7 alebo 08, môžete myslím použiť BitLocker (priznám sa, nepoužívam ho). Mám ale pocit, že potom si kľúč užijete len pod týmito OS. A čo také XP, Linux, Mac? Nuž, existuje riešenie a je dokonca zdarma. Kolega používa už dlhší čas software TrueCrypt. Kryptuje si ale časť prenosného disku. Na USB kľúči ho neskúšal. Skúsil som to teda ja. Vytvoril som si súbor, ktorý potom môžete mount-núť ako ďalší disk a na ňom si prenášať svoje cenné dáta. TrueCrypt mám len rozbalený (pri inštalácii sa vás spýta, či ho chcete v portable režime - len sa rozpakuje, alebo nainštaluje). Priamo v roote mám teda 1 file, ktorý je diskom, v adresári mám TrueCrypt (mohol by som si teoreticky urobiť aj autorun), teraz ho púšťam ručne.TrueCrypt má zaujímavú funkciu, môžete si vytvoriť disk s 2 heslami,1 - je pre bežné prípady, vidíte všetko,2 - je pre prípad, že vás niekto donúti prezradiť heslo - uvidíte len časť
Tak ako informoval Data Platform Insider Blog, Microsoft stanovil dátum uvoľnenia ostrej verzie SQL Server 2008 R2 – a ten dátum je máj 2010, kedy sa tento produkt objaví aj v cenníkoch. Zákazníci využívajúci Software Assurance je k dispozícii upgrade zdarma. Originál správy je na adrese SQL Server 2008 R2 gets an official date. var addthis_pub="spigi";
Možno trochu oneskorene, ale nech sa vám všetkým všetko v roku 2010 vydarí :-) Na adrese http://www.microsoft.com/downloads/details.aspx?FamilyID=752CB725-969B-4732-A383-ED5740F02E93&displaylang=en nájdete aktualizovaný (januárový) Visual Studio 2010/.NET Framework 4.0 Training KIT. Nájdete v ňom prezentácie, "hol-y", demá: C# 4.0 Visual Basic 10 F# Parallel Extensions Windows Communication Foundation Windows Workflow Windows Presentation Foundation ASP.NET 4 Windows 7 Entity Framework ADO.NET Data Services Managed Extensibility Framework Visual Studio Team System Ako ste mnohí asi postrehli. Na konci decembra bolo kvoli optimalizácii nového Visual Studia 2010 posunuté jeho uvedenie na trh (zatiaľ neoficiálne na apríl 2010). Takže najbližšie nás zhruba na konci februára čaká vydanie Release Candidate. Miro var addthis_pub="spigi";
Tento blog post ponímam jednak ako informáciu pre čitateľov, jednak ako možnú diskusiu k problému. Takže k veci : Mal som pocit, že uschovanie si nejakej menšej premennej do objektu Session a následný Response.Redirect na nejakú url kde ju vyberiem zo Session a použijem je bežný a OK spôsob ako fungovať, ak nechcem hodnotu premennej vystaviť na obdiv a pokusy na hack pre usera cez query string. Teda myslel som si to až doposiaľ. V jednej našej aplikácii však potrebujeme (resp. celkom sa hodí) preniesť cez session väčší objekt. (Aký je to väčší objekt? Rádovo MB, v každom prípade nie 4 znaky stringu). No a tu nastáva problém o ktorom som netušil. Pri použití Response.Redirect nastáva totiž ThreadAbortException. Prečo? Nuž, vraj preto, lebo sa ukončuje thread ktorým sme si vyžiadali stránku a pokračujeme na novú. Túto informáciu dostanete aj vo VS v okne Output asi v takomto tvare : A first chance exception of type 'System.Threading.ThreadAbortException' occurred in mscorlib.dll Čo sa teda stalo? Nastala exception ThreadAbortException aj v kóde, až na to, že redirect nastane a teda o nej ani nevieme. Vieme ju normálne chytiť v try/catch, no veľa sa nedozvieme, len toľko, že nastala mimo náš kód. Zaujímavé použiť ako druhý parameter vo volaní Redirect hodnotu false. Nuž, nedopracujete sa síce k výnimke a váš request nepadne, no interne výnimka nastane opäť a opäť prídeme o Session. Celú. Bohužiaľ. Aj tu sú však výnimky. Aplikáciu máme nasadenú na 2 rôznych mašinách,
Nedavno sa mi pod ruky dostala celkom nahodou (trosku starsia) prezentacia Thomasa Hauga o kniznici Spring.NET; http://www.springframework.net/presentations/SpringNet-ThomasHaug-2008.pdf Vacsina pouzivatelov vratane mna najviac vyuziva core functionalitu a to IoC kontajner. Na co som bol zvedavy, je podpora inych kniznic a toolov, najma NHibernate. Potesila ma podpora DAO patternu, nasledujuci priklad priamo z prezentacie: using Spring.Data.NHibernate.Generic.Support;...class NHibernatePersonDAO : HibernateDaoSupport, IPersonDAO { public void SavePerson(SpringBeispiel.Entities.Person person){ //wirft eine Spring.Dao.DataAccessException //falls ein Fehler auftritt this.HibernateTemplate.Save(person); } public IList<Person> ListPersons() { return HibernateTemplate.LoadAll<Person>; } public void UpdatePerson(Person person) { this.HibernateTemplate.Update(person); }} A priklad na servis s podporou transakcii: using Spring.Transaction.Interceptor;...class PersonServiceImpl : IPersonService { ... [Transaction(Timeout=1000)] public void RenameLastName(Person p1, Person p2, string lastName) { p1.Nachname = lastName; p2.Nachname = lastName; this.personDAO.UpdatePerson(p1); this.personDAO.UpdatePerson(p2); } [Transaction(ReadOnly=true)] public IList<Person> L
Silverlight je jednou z najdynamickejšie sa rozvíjajúcich technológií pre tvorbu obsahovo, graficky a multimediálne „bohatých“ webových aplikácií. Verzia 1 bola uvedená v septembri 2007. Podporovala JavaScript a nový jazyk pre tvorbu prezentačného rozhrania XAML. O rok neskôr prišla verzia 2.0, ktorá už podporovala programovanie v .NET jazykoch, štýly, databinding... Silverlight 3 bol komerčne dostupný v júli 2009. Priniesol nové grafické možnosti, napríklad bitmapové efekty a transformácie, významnou novinkou tejto verzie bola aj možnosť behu aplikácie mimo webového prehliadača, teda v režime „out of browser“. Len o štyri mesiace po komerčnom príchode „trojky“ bola predstavená beta verzia Silverlight 4. Novinky by sa dali zhrnúť do troch hlavných oblastí · Tvorba biznis aplikácií · Vizuálne zážitky · Komunikácia na pozadí internetového prehliadača Mojou snahou bude postupne predstaviť najzaujímavejšie črty, samozrejme na praktických príkladoch Tvorcovia grafických interaktívnych aplikácií určite ocenia funkciu drag and drop, pomocou ktorej je možné premiestňovať prvky na ploche Silverlight aplikácie. Význam tejto novinky sa naplno prejaví v nových počítačoch určených pre Windows 7 s podporou multidotykovej obrazovky. Umožní napríklad vytvorenie aplikácií pre intuitívne usporiadanie fotografií ich presúvaním, zväčšovanie, či zmenšovanie pomocou približovania a oddeľovania palca a ukazováka. Návrh prezentačnej vrstvy v XAML kóde bude jednoduchý. Vystačíte s g
Všetkých, ktorí by si radi skrášlili svoj príbytok/pracovisko na svoj dev.obraz chcem upozorniť na nasledujúci link. Nájdete tu slušný počet posterov - cheat sheetov, best practises a iné. Nech padnú na úžitok var addthis_pub="spigi";
Keďže mi v poslednej dobre prischla nejaká výskumná práca ohľadom TFS 2008, trochu som sa v ňom vŕtal. Bežím na virtuáli s w2k3 od MS, pretože nahodiť tfs08 na win08 a sql08 bolo nad moju trpezlivosť. Všetko fungovalo, až kým pár dní späť som nenarazil na problém, kde som dostával 503 od všetkých webov, ktoré bežia na IIS6, ktoré sú v mojom w2k3 od doby, ako zbehlo pár updatov. Google mi povedal, že nie som sám a tak sa chcem s vami podeliť o riešenie : reinštalácia sp2. U mňa zabrala.Viac info na tomto odkaze.Pekné sviatky bratia var addthis_pub="spigi";
Počas prác na projekte migrácie SQL Server 2000 –> SQL Server 2008: http://blog.vyvojari.sk/sql/archive/2009/07/15/praktick-233-sk-250-senosti-s-nasaden-237-m-sql-server-2008.aspx sme naďabili na nasledovnú nie celkom príjemnú zmenu správania sa funkcie ROUND(): SQL 2000: SELECT ROUND(9.78,0) SQL 2005/2008: SELECT ROUND(9.78,0) Msg 8115, Level 16, State 2, Line 1 Arithmetic overflow error converting expression to data type numeric. Najpravdepodobnejším problémom je tzv. IMPLICIT CASTING – vo verzii SQL 2000 je najprv daná hodnota zaokrúhlená a následne skonvertovaná na výsledný dátový typ. SQL2005/2008 postupuje opačne – najprv danú hodnotu skonvertuje do požadovaného formátu a potom zaokrúhľuje, a to spôsobuje problém v aplikáciách SQL2000. Workaround pre SQL2005-2008: SELECT ROUND(CAST(9.78 AS DECIMAL(2,0)),0) var addthis_pub="spigi";
Pre tých z vás, ktorých zaujíma ako vzniká operačný systém (konkrétnejšie ako vznikal Windows 7), pripravil náš český kolega Ondřeja Štrba telemost-live meeting pre vývojárov s českým zástupcom v tíme, ktorý vyvíjal systém Windows 7. Livemeeting sa bude konať 10.12.2009, 16:00 – 17:00 (CET). Môžete sa tak dozvedieť koľko vývojárov a testerov sa podieľa na vývoji, aké riešia otázky, kto rozhoduje o tvári nového OS, koľko sa vypije kávy počas vývoja... Ak máte záujem pripojiť sa, kontaktujte, prosím, Ondřeja Štrbu (Ondrej.Strba@microsoft.com), obratom vám zašle prepojenie na toto stretnutie online. Ak chcete položiť otázku týkajúcu sa vývoja Windows 7, napíšte mu ju vopred v e-maile. Počas live meetingu bude kladenie otázok obmedzené. Miro var addthis_pub="spigi";
Do našej knižnice brožúr pribudli 2 zaujímavé "kúsky", obidva od Jána Hanáka, MVP. 1. Praktické paralelné programovanie - brožúra o paralelnom objektovom programovaní použítím C#4 a C++ s použitím VS2008, VS2010 a Intel Parallel Studio. 2. Praktické objektové programovanie v C#4 a C++ - kniha so 16-imi praktickými ukážkami pokrývajúcimi najdôležitejšie prvky objektového programovania v C#4. Aby si českí vývojári precvičili slovenčinu, jedna kniha je písana v slovenčine. A aby si slovenskí vývojári precvičili češtinu, jedna kniha je písana v češtine. :-) Všetky el.knihy nájdete na http://msdn.microsoft.com/sk-sk/dd727769.aspx Miro var addthis_pub="spigi";
Iste ste sa niekedy stretli s nepekným hlásením IE, ak nastala chyba niekde v kóde, ktorý renderoval odpoveď, ktorá mala doplávať do UpdatePanelu. Hmm, ale ako z nej urobiť niečo "normálne", user friendly, pretože ak náhodou má user vypnuté otvorenie popupu pri chybe, nemusí si všimnúť malý žltý štít v ľavom dolnom rohu? Napríklad cez alert? Nuž, napríklad takto : Do head si vložte tento script : <script>function EndRequest(sender, eventArgs) { var errorMessage = eventArgs.get_error().message; eventArgs.set_errorHandled(true); alert('Nastala chyba na stránke : ' + errorMessage); } function OnLoad() { Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequest); } </script> Do form napr v master page si z eventu onload zavolajte vyššie uvedený onload. A od tohto momentu by sa vám chyby mali zobrazovať ako alerty Vyskúšané na IE8 aj poslednom FF.Menšia zaujímavosť, napr FF aj Chrome kľudne ignorujú js chybu, na ktorú IE upozorní. Možno mám niečo zle nastavené, alebo pod, ale je to prinajmenšom zvláštne. Asi za to môže Gecko... Každopádne dostali ako odpoveď chybovú hlášku od iis, no nie bežnú žltú obrazovku smrti, len pár bajtové chybové hlásenie. var addthis_pub="spigi";
Hands on Laby z PDC sú k dispozícii na adrese channel9.msdn.com/learn var addthis_pub="spigi";
publikované na www.zive.sk Po včerajšom takmer úplnom poodhalení závoja nad platformou Windows Azure sa očakávania účastníkov PDC sústredili na klasické technológie a platformy pre desktopy a web. Na rozdiel od vlaňajšej konferencie, kedy bolo avizované predstavenie nového operačného systému Windows 7, tento rok sa v kuloároch len tipovalo. Mimochodom, existovala možnosť ako zistiť, čo bude ohlásené, niektoré bilboardy v priestoroch konferenčného centra boli zrolované a oficiálne ich rozvinuli až po hlavnej prednáške. Ešte jedna poznámka k Azure, po prednáške sa vytvoril viac než 50 metrový rad, v ktorom sa čakalo na praktické laboratórne cvičenia k tejto platforme. Neskôr keď som si to skúsil som zistil že tento záujem je podmienený aj tým, že každý kto tento hands on lab absolvoval dostal digitálnu kameru. Bola to premyslená straatégia, nakoľko okolo radu čakajúcich stálo minimálne 30 expertov Microsoftu a diskutovali s čakajúcimi Druhý deň konferencie otvoril Steven Sinofsky prezident divízii Windows a Windows Live. Poďakoval betatesterom zverejnil výsledky zberu telemetrických údajov, na obrázku je celková štatistika v najzaujímavejších ukazovateľoch. Úspech nového operačného systému sa ešte znásobí keď bude k dispozícii dostatok cenovo primeraných notebookov a tablet PC podporujúce multitouch. Vtedy Windows 7 naozaj poskytne nový zážitok, podobne ako trebárs mobilné platformy Apple. Preto každý účastník PDC okrem novinárov :-( dostal notebook A
Už čosi vyše roka máme k dispozícii SQL Server vo verzii 2008 a už je k dispozícii ďalšia verzia na otestovanie, označená ako SQL Server 2008 R2. Čo všetko nám prinesie tento release ? Tak v prvom rade je potrebné povedať, že sa nejedná o release, ktorý by obsahoval zásadné zmeny v porovnaní s „riadnym“ releasom SQL Server 2008. SQL Server 2008 R2 je orientovaný hlavne pre zákazníkov využívajúcich Business Intelligence, a s tým zrejme súvisí aj plánované spoločné uvedenie na trh s ďalšou verziou kancelárskeho SW Microsoft Office 2010. Aj keď sa jedná teda o menší release, obsahuje niekoľko zaujímavých noviniek. Poďme sa teda bližšie pozrieť na najdôležitejšie nové vlastnosti SQL Server 2008 R2: HW podpora V spolupráci s novou verziou Windows Server 2008 R2 bude SQL Server 2008 R2 podporovať 256 logických procesorov (doterajšie maximum je 64 CPU). Zjavne ide o reakciu Microsoft-u na situáciu vo vývoji v oblasti HW technológií. Škálovateľnosť Základný release SQL Server 2008 R2 podporuje veľkosť datawarehouse okolo 10 TB. Pomocou novej technológie, nazvanej Madison, je možné škálovať Váš datawarehouse až do veľkosti petabajtov. Táto technológia je ďalším vývojovým stupňom pôvodnej technológie, ktorá bola vyvinutá spoločnosťou DATAllegro. Základom je architektúra MPP (Massive Parallel Processing) s dôrazom na využívanie štandardných serverov, ktoré tvoria jednotlivé uzly MPP clustra. Obr.č.1 Škálovanie DW pomocou technológie Madison Madison by mal byť dostupný zároveň s
S TPL som sa hral už, keď vyšla prvá verzia CTP. TPL je framework, ktorý má uľahčiť vývoj algoritmov optimalizovaný pre viac jadrové procesory. A v dokumentácii som sa dočítal, že CTP nevytvorí viac threadov, ako je jadier v procesoroch. Teda threadov môže byť viac, ale nespiacich by nemalo byť viac. Je to celkom rozumná podmienka, pretože v skutočnosti nemôže bežať paralelne viac threadov ako procesorov. Každý ďalší thread sa musí deliť o procesor, a teda dochádza k prepínaniu threadov, čiže v skutočnosti nebežia paralelne, len sa veľmi rýchlo striedajú. Než budem pokračovať, tak najprv musím zadefinovať dve veci. Je to čisto moja definícia, ktorú som už párkrát písal na aspnet.sk. Paralelný algoritmus – algoritmus, ktorý využíva viac procesorov. Čiže sa skladá z úloh, ktoré môžu bežať naraz na viacerých procesoroch. Avšak každá takáto úloha využíva len procesor a pamäť. Žiadne iné zdroje ako disk, databázu, web services nepoužíva. Napríklad paralelné triedenie alebo raytracing. Asynchrónna úloha – úloha, ktorá sa má spustiť na pozadí a hlavný proces môže vykonávať niečo iné, pokiaľ sa úloha vykonáva. Typický príklad je asynchrónne volanie web service. Web service sa zavolá na pozadí a hlavný program beží ďalej a nie je zamrznutý. Tieto definície som si zaviedol po zoznámení sa s TPL CTP1. A taktiež všeobecná poučka hovorila, že TPL je určené práve na paralelné algoritmy a nie asynchrónne úlohy. Paralelné algoritmy využívajú len procesor, a práve preto nemá význam
Trochu som si pozeral to nové Visual Studio a veľmi ma potešila úplna maličkosť. Nová metóda Stream.CopyTo. Aj preto, že určite každý ste si ju sami napísali aspoň raz. Jej funkciou je skopírovať obsah Stream-u do druhého Stream-u. A sú dve verzie. Stream.CopyTo(Stream destination); Stream.CopyTo(Stream destination, int bufferSize); V tej druhej verzii môžete povedať, aký veľký buffer sa má pri kopírovaní použiť. Na MSDN to nájdete na http://msdn.microsoft.com/en-us/library/system.io.stream.copyto(VS.100).aspx var addthis_pub="spigi";
Tohtoročné DevDays sme naplánovali na 24.11.2009 (konferencia v Bratislave) a 27.11.2009 (pripravené webcasty z konferencie na prevzatie - Developer Days TV). Nosnými témami sú Visual Studio 2010, Sharepoint 2010 a Windows 7. Urobili sme si analýzu dotazníkov z posledných 3 ročníkov DevDays a rozhodli sme sa tento rok vsadiť na rozdelenie návštevníkov do 2 skupín podľa požadovaného konferenčného zabezpečenia a dostupnosti prednášok: 1. Skupina, ktorá chce typické konferenčné zabezpečenie (materiály a niečo naviac, teplý obed, celodennú agendu, prítomnosť špecialistov...) a nemá problém si na konferenciu zájsť aj za poplatok. 2. Skupina, ktorá má problém zúčastňovať sa konferencií mimo BA, pre ktorú je dôležité dostať sa nielen k záznamom prednášok ale aj hlavným konferenčným materiálom. Pre obidve skupiny máme samozrejme pripravenú aj malú motiváciu pre zaregistrovanie v podobe zaradenia do zlosovania o desiatky zaujímavých cien. Všetko nájdete na www.devdays.sk . Tešíme sa na stretnutie, či už "virtuálne" alebo "fyzické" ! :-) Miro var addthis_pub="spigi";
Tak je tu ďalšie T-SQL okienko. Tentoraz ide čisto len o problém na SQL Server. Možno na iných databázach sa query optimalizátor správa trochu inteligentnejšie. A možno aj nie :) Pracujem na systéme postavenom nad MS CRM, kde fyzické osoby sú uložené v entite contact a právnicke v entite account. Pre tých, ktorým MS CRM nič nehovorí, tak každá (alebo väčšina) entita je uložená v dvoch SQL tabuľkách, pričom tieto dve tabuľky sú spojené vo view s rovnakým názvom ako je názov entity. Každý objekt má primárny kľúč uniqueidentifier, teda GUID, takže každý objekt má jedinečné ID v rámci celej databázy. Ďalej som mal vo vedľajšej databáze v tabuľke zoznam klientov, ktorí sa majú nejak spracovať. Stačí zoznam GUID a typ, či ide o account alebo contact. Klient môže mať nejaké zmluvy, ktoré sú uložené v custom entite new_contract. Problém MS CRM je, že nad jedným stĺpcom môže byť len jeden foreign key. Takže new_contract obsahuje dva stĺpce new_account a new_contact, pričom vždy je vyplnený práve jeden z nich. A tu je kameň úrazu. Chcem vybrať všetky zmluvy klientov, ktorí sú v pomocnej databáze. Tak som spravil jednoduchý SELECT. SELECT * FROM ProcessClient PC INNER JOIN – zoznam klientov na spracovanie New_MSCRM.dbo.new_contract Cn ON Cn.new_account = PC.ClientId OR Cn.new_contact = PC.ClientId WHERE Cn.DeletionStateCode = 0 Lenže tento príkaz, ktorý sa mal vykonať za sekundu trval niekoľko minút. Aj nad stĺpcom new_account aj new_contact existujú indexy. Tak som pre
Tak ako sme si už v prípade spoločnosti Microsoft zvykli, súčasťou dodávky SQL Server sú okrem databázového stroja, multidimenzionálneho servera a reportovacích služieb aj SSIS - SQL Server Integration Services. Integration Services sú škálovateľným nástrojom z kategórie ETL – Extract, Transform and Load. Pomocou tohto nástroja je možné integrovať dáta z rôznych dátových zdrojov a transformovať ich do našich dátových skladov. Poďme sa teda pozrieť bližšie na novinky, ktoré nám prináša verzia 2008. Novinky by sme mohli rozčleniť do nasledovných kategórií: · Vylepšená inštalácia · Rozšírenia komponentov SSIS · Rozšírenia v oblasti správy dát · Vylepšená výkonnosť a troubleshooting Inštalácia SSIS Súčasťou inštalácie už nie sú vzorové príklady a databázy. Tie už Microsoft umiestňuje na stránkach Open Source Community - Codeplex, a stiahnuť si ich môžete z nasledovnej adresy: http://www.codeplex.com/Wikipage?ProjectName=SqlServerSamples. Potešiteľnou správou je podpora spúšťania DTS balíčkov z verzie SQL Server 2000, aj keď je táto podpora limitovaná. Obmedzenia sa týkajú používania 64-bitovej platformy – DTS balíčky je možné prevádzkovať len v 32-bitovom režime. V prípade používania 64-bitovej platformy operačného systému sa tak musí používať 32-bitová verzia command-line utility dtexec. Podpora nie je nainštalovaná automaticky, je potrebné doinštalovať ju manuálne. Rozšírené komponenty SSIS Zrejme najvýraznejšou zmenou je zlepšenie výkonnosti Lookup komponentu op
V prípade, že potrebujete schovať v MOSS napr menu v pravo, alebo hore (odborne sa tomu celému nadáva vraj chrome), napr chcete si urobiť z MOSS úložisko dokumentov, ale s customizovaným zobrazením, odporúčam vám site http://sharepointcanvas.com/spc/ ktorý vám vygeneruje css aké potrebujete. To len vložíte do Content Editor Webpart a šmahom máte MOSS aký len chcete :) A ja som prácne hľadal css class-y a vytváral si vlastné css :) ach jaj :)))))) Pozor ale, neskryte si úplne všetko, lebo sa nedostanete ani k možnosti dostať page do stavu editácie webpartov. Situácia sa dá obísť query stringom, pridajte za napr /Forms/AllItems.aspx?Contents=1 kde sa dostanete do módu úpravy Webpartov a môžete Content webpart vymazať a tým uvidíte opäť všetko. Príjemné experimentovanie. :) var addthis_pub="spigi";
V pondelok 5.10.2009 mal v priestoroch bratislavského Gopasu prednášku Altair (Michal Valášek) o novinkách v ASP.NET 4, ktoré nám už klope na dvere. Prezentáciu a demá nájdete na jeho webe Novinky ve Visual Studiu 2010 a ASP.NET 4.0 – příklady a prezentace ze včerejšího semináře. Tejto situácie sa chytil Širo, ktorý na večer pred prednáškou zorganizoval 2. oficiálne stretnutie ľudí z AspNet.sk (týmto mu veľmi ďakujem za organizáciu) v čínskej reštaurácii QIN DAO v Bratislave. Ako nám bolo? Úplne super. Po dlho čase sme sa znova videli, mohli sa porozprávať, dať si spolu pivko (prípadne kofolu) a rozviesť aj osobne nejaký ten flame ;-) Na stretnutie prišli Širo (Peter Širka, blog), Marianguru (Marián Meriač), Looser (Braňo Sliacky), SlavoF (Slavo Furman), Duracellko (Rasťo Novotný, blog), Vlko (Marián Vlčák, blog), Ja (spigi, Igor Stanek, blog), uXo (Michal Jurko, blog), Juraj Šitina (blog) a Gumi (Michal Humenský – tieňový tester každej novej funkčnosti aspnet.sk už od roku 2002). Marianguru si dokonca pre nás nachystal aj krásny darček, čím nás všetkých pekne prekvapil. Veď posúďte sami: … to je nie Stretnutie 2 ľudí, ale Stretnutie DVA (počet stretnutí) ľudí … :-) Tiež musím pogratulovať Vlkovi, ktorý konečne stal tiež MVP za oblasť ASP/ASP.NET. Gratulácie stále prijíma ;-) a myslím, že si toto cenné ocenenie zaslúži. http://blog.vyvojar.cz/vlko/archive/2009/10/01/uff-ja-a-mvp.aspx Širo na konci tiež konštatoval, že je veľký úspech, že
Na týždeň od 19.10. do 23.10 sme pripravili technické semináre vhodné pre vývojárov (nielen z vývojárskych spoločností) a IT-čkárov. Každý kto vyvinul alebo prevádzkuje aplikáciu sa na nich dozvie ako ju sprevádzkovať/upraviť pre Windows 7, prípadne doplniť o využitie nových API z Windows 7. Všetky semináre sú zdarma, ale kvoli kapacite miestností sa treba registrovať. 19.10.2009 - Windows 7 (hlavne kompatibilita) - v anglickom jazyku prezentuje skúsený profesionálny konzultant z USA. Registrácia (povinná) je na http://msevents.microsoft.com/cui/EventDetail.aspx?culture=en-US&EventID=1032424841&IO=XitBvcyZD1fU9l7EPCU34g%3d%3d 20.10.2009 - Windows 7 (hlavne kompatibilita) - v anglickom jazyku prezentuje skúsený profesionálny konzultant z USA ( Toto je opakovanie prvého dňa pre tých, ktorým utorok vyhovuje viac.) Registrácia (povinná) je na http://msevents.microsoft.com/CUI/InviteOnly.aspx?EventID=88-AF-CB-D1-23-58-FC-57-42-E7-6C-66-45-DE-26-C1&Culture=en-US 21.10.2009 - Windows 7 Drop-in Clinic - Máte aplikáciu a máte problém ju plnohodnotne rozbehať na Windows 7. Alebo ju chcete certifikovať a neviete ako testovať. Príďte so svojim notebookom s predinštalovaným vývojovým prostredím a aplikáciou a konzultant sa vám bude venovať. Tento typ konzultácií nazvaný "drop-in clinic" bude viesť v anglickom jazyku skúsený profesionálny konzultant z USA. Keďž
V prípade, že použijeme ako datasource obyčajný SiteMapDataSource a pre zobrazovanie Menu a v tomto menu zavesíme na MenuItemDataBound zavesíme nasledujúci eventhandler : protected void subMenu_MenuItemDataBound(object sender, MenuEventArgs e) { System.Web.UI.WebControls.Menu menu = (System.Web.UI.WebControls.Menu)sender; SiteMapNode mapNode = (SiteMapNode)e.Item.DataItem; System.Web.UI.WebControls.MenuItem itemToRemove = menu.FindItem(mapNode.Title); if (mapNode["type"] == "hidden") { System.Web.UI.WebControls.MenuItem parent = e.Item.Parent; if (parent != null) { parent.ChildItems.Remove(e.Item); } } } Môžeme v sitemap súbore použiť pre menuitem, ktorý má predka (Parenta) nasledujúci atribút : type="hidden".Prečo píšem predka? Pretože ak nezobrazíme root node, parent v našom kóde bude null.
Náš MVP, Ján Hanák, vás uvedie do tajov paralelného programovania na seminári 21.10. V obsahu seminára bude: - paralelné objektovo orientované programovanie (POOP) v C# 4.0 a C++ (podľa štandardu C++0x) - ukážky v Visual Studio 2010 - tlačená verzia knihy "Ján Hanák, Základy paralelného programovania v C# 3.0". Registrácia: http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032426018&Culture=SK-SK Miro var addthis_pub="spigi";
V prípade, že by ste potrebovali vložiť kúsok javascript kódu do stránky, napr ako alert hlášku na základe výsledku postbacku, ide to jednoducho aj takto : ClientScript.RegisterStartupScript(typeof(string), "startupScript", "alert('abcd');", true); Property ClientScript má viacero metód na zaregistrovanie skriptov. Viac info aj tu : http://www.codeproject.com/KB/aspnet/Register_Client_Script.aspx Koniec hlásenia var addthis_pub="spigi";
Ak potrebujete ulozit typ DateTime s presnostou na milisekundy (napr ukladam transakcie a tam potrebujem co najvyssiu presnost), moze byt neprijemne zistit, ze NHibernate v kombinacii s MSSQL serverom (a tipujem, ze sa to tyka aj dalsich db serverov) vam milisekundovu cast jednoducho odsekne. Preco sa to deje? Nativny .NET DateTime typ uklada cas - konkretne milisekundy s presnostou na 7 miest. MSSQL nativny DateTime iba 3 (DateTime2 uz na 7, vid t-sql msdn doc: http://msdn.microsoft.com/en-us/library/ms187819.aspx). NH standardne pouziva ADO.NET pre komunikaciu s MSSQL, a ten nam nic presnejsie ako mu databaza ponuka nevrati. Kvoli tymto rozdielom NH odsekava milisekundovu cast a nechava tuto funkcnost na uzivatela. Mozne riesenia: 1) ako prve by nas napadlo ukladat ticks ako Int64 - to zafunguje, avsak niekedy chceme mat cas ulozeny ako DateTime (napriklad pri rieseni problemov, ak mame logy (napr transakcii), jazyk SQL a databaza nam umozni komfortne a rychlo vyhladat problemove zaznamy). 2) slo by to za pouzitia Interceptorov, toto riesenie sa mi zda nevhodne, smrdi. Overridnut OnSave, OnFlushDirty... public override bool OnFlushDirty(object entity, object id, object[] currentState, object[] previousState, string[] propertyNames, IType[] types) { if(entity is DomainObjectICareA
Spoločnosti HP a Dell publikovali najnovšie výsledky SQL Server 2008 v teste TPC-H. Zaujímavosťou je, že tieto testy sú prvými testami TPC s použitím Solid State diskov (SSD). V danom teste bola použitá technológia ioDrive spoločnosti Fusion-io. Viac informácii o výsledkoch testu obidvoch spoločností nájdete na adrese DELL a HP. var addthis_pub="spigi";
