HAVIT Knowledge Base

Vývoj webových aplikací, .NET, SQL, návrh
Welcome to HAVIT Knowledge Base Sign in | Join | Help
-
Home Články Forums Obrázky Soubory

Vývojářské nástroje

Visual Studio, WDE, utility, tools

  • Visual Studio 2010 RC a .NET Framework 4 RC (Release Candidate) ke stažení z MSDN

    Visual Studio 2010 RC a .NET Framework 4 RC (Release Candidate) jsou ode dneška ke stažení z MSDN.
  • MSBuild na x64 nepracuje správně s Code Contracts + how to fix

    Máte-li samostatný build-server na x64 platformě, na něm nainstalované Code Contracts a pouštíte 64-bitový MSBuild, potom rychle zjistíte, že takový build ignoruje Code Contracts.

    Problém je v tom, že do msbuildu se nanaimportují targets pro Code Contracts (C:\Program Files (x86)\Microsoft\Contracts\MsBuild\v3.5\Microsoft.CodeContracts.targets), protože Code Contracts se nainstalují do "Program Files (x86)" složky, kdežto 64-bitový MSBuild si nastaví property MSBuildExtensionsPath na "Program Files" a tam Code Contracts nainstalované nejsou.

    Microsoft.CodeContracts.targets se dostávají do MSBuildu přes Custom.After.Microsoft.Common.targets, které se linkují z Microsoft.Common.targets - tam je však cesta k nim sestavena přes property MSBuildExtensionsPath a ta má pro 64-bitový MSBuild hodnotu "C:\Program Files\MSBuild\" a ne "C:\Program Files (x86)\MSBuild\".

    Problém se dá vyřešit buď používáním 32-bitového MSBuildu, nebo násilným přepsáním hodnoty MSBuildExtensionsPath na "C:\Program Files (x86)\MSBuild\" v souboru c:\Windows\Microsoft.NET\Framework64\v3.5\Microsoft.CodeContracts.targets takto:

    <PropertyGroup>

        <!-- HAVIT: Workaround oprava ConnectID 109232 -->
        <MSBuildExtensionsPath>C:\Program Files (x86)\MSBuild\</MSBuildExtensionsPath>
        <!-- HAVIT: end -->

    <CustomBeforeMicrosoftCommonTargets Condition="'$(CustomBeforeMicrosoftCommonTargets)'==''">$(MSBuildExtensionsPath)\v3.5\Custom.Before.Microsoft.Common.targets</CustomBeforeMicrosoftCommonTargets>
    <CustomAfterMicrosoftCommonTargets Condition="'$(CustomAfterMicrosoftCommonTargets)'==''">$(MSBuildExtensionsPath)\v3.5\Custom.After.Microsoft.Common.targets</CustomAfterMicrosoftCommonTargets>
    <ReportingServicesTargets Condition="'$(ReportingServicesTargets)'==''">$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\ReportingServices\Microsoft.ReportingServices.targets</ReportingServicesTargets>
    </PropertyGroup>
    Problém samozřejmě může nastat, až jiné build-extense než Code Contracts použijí C:\Program Files\MSBuild\ a celé se to rozjede.

    Dle hlášeného bugu na Connectu však stejný problém je i s WCF, takže si myslím, že soudruzi v Microsoftu někde přecijenom dělají chybu.

  • VS2008 nejde nainstalovat po instalaci Office 2010 CTP

    Tak jsem přes noc šíleným tempem stáhnul Windows 7 RTM z MSDN (objevilo se tam někdy kolem sedmé hodiny) a dneska jsem se pustil do instalace.

    Windows 7 x64 Ultimate RTM v pohodě (jedu na SSD disku OCZ Summit 128GB, stroj i7 920, 6 GB RAM a je to fakt hoooodně rychlý).

    Office 2010 CTP instalace v pohodě.

    Následná instalace VS2008 lehala na instalaci Web Authoring Component.

    Pomohlo až odinstalovat Office 2010 CTP, instalovat VS2008 a nainstalovat zpět Office.

    Co jsem se tak různě dočetl, tak kdyby se mi objevil problém s VS2008 (hang na ASPX), tak pomáhá Repair instalace Office 2010.

  • TechEd CZ 2009: Web Deployment na Dev10 (VS2010, .NET 4.0) - prezentace a soubory ke stažení

    Včera jsem měl prezentaci na českém TechEdu na téma "Web Deployment na Dev10 (VS2010, .NET 4.0)".

    Hlavními body programu byly:

    • web.config transformace
    • Web Packages (MSDeploy - Web Deployment Tool, VS2010 Publish Web)

    V příloze dávám ke stažení prezentaci PowerPoint a další soubory. Bohužel se mi nedaří připojit k postu více souborů, takže dávám do jednoho zipu s následujícím obsahem:

    • Haken - Web Deployment.pptx - prezentace
    • TechEd-WebConfigTransformation-VS2008+WDP-Sample.zip - VS2008 Solution s ukázkou Web Deployment Projectu a web.config transformací
    • TechEd-WebConfigTransformation-VS2010SampleProject.zip - VS2010 Solution s ukázkou web.config transformací
    • TechEdSamplePackage.zip - balíček vytvořený Web Deployment Toolem (MSDeploy) - obsahuje web a DB

     

  • Moje oblíbené vývojářské nástroje (Robert Haken) - aktualizováno

    Protože velmi často na kurzech i jinde dostávám otázku na vývojářské nástroje, které používám, rozhodl jsem se sumarizovat své nejoblíbenější vývojářské nástroje a utility:

    Microsoft Visual Studio 2005, 2008

    Základem veškeré vývojářské práce je samozřejme Visual Studio. Projekty už máme jenom .NET 2.0+, takže si vystačím bohatě se samotným VS2008, s jeho refaktoringem a snippety. Žádné doplňky typu ReSharper už nepoužíváme.

    Používáme Web Application Project (WAP) a Web Deployment Project (WDP). První je již součástí  součástí VS2008, druhý je ke stažení z Microsoftu.

    Na webových projektech pracuji výhradně v režimu source-view, design-view používám jen na kurzech, kde to laby/cvičení/dema vyžadují. V zásadě nevyužívám ani drtivou většinu wizzardů a jiných RAD pomůcek Visual Studia, vše si dělám ručně. Pro Visual Studio jsem si sehnal/udělal pár maker, které usnadňují práci, např. ExpandAll, či CollapseAll pro outlining, či vypisování <br/> na Ctrl+Enter, atp. Mám i vlastní snippety a vytvořil jsem i vlastní solution template (Guidance Automation Extensions + Toolkit).

    Visual Studio je pro mně v zásadě velmi chytrým notepadem.

    SQL Server - Server Management Studio, Profiler, Database Tuning Wizzard

    Pro úplnost uvádím, že pro práci s SQL Serverem používám mimo samotného Visual Studia i běžné nástroje, s kterými SQL Server přichází.

    Neocenitelným pomocníkem je zejména SQL Server Profiler, který umožňuje přesně monitorovat veškerý provoz, který se na SQL serveru odehrává (zejména veškeré T-SQL příkazy). Je to v podstatě obdoba Fiddleru pro SQL provoz, i když Fiddler monitoruje stranu klienta, kdežto Profiler monitoruje server.

    Database Tuning Wizzard je nástupcem starého známého Index Tuning Wizzardu a při správném použití je velmi dobrou inspirací pro ladění výkonu databází.

    Pro běžnou práci s SQL si vystačím s Microsoft nástroji. Žádné IDE či designer třetí strany nepoužívám.

    Red Gate SQL Compare, SQL Data Compare

    SQL Compare a SQL Data Compare jsou dvě utility od Red Gate, které velmi usnadňují synchronizaci databází, např. mezi vývojářskou databází a produkční databází, včetně možnosti uložení updatovacích skriptů. SQL Compare porovnává a synchronizuje databázová schémata, SQL Data Compare porovnává a synchronizuje data. Použití je velmi snadné. Red Gate má i několik dalších užitečných nástrojů pro práci s databázemi, nicméně tyto dva mi zatím prokazují největší službu.

    RedGate .NET Reflector

    Nástroj, který umožňuje prohlížet a analyzovat zdrojový kód jednotlivých assembly, včetně samotného .NET Frameworku (decompiler).

    Neocenitelný je pro mě zejména v situacích, kdy .NET dokumentace není přesná, nebo úplně chybí. V situacích, kdy se chci podívat, jak ta která konkrétní funkčnost v .NET Frameworku konkrétně pracuje, kdy se co přesně děje v life-cycle controlu či stránky, či v situacích, kdy se chci inspirovat, jak kterou funkčnost implementují v Microsoftu.

    Někdy bohužel člověk dospěje i k nějakému tomu bugu v samotném .NET Frameworku. Je pak samozřejmě ideální takový bug co nejlépe lokalizovat a reportovat.

    .NET Reflector je zdarma ke stažení.

    Microsoft Internet Explorer Developer Toolbar (DevToolBar)

    Doplněk do Internet Exploreru, který zahrnuje např. DOM Inspector, outlining, validaci, resize, čištění cache či cookies, či pravítko. Prostě spousta užitečných pomůcek, které usnadňují práci se samotným HTML kódem a designem stránek, bez přímé vazby na ASP.NET.

    Microsoft Internet Explorer Developer Toolbar (DevToolBar) je zdarma ke stažení, Internet Explorer 8 ho již v sobě zahrnuje pod pojmem Vývojářské nástroje.

    Microsoft Fiddler

    Fiddler je "HTTP Debugging Proxy" - v podstatě tedy po spuštění monitoruje veškerý HTTP provoz na Vašem počítači a v plných detailech ho relativně přehledně zobrazuje, každý jednotlivý request. Fiddler se mi hodí vždy, když chci ověřit, jaké přesně hlavičky či formulářová data se posílají při jednotlivých requestech, při ladění problémů s cookies, s client/proxy cachingem, atp. Hodí se pro ladění HttpWebRequest/HttpWebResponse, pro ladění webových služeb, atp.

    Microsoft Fiddler je zdarma ke stažení a lze ho doplňovat o spoustu plug-inů.

    Viz též článek Fiddler: Zachytávání lokálního ASP.NET Web Development Serveru.

    Subversion (SVN) - TortoiseSVN, VisualSVN

    Pro správu zdrojových kódů používáme Subversion, konkrétně TortoiseSVN (Open Source) s doplňkem VisualSVN ($49/lic), který usnadňuje použití z prostředí Visual Studia.

    Oproti SourceSafe přináší SVN například atomické operace, kdy verzí v repository je vždy konzistentní snapshot celé solution, nikoliv jen změť jednotlivých verzovaných souborů. Dále se pak pracuje principem Update/Commit namísto Check Out/Check In. Update zaktualizuje lokální kopii solution o změny, které jsou v SVN (vyvolává se ručně) a Commit naopak publikuje mé změny do repository. Soubory, které měním, se nikde nezamykají, v případě konfliktů je v 95% úspěšný automatický Merge, výjimečně je nutno řešit konflikty ručně pomocí nějakého vizuálního merge-nástroje (sestavit z dvou konfliktních verzí jeden soubor).

    Microsoft Team Foundation Server nepoužíváme, protože nám bohatě stačí se starat o Exchange a skákat kolem dalšího kolosu se nám už nechce.

    CruiseControl.NET, MSBuild

    Pro řízení continuous-integration procesu používáme CruiseControl.NET, pro který máme vytvořené skripty tak, že přidání nového projektu je otázkou Copy+Paste asi 4 konfiguračních řádek v XML souboru. CC.NET si pak sám vyzvedává nové revize ze Subversion, provádí build (používáme MSBuild) a výsledek dává do složek, odkud jej nasazujeme ručně (k přímému deploymentu jsme se zatím neodvážili).

    CruiseControl.NET je bezplatný.

    axosoft OnTime

    OnTime je jednoduchý a přehledný feature/bug/task-tracking systém, tedy systém pro správu požadavků, bugů a úkolů na softwarových projektech. Osobně mě přesvědčil zejména jednoduchým ovládání a hierarchickým členěním projektů, nechybí ale ani webové rozhraní, custommer portal, VS-integrace atp.

    Oproti Microsoft Team Foundation Serveru je samozřejmě o mnoho jednodušší a prostší, nicméně právě pro jeho jednoduchost jsem si ho oblíbil. Pokud máte tedy menší vývojářský tým a TFS je pro Vás drahý kanón na vrabce, pak dávám OnTime ke zvážení.

    OnTime je placený, nicméně verze pro jednoho uživatele je k volnému užití a i s tou se dá v malém týmu udělat hodně muziky. Přesněji řečeno - jakákoliv evidence je zde lepší než žádná evidence. Koukal jsem, že existuje nyní i edice Express, která za pár korun (akce je tuším $5) taky umí hodně.

    EC Software Help & Manual

    Pro tvorbu uživatelských příruček používám aplikaci Help & Manual. Sice jsem původně toužil po on-line editoringu, ale nakonec se tento nástroj ukázal jako nejlepší.

    Z jedněch zdrojových dat v podobě XML, které lze navíc pohodlně verzovat v SVN, se generují výstupy do různých podob. Aktivně používám výstup do HTML a PDF (příklad viz manual.goran.cz), zvládá ale mnohod dalších (HLP, CMH, WebHelp, e-Book, atp.). Připravené šablony dávají rozumnou formu výstupu, kterou lze následně modifikovat. S aplikací se pracuje pohodlně a rychle.

    nDoc & Microsoft Sandcastle

    nDoc je legendární generátor dokumentace, který na základě XML komentářů ve Vašem zdrojovém kódu vytvoří vývojářskou dokumentaci Vašeho projektu v podobě prakticky identické s SDK dokumentací .NET Frameworku.

    nDoc je zdarma ke stažení, bohužel však jeho autoři vývoj ukončili, a tak je spolehlivě použitelný jen pro .NET 1.1 projekty. Pro .NET 2.0 projekty existují sice určité úpravy nadšenců, kteří už to bez něj nemohli vydržet a pro .NET 2.0 úpravy udělali, nicméně příliš spolehlivé to není a nepodoruje to ani některé nové vlastnosti .NET 2.0 jazyků (např. generika).

    Naštěstí tlak vývojářské komunity nevydržel ani Microsoft, a tak uvolnil k volnému použití svůj vlastní interní nástroj pro generování dokumentace - codename Sandcastle. Sandcastle je zdarma ke stažení, a i když je to jen command-line utilita, hned pro něj vzniklo několik GUI prostředí, které celou práci se Sandcastlem usnadňují. Není to zatím tak jednoduché, jak to bylo s nDoc, nicméně konečně vzniká něco, co mezeru po nDoc zaplní.

    Microsoft Visio, Enterprise Architect

    Ač je z hlediska vývojářského Microsoft Visio na úpadku a modelování se postupně přesouvá do Visual Studia (Class Designer, atp.), přesto je pro mě stále příjemným nástrojem pro vytváření různých diagramů a podobných vizuálních vyjádření vývojářské problematiky.

    Pro UML modelování používám Enterprise Architect od SPARX Systems, který je v této oblasti zřejmě nepřekonatelným leaderem.

    Ostatní drobnosti

    S vyhledáváním souborů ve WindowsXP jsem se moc neskamarádil, po několika neúspěšných dotazech jsem nainstaloval Agent Ransack a ten používám dodnes. Je rychlý a podporuje i regulární výrazy.

    Jako link-validator používám většinou http://validator.w3.org/checklink, nicméně ani Web Link Validator od REL Software není k zahození, jenom škoda, že neplacená verze je omezena na 500 odkazů, takže je použitelný jen pro menší site, nebo části větších.

    Pro generování kódu základní business-vrstvy jsme dříve používali CodeSmith, nakonec jsme přešli na generátor zcela vlastní.

  • Fiddler: Zachytávání lokálního ASP.NET Web Development Serveru (aktualizováno)

    Fiddler je výborný nástroj pro zachytávání HTTP provozu - zobrazí Vám přesnou podobu HTTP requestu a responsu, kterou Váš počítač dělá vůči webovým serverům.

    Ve skutečnosti Fiddler funguje jako proxy-server. Při spuštění se nastaví v Internet Options jako proxy a veškeré běžné požadavky tak jdou přes něj. Problém je v tom, že ne zas tak úplně veškeré, Innternet Explorer i .NET Framework natvrdo směřují veškeré požadavky na "localhost" a "127.0.0.1" mimo proxy, přestože je proxy zapnutý i pro intranet.

    První podmínkou pro zachytávání Fiddlerem je tedy používat pro browsing adresu v podobě http://mujpocitac:1234/MyPage.aspx, čímž jdou takové požadavky přes proxy a dostane je Fiddler.

    Další problém je však v tom, že ASP.NET Web Development Server (Visual Studio, Web Developer Express, ...) přijímá požadavky pouze na "localhost" a ostatní zamítá.

    Řešením je překlad adresy ve Fiddleru. Fiddleru můžeme přidat pravidlo, aby požadavky na "mujpocitac" převáděl na podobu "localhost". Do CustomRules.js (Rules ~ Customize rules...) přidáme na začátek události BeforeRequest:

    static function OnBeforeRequest(oSession:Fiddler.Session)
    {
        oSession.host = oSession.host.replace("mujpocitac", "localhost");

    ...a je to.

    (Samozřejmě ten překlad by se dal udělat i odolnější, aby fungovaly i adresy http://mujpocitac/mujpocitac/mujpocitac.aspx a nebylo z nich http://localhost/localhost/localhost.aspx)

    Update pro Windows Vista

    Ve Windows Vista je mimo výše uvedeného potřeba ještě ve Fiddleru v Options vypnout volbu "Enable IPv6".

  • Mrznoucí Visual Studio 2008 po instalaci SP1 při otevření souboru z WebSite

    Mordovali jsme se s tím dneska na kolegovo počítači, možná to někomu pomůže:

    Symptomy
    • Visual Studio 2008, čerstvě instalovaný SP1
    • po otevření ASPX souboru z WebSite VS zamrzlo; solutions s Web Application Projectem bez nejmenších problémů
    • při odstranění web.configu se problém neprojevil
    • při zakomentování sekce <controls> z web.configu se problém neprojevil
    • nakonec byly problém jen určité řádky z <controls>, ale nepoznali jsme, proč zrovna ty které
    Řešení
    • pomohlo nám vymazat *.dll ze složky /bin a nechat je tam založit znovu (pomocí .refresh souborů)
    Závěr
    • nesnáším režim WebSite ještě víc než kdykoliv předtím, bůh nás chraň před takovými projekty, a žehnej Web Application Project
  • Visual Studio Gallery - katalog doplňků pro VS

    Microsoft připravil nový web, Visual Studio Gallery (http://visualstudiogallery.com), který má být katalogem všech možných doplňků pro Visual Studio, extenzí, add-inů, maker a podobných vylepšení. Zaregistrovat se můžete i se svými doplňky.

    Znali jste například následující zajímavé bezplatné nástroje?

  • Web Deployment Project pro VS2008 Released

    Web Deployment Project pro Visual Studio 2008 byl releasován ve verzi "RTW - Released To Web".
  • Makra pro ExpandAllRegions, CollapseAllRegions (#region)

    Již delší dobu používám ve Visual Studiu dvě makra - ExpandAllRegions a CollapseAllRegions, ke kterým mám přidružené klávesové zkratky Ctrl+Alt+NumPlus a Ctrl+Alt+NumMinus. Makra jsou prostá, rozbalí všechny regiony v kódu, či zabalí všechny #regiony v kódu (což se od doby, kdy si VS2005+ pamatuje poslední sbalení/rozbalení u každého souboru, narozdíl od předchozích verzí, kde se vždy vše dalo otevírat sbalené, ukázalo jako neobyčejně potřebnná funkce).

    Makra jsou prostá:

    Sub ExpandAllRegions()
        DTE.ExecuteCommand("Edit.StopOutlining")
        DTE.ExecuteCommand("Edit.StartAutomaticOutlining")
    End Sub

    Sub CollapseAllRegions()
        ExpandAllRegions()
        Dim objSelection As TextSelection
        objSelection = DTE.ActiveDocument.Selection
        objSelection.StartOfDocument()
        While (objSelection.FindText("#region"))
            objSelection.StartOfLine(vsStartOfLineOptions.vsStartOfLineOptionsFirstColumn)
            DTE.ExecuteCommand("Edit.ToggleOutliningExpansion")
            objSelection.StartOfDocument()
        End While
        DTE.ActiveDocument.Selection.StartOfDocument()
    End Sub

    ...a přiřazení klávesových zkratek je v Tools ~ Options ~ Environment ~ Keyboard ~ ...a dále dohledat název makra dle procedury, takže např. Macros.MyMacros.Havit.CollapseAllRegions, atd.

  • Expression nástroje budou v MSDN

    Dnes bylo konečně oficiálně oznámeno, že nové Expression nástroje Microsoftu budou součástí MSDN, i když jen MSDN Premium subskripce. Expression Web, Expression Blend už jsou v tomto smyslu rozhodnuté, Expression Design a Expression Media však stále zůstanou mimo MSDN jako "nevývojářské nástroje".
  • Visual Studio 2005 Service Pack 1 Update for Windows Vista

    Microsoft relativně v tichosti uvolnil finální verzi Visual Studio 2005 Service Pack 1 Update for Windows Vista.
  • VS2005 SP1 Beta & WAP: Error: this template attempted to load an untrusted component

    Pokud zkoušíte stejně jako já VS2005 SP1 Beta, který je po registraci volně ke stažení z Microsoft Connect, a pokud jste také používali předchozí verze Web Application Projectu (WAP), pak se Vám pravděpodobně při pokusu o přidání nového item do projektu objevuje chyba:

    Error: this template attempted to load an untrusted component 'Microsoft.VisualStudio.Web.Application, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. For more information on this problem and how to enable this template, please see documentation on Customizing Project Templates.

    Je to chyba v SP1 Beta, v jeho setup procesu, která už je zaznamenána a v release verzi SP1 nebude, nicméně nyní je potřeba ukončit VS, otevřít "Visual Studio 2005 Command Prompt" a spustit

    devenv.exe /InstallVSTemplates...VS si rekonfiguruje templates a vše bude OK.

  • WDP: Excludování .csproj souborů z cílové složky

    Web Deployment Project (WDP) není ještě pro práci vůči Web Application Project (WAP) doladěn, takže například do cílové deployment složky nakopíruje i soubory .csproj, .sln, .scc a podobné (už ale existuje Design Change Request DCR590603).

    Naštěstí není problém ruční úpravou .wdproj souboru (Open Project File) tyto soubory vyloučit.

    Stačí do sekce Project/ItemGroup přidat elementy ExcludeFromBuild:

    <Project ...>
    <ItemGroup>
         <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\*.csproj*" />
         <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\*.scc*" />
         <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\*.Publish.xml*" />
         <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\bin\*.xml" />
    </ItemGroup>
    </Project>

    Pokud bychom chtěli něco odebírat až po buildu (něco, co vzniká až buildem):

    <Target Name="AfterBuild">
        <RemoveDir Directories="$(OutputPath)\obj" />
    </Target>
    ...a jsou tam připravené i jiné targety - BeforeBuild, BeforeMerge, AfterMerge a AfterBuild.
  • Web Deployment Project funguje i vůči Web Application Project

    Po celém odpoledni bojů, které doufám většinu z Vás nečekají, se mi podařilo rozchodit Web Deployment Project vůči Web Application Project (dosud mi deployment chodil jen vůči Web Site a až dnes jsem potřeboval velký deployment i na WAP - jinak WAP má svůj celkem obstojný Publish).

    V první řadě je samozřejmě potřeba mít poslední verzi WAP i WDP.

    Předchozí verze je potřeba před instalací nových verzí odinstalovat!

    Po odinstalaci doporučuji restartovat PC a spuštěním Visual Studia se přesvědčit, že ani jeden add-in není aktivní (Help ~ About).

    Dále instalujte nejprve WAP, opět nejlépe s restartem.

    A nakonec WDP, s restarem.

    Pokud budete mít štěstí (což je snad pravděpodobné), pak Vám při na pravé tlačítko v Solution Exploreru, při volbě Web Application Projectu přibude v kontextovém menu volba "Add Web Deployment Project...". Pokud nebudete mít štěstí (jako já celé odpoledne), pak zkoušejte reinstalaci dle výše uvedeného... :-))) (čím víc restartů, tím lépe, řekl bych).

    Komu se zadařilo, tak už můžete klasicky deployovat.

    ...snad to bude s SP1 pro VS2005 jednodušší, WDP i WAP by měly být součástí.

    No, moc deterministickej návod na zprovoznění to není, každopádně jsem chtěl hlavně zdůraznit, že Web Deployment Project lze nyní jednoznačně používat i vůči Web Application Project, nejenom vůči WebSite (moc explicitně to totiž nikde uvedeno není, v návodech se to neukazuje a nic se k tomu najít nedá).

More Posts Next page »