Author Archives: Robert Haken

avatar Neznámé

About Robert Haken

Software Architect, Founder at HAVIT, Microsoft MVP - ASP.NET/IIS

Když wsdl.exe/VS hlásí „WSDL: error WSDL1: Item has already been added. Key in dictionary: ‚[45]:http://my.url.com/path:Negotiate‘

Pokud používáte wsdl.exe (nebo Add Web Reference ve VS) pro vygenerování proxy tříd(y) k webovým službám a dostáváte hlášku:

WSDL: error WSDL1: Item has already been added. Key in dictionary: '[45]:http://my.url.com/path:Negotiate' Key being added'[45]:http://my.url.com/path:Negotiate'

Tak je to nejspíš tím, že se v definičním XML souboru (parameters pro wsdl.exe) odkazujete na více WSDL dokumentů s authentizací

Mně pomohlo authentizační parametry z XML vyhodit, protože WSDL byla přístupná i anonymně. Pokud v takové situaci nejste, pak pomůže stáhnout WSDL soubory na disk (např. pomocí disco.exe) a odkázat se na ně přes file://

Performance Tuning with SQL Server Dynamic Management Views – zajímavá PDF kniha zdarma

…další užitečná kniha zdarma ke stažení od RedGate. Na rozdíl od předchozích 50 Ways to Avoid, Find and Fix ASP.NET Performance Issues je to však hutná kniha o 337 stranách. Je však dobré ji evidovat v patrnosti pro případ řešení specifických situací pomocí DMV.

50 Ways to Avoid, Find and Fix ASP.NET Performance Issues – PDF kniha zdarma

imageZa připomenutí stojí, že RedGate před nějakým časem sestavil a zdarma ke stažené nabízí knihu 50 Ways to Avoid, Find and Fix ASP.NET Performance Issues.

Jedná se o stručný a čtivý soupis doporučení nezávislých odborníků, který můžete mít za pár minut vstřebán.

Ne se vším se plně ztotožňuji, nicméně jako inspirace to stojí za zkouknutí…

Optimalizace databázových dotazů – Execution plans – Slides, dema a záznam [WUG Praha 03/2013]

Slides a dema z přednášky pro WUG Praha z března 2013:

Záznam z přednášky najdete na našem YouTube Channel:

MVP Summit 2013 – Day 1 – ASP.NET – Notes

…non-NDA pracovní poznámky z Microsoft MVP Summitu 2013, první den, ASP.NET tématika.

Tooling

  • Web Essentials 2012 & ASP.NET and Web Tools 2012.2
    • super LESS editor (včetně generování minified verze, atp.)
      • Trik: pokud se soubor pojmenuje s podtržítkem na začátku, nekompiluje se do .css (hodí se např. pro include soubory s variables, které nemají mít vlastní .css výstup).
    • podstatně vylepšené Intellisense
    • spousta prima udělátek do webových editorů
    • ZenCoding – pozoruhodná syntaxe pro rychlopsaní kódu
    • code-snippets v .css

ASP.NET Core

  • Friendly URLs 1.0.0 – released live this morning
    • Adds a mobile master page and a view switcher user control to enable switching between mobile and desktop views using ASP.NET Friendly URLs.
  • ScriptManager.EnableCdnFallback
  • ControlBuilderInterceptor – cesta, jakou je možné ovlivnit C# code generovaný control-builderem z markup-kódu při compile-time
    • override OnProcessGeneratedCode()

Windows Azure Web Sites

  • Download Publish Profile – možnost stáhnout .PublishSettings z Azure Portalu pro Visual Studio

Chyba 404 při přístupu na ASP.NET aplikaci v Classic managed pipeline modu na II7

Symptom

Pokud přepneme application pool do Classic managed pipeline mode a dostáváme podivnou chybu 404, jedná se velmi pravděpodobně o chybu

HTTP Error 404.2 - Not Found
The page you are requesting cannot be served because of the ISAPI and CGI Restriction list settings on the Web server.
Error Code 0x800704ec

Tuto podrobnější chybu se můžeme dozvědět, pokud přístup uděláme přímo ze browseru běžícím na serveru (což bohužel ne vždy lze, viz třeba problémy s lokální integrovanou authentizací).

Cause

Každopádně problém je v tom, že nejsou v nastavení IIS povoleny ISAPI extenze pro ASP.NET 4.0.

Action

  1. IIS Manager
  2. server level
  3. ISAPI and CGI restrictions
  4. u zakázaných ASP.NET 4.0 extenzí, které potřebujeme, nastavit Allow

Optimalizace databázových dotazů – Execution plans – Slides, dema, záznam [MS Fest 2012]

Slides a dema z přednášky na konferenci MS Fest Praha 2012:

Z přednášky byl pořízen obrazový záznam, který najdete na našem YouTube Channel:

Doporučuji též rozšířenou podobu přednášky, která byla v březnu 2013 realizována pro WUG Praha (opět včetně záznamu).

PerfView – ladění v 64-bit prostředí – NGen

PerfView je zajímavý nástroj od Microsoftu, který umožňuje neinvazivní profiling stroje, např. produkčního serveru, tím, že se přihlásí k odběru ETW událostí Windows.

Nevýhodou je, že .NET call-stacky jsou nepoužitelné, pokud profilujeme 64-bit .NET process.

Pomoci se tomu dá zkompilováním assembly/-ies pomocí NGenu:

D:\WebApp\bin>"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen" install MyAssembly.dll /nodependencies /verbose

…NGenovat je potřeba všechny assembly, které nás ve vyhodnocení call-stacku zajímají.

U webového kontextu je potřeba recyklovat AppPool.

Pokud by NGen hlásil chybějící dependencies, lze to dohledat pomocí FusLogVw.exe.

Optimalizace výkonu webových aplikací – Slides, dema, záznam [WUG Praha 07/2012]

Slides a dema z přednášky pro WUG Praha v červenci 2012:

Z přednášky byl pořizován obrazový záznam, který je k dispozici na našem YouTube Channel:

Optimalizace výkonu databázových dotazů – Slides, dema [TechEd Praha 2012]

Slides a dema z přednášky na konferenci TechEd Praha 2012:

Záznam z přednášky nebyl pořizován, obdobnou přednášku jsem však prezentoval pro WUG Praha a k té záznam existuje.