Je k dispozici pro rozhraní .NET Framework 4.5 v systému Windows 7 SP1, Windows Server 2008 R2 SP1, Windows Server 2008 SP2 a Windows Vista SP2 aktualizace: květen 2013

Úvod

K dispozici je aktualizace pro rozhraní Microsoft .NET Framework 4.5. Další informace o problémech, které tato aktualizace řeší naleznete v části "Problémy, že tato aktualizace řeší".

Další informace

Jak získat tuto aktualizaci

Windows Update

Tato aktualizace je k dispozici na Webu Windows Update

Microsoft Download Center

Následující soubor je k dispozici pro stažení z Microsoft Download Center:

Download Stáhněte balíček.

Pro více informací o tom, jak stahovat soubory podpory společnosti Microsoft, klepněte na následující číslo článku v databázi Microsoft Knowledge Base:
119591 jak získat soubory podpory společnosti Microsoft ze serverů služeb online
Microsoft zkontroloval tento soubor na přítomnost virů. Společnost Microsoft použila aktuální antivirový software, který byl k dispozici k datu, kdy byl soubor vydán. Soubor je uložen na zabezpečených serverech, které pomáhají zabránit neoprávněným změnám v souboru.

Předpoklady

Chcete-li nainstalovat tuto aktualizaci, musíte mít rozhraní .NET Framework 4.5, která je nainstalována.

Požadavek na restartování

Nemáte k restartování počítače po instalaci této aktualizace, pokud zasažené soubory nejsou používány.

Informace o souborech

Globální verze této aktualizace má atributy souborů (nebo novější) uvedené v následující tabulce. Kalendářní data a časy jednotlivých souborů jsou uvedeny v koordinovaném světovém čase (UTC). Při zobrazení informací o souboru je převeden na místní čas. Rozdíl mezi místním časem a časem UTC naleznete na kartě Časové pásmo v položce Datum a čas v okně Ovládací panely.

Složky služby LDR
Složky služby GDR

Problémy, které tato aktualizace řeší

Tato aktualizace řeší síťové knihovny třídy, technologie ASP.NET, Entity Framework, WF a WCF problémy, které jsou popsány v následujícím článku znalostní báze Knowledge Base (KB):
2750147 aktualizace je k dispozici pro rozhraní .NET Framework 4.5 v systému Windows 7 SP1, Windows Server 2008 R2 SP1, Windows Server 2008 SP2 a Windows Vista SP2: leden 2013

Windows Workflow Foundation (WF)

Problém 1
Jde o takovouto situaci:
  • Máte pracovní postup aplikace, která cílí rozhraní .NET Framework 4.5.
  • Máte kód aktivity a aktivity kód má vlastnost pole libovolného typu.
  • Můžete přetáhnout na pracovní činnost kód a uložte pracovní postup.
V tomto scénáři nelze uložit soubor a zobrazí následující chybová zpráva:

System.Reflection.TargetException: Objekt neodpovídá cílovému typu.
v System.Reflection.RuntimeMethodInfo.CheckConsistency (objekt Cíl)
v System.Reflection.RuntimeMethodInfo.InvokeArgumentsCheck (objekt obj, příznaky BindingFlags invokeAttr, pořadače pořadače, Object [] Parametry, CultureInfo kultury)
v System.Reflection.RuntimeMethodInfo.Invoke (objekt obj, příznaky BindingFlags invokeAttr, pořadače pořadače, Object [] Parametry, CultureInfo kultury)
v System.Reflection.RuntimePropertyInfo.GetValue (objekt obj, příznaky BindingFlags invokeAttr, pořadače pořadače, objekt [] index, CultureInfo kultury)
v System.Reflection.RuntimePropertyInfo.GetValue (objekt obj, objekt [] index)
v Microsoft.Activities.Presentation.Xaml.XamlObjectReaderWithSequence.GetRealObject()
v Microsoft.Activities.Presentation.Xaml.XamlObjectReaderWithSequence.Read()
v Microsoft.Activities.Presentation.Xaml.ViewStateXamlHelper.ConvertAttachedPropertiesToViewState (XamlObjectReader inputReader, ViewStateIdManager, idManager)


Problém 2 Jde o takovouto situaci:
  • Máte pracovní postup, který používá InvokeMethod činnosti.
  • Způsob, který je vyvolán má nejméně jeden parametr, který je typu Nullable < T >.
  • Pokusíte se spustit InvokeMethod činnosti.
V tomto scénáři dojde k výjimce InvalidCastException s následující zpráva:

"Neplatné přetypování z < typ A > k ' System.Nullable'1 [[< typ A >]]"

Entity Framework (EF)

Problém 1 Jde o takovouto situaci:
  • Máte aplikaci, která používá Entity Framework a cílí na rozhraní.NET Framework 4. EDMX v aplikaci je verze ve které výčtových typů nebyly podporovány, jako je verze 2.0 nebo starší verzi.
  • Aplikace má typu entity type v sestavení datové vrstvy a zrcátko typ se stejným názvem v sestavení business vrstvy.
  • Sestavení business vrstvy používá výčtových typů. Však data vrstva neexistuje. Místo toho používá typy int představující hodnoty.
  • LINQ dotazu entity v aplikaci obsahuje přetypování vlastnosti int k výčtového typu sestavení business vrstvy, kde se nachází typ zrcadlení.
V tomto scénáři může dojít k neočekávané výjimce označující "Zadané schéma není platný." Aplikace vyvolá tuto výjimku v rozhraní .NET Framework 4.5, i v případě cílovou platformu Microsoft rozhraní.NET Framework 4.

Poznámka: Tato výjimka může dojít při spuštění aplikace v rozhraní.NET Framework 4.

Řešení

Tato aktualizace řeší tento problém pro EDM modely verze 2.0 a starší verze. Nicméně stále problému pro EDM modely, které jsou verze 3.0 nebo vyšší verze, protože to je očekávané chování při výčty jsou podporovány jako součást modelu.

Problém 2 Jde o takovouto situaci:
  • Máte aplikaci, která používá Entity Framework.
  • Omezení modelu entity v aplikaci se liší od skutečné omezení v databázi. Například entity model může znamenat, že je pole s možnou bez hodnotou Null. Je však ve skutečnosti s možnou hodnotou Null v databázi.
  • Aplikace obsahuje dotazy, které Generovat příkazy PŘIPOJIT Entity Framework.
  • Upgrade z rozhraní.NET Framework 4 na rozhraní .NET Framework 4.5.
V tomto scénáři aplikace může vrátit výsledky, které jsou příkazy LEFT OUTER JOIN povýšen nad příkazy INNER JOIN .

Problém 3 Jde o takovouto situaci:
  • Máte aplikaci, která používá Entity Framework.
  • Aplikace obsahuje LINQ dotazu entity, obsahující výrazu JOIN a končí VYBERTE výraz, který načte promítání anonymní objekt s jednu vlastnost nebo alespoň tři vlastnosti.
  • LINQ dotazu entity je přeložit dotaz zprostředkovateli za běhu.
V tomto scénáři dojde k výjimce ArgumentOutOfRangeException .

Cause

Dotazy, které kombinují SPOJENÍ výrazů a výčnělky anonymní objekt fungovat pouze v případě, že existují dvě vlastnosti, které jsou obsaženy v anonymní typ.

ASP.NET

Problém 1 Předpokládejme, že máte webovou aplikaci technologie ASP.NET, že použije výstupní mezipaměti. Pokud je aplikace spuštěna, když operační systém upraví hodiny, dojde k výjimce. Dále se zobrazí následující chybová zpráva:

Zadaný argument byl mimo rozsah platných hodnot. Název parametru: výjimce System.ArgumentOutOfRangeException utcDate
v System.Web.HttpCachePolicy.UtcSetLastModified (datum a čas utcDate)
v System.Web.HttpCachePolicy.SetLastModified (datum a čas, datum)
v System.Web.UI.Page.InitOutputCache (OutputCacheParameters nastavení cacheSettings)



Problém 2 Předpokládejme, že používáte Telerik ovládací prvek v aplikaci technologie ASP.NET založené na rozhraní .NET Framework 4.5. Webová aplikace běží v prostředí se střední důvěryhodností. V takovém případě dojde k výjimce a zobrazí následující chybová zpráva:

[By byla SecurityException: požadavek na oprávnění typu "System.Security.Permissions.SecurityPermission, mscorlib verze = 4.0.0.0 Culture = neutral, PublicKeyToken = b77a5c561934e089" se nezdařilo.]
Telerik.Web.UI.RadUploadHttpModule.CaptureWorkerRequest (Object sender, EventArgs e) + 0
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +80
System.Web.HttpApplication.ExecuteStep (IExecutionStep krok, Boolean & completedSynchronously) +165

Poznámka: Produkty třetích stran, které tento článek popisuje jsou vyráběny společnostmi nezávislými na společnosti Microsoft. Společnost Microsoft neposkytuje žádnou záruku, implicitně předpokládanou ani jinou týkající se výkonu nebo spolehlivosti těchto produktů.

Problém 3
Jde o takovouto situaci:
  • Máte webový server, který je hostitelem webu technologie ASP.NET 4.0.
  • Na serveru nainstalujete rozhraní .NET Framework 4.5.
  • Otevření nástroje Sledování výkonu.
V tomto scénáři sedm čítače výkonu "Aplikace technologie ASP.NET v4.0.30319(*)" jsou číslovány namísto slov. Čítače výkonu bude vypadat například takto:

\ASP.NET apps v4.0.30319 (*) \8210
\ASP.NET apps v4.0.30319 (*) \8212
\ASP.NET apps v4.0.30319 (*) \8214
\ASP.NET apps v4.0.30319 (*) \8216
\ASP.NET apps v4.0.30319 (*) \8218
\ASP.NET apps v4.0.30319 (*) \8220
\ASP.NET apps v4.0.30319 (*) \8222

Problém 4
Jde o takovouto situaci:
  • V obslužné rutině události postback na stránce přenést požadavek na jinou stránku je volána metoda Server.TransferRequest .
  • PreserveForm parametr nastaven na hodnotu false.
  • Zpětné volání obsahuje některá data formuláře ve vlastním požadavku.
V tomto scénáři data formuláře předán podřízený požadavek neočekávaně.

Problém 5
Jde o takovouto situaci:
  • Máte aplikaci založené na rozhraní .NET Framework 4.5 technologie ASP.NET, který běží v integrovaném režimu služby IIS.
  • Nastavit soubor cookie v obslužné rutině události. Například nastavíte AuthenticateRequest v modulu HTTP.
  • Máte některé statické soubory ve webové aplikaci a atribut runAllManagedModulesForAllRequests nastaven na hodnotu true.
V tomto scénáři soubor cookie je uložen do mezipaměti proxy nesprávně Pokud uživatel požaduje statické soubory.

Problém 6 Při spuštění Internetová informační služba (IIS) pracovní proces (W3wp.exe) v režimu integrované potrubí procesu může dojít k chybě nebo se stanou zablokovány. K tomuto problému dochází z důvodu neošetřené výjimce NullReferenceException v kódu technologie ASP.NET.

Zablokování může dojít, pokud je spravovaný modul, který naslouchá oznámení PreSendRequestHeaders nebo PreSendRequestContent . Zablokování dochází z důvodu konfliktu časování v kódu technologie ASP.NET, která zpracovává SendResponse oznámení, které se spouštějí nativní moduly služby IIS, například modulu Microsoft aplikace požadavek směrování (ARR).

Proces může selhat, pokud síť je při velkém zatížení a server obsluhuje požadavky na stránky asynchronní nebo asynchronní obslužné rutiny, nebo potrubí používá asynchronní moduly. K tomuto chování dochází z důvodu způsobu, jakým reaguje spor v kódu technologie ASP.NET kód dokončení asynchronní operace.

Windows Communication Foundation (WCF)

Problém 1 Jde o takovouto situaci:
  • Máte rozhraní.NET Framework 4 WCF služby, který je nakonfigurován pomocí NetTcpBinding vazby.
  • MexTcpBinding koncové body sdílet jeden port a nastavit vlastnost listenBacklog nebo maxConnections třídy NetTcpBinding výchozí hodnotu 10.
V tomto scénáři dojde k výjimce AddressAlreadyInUseException při přesunutí aplikace rozhraní .NET Framework 4.5. Dále se zobrazí následující chybová zpráva:

System.ServiceModel.AddressAlreadyInUseException: Již existuje posluchače na 0.0.0.0:xxxx IP koncového bodu. Může k tomu dojít, pokud existuje jiná aplikace již naslouchá na tomto koncovém bodu, nebo pokud máte více koncových bodů služby v vaše hostitele služby se stejnou IP koncového bodu, ale nekompatibilní vazby konfigurace.
---> System.Net.Sockets.SocketException: normálně je povoleno pouze jedno použití každé adresy soketu (protokol/síťové adresy, portu)
na System.Net.Sockets.Socket.DoBind (koncový bod endPointSnapshot, Adresa_soketu, Adresa_soketu)
na System.Net.Sockets.Socket.Bind (koncový bod localEP)
v System.ServiceModel.Channels.SocketConnectionListener.Listen()

---Konec trasování zásobníku vnitřní výjimky---
v System.ServiceModel.Channels.SocketConnectionListener.Listen()
v System.ServiceModel.Channels.BufferedConnectionListener.Listen()
v System.ServiceModel.Channels.ExclusiveTcpTransportManager.OnOpen()
v System.ServiceModel.Channels.TransportManager.Open (TransportChannelListener channelListener)
v System.ServiceModel.Channels.TransportManagerContainer.Open (SelectTransportManagersCallback selectTransportManagerCallback)
v System.ServiceModel.Channels.TransportChannelListener.OnOpen (časový interval časového limitu)
v System.ServiceModel.Channels.ConnectionOrientedTransportChannelListener.OnOpen (časový interval časového limitu)
v System.ServiceModel.Channels.TcpChannelListener'2.OnOpen (časový interval časového limitu)
v System.ServiceModel.Channels.CommunicationObject.Open (časový interval časového limitu)
v System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen (časový interval časového limitu)
v System.ServiceModel.Channels.CommunicationObject.Open (časový interval časového limitu)
v System.ServiceModel.ServiceHostBase.OnOpen (časový interval časového limitu)
v System.ServiceModel.Channels.CommunicationObject.Open (časový interval časového limitu)

Problém 2 Při použití WCF podpora protokolu WS-Discovery přes protokol UDP, můžete narazit na jednu nebo více z těchto neočekávaných situací:
  • Existuje zvýšené využití procesoru na serveru.
  • Existuje více vícesměrového vysílání.
  • Existuje mnoho chybu SOAP zprávy odesílány prostřednictvím sítě v prostředí, ve kterém je nainstalované rozhraní .NET Framework 4.5.
Tomuto problému může dojít i v případě, že služba není kompilován do cíle rozhraní .NET Framework 4.5 a místo toho se spustí v prostředí, ve kterém je nainstalované rozhraní .NET Framework 4.5.

Další informace o tomto problému a jak lze tento problém vyřešit klepněte na položku WCF generuje počítač vysoké využití a sítě bouře.

Problém 3 Předpokládejme, že máte službu WCF, který je nakonfigurován pomocí WebHttpBinding vazby. Můžete přidat zabezpečení přenosu konfiguraci takto:
    <bindings>
<webHttpBinding>
<binding>
<security mode="Transport" />
</binding>
</webHttpBinding>
</bindings>
Pokud jste hostitelem služby WCF v IIS v rozhraní .NET Framework 4.5, dojde k výjimce. Dále se zobrazí chybová zpráva podobná následující:

Instance vazby již byla asociována s poslechem identifikátoru URI. Pokud dva koncové body sdílet stejnou třídu ListenUri, musejí rovněž sdílet stejnou instanci objektu vazby. Dva konfliktní koncové body byly zadány ve volání AddServiceEndpoint(), v konfiguračním souboru nebo kombinace třídy AddServiceEndpoint() a konfigurace.

Cause


K tomuto problému dochází z důvodu přidání automatické koncové body ve službě WCF v rozhraní .NET Framework 4.5. Při použití WebHttpBinding vazby a explicitně nakonfigurovaná vazba a automatická vazba se neshodují, dojde k výše uvedené výjimky.

Jak potíže obejít

Chcete-li tento problém vyřešit, vložte následující kód v souboru Web.config:

<appSettings>     <add key="wcf:webservicehost:enableautomaticendpointscompatability" value="true"/> </appSettings> 

Projekt aplikace Visual Studio

Problém 1 Při načítání projektu Visual Studio 2010 C++ jednotka Test v Microsoft Visual Studio 2010 v počítači, který je rozhraní .NET Framework 4.5 nainstalován, projekt nebude správně fungovat. Navíc vyskytnout následující problémy:
  • V okně Průzkumník řešení jsou nevyřešené odkazy všechny P2P.
  • Při pokusu o spuštění testů pomocí zkratky F5 vyvolá výjimku System.Exception a zobrazí dialogové okno chyby. To způsobí, že všechny testových případů zobrazí jako se nezdařilo.

Problém 2 Předpokládá vytvoření souboru RESX pomocí nástroje MSBuild 4.5 pro vytvoření projektu Microsoft Visual Studio 2008 v počítači. Počítač má Microsoft.NET Framework 3.5 a rozhraní .NET Framework 4.5, která je nainstalován, ale nemá Microsoft Visual Studio 2012. V této situaci budovy RESX souboru se nezdaří a MSBuild 4.5 hlásí chybu sestavení krokem generování prostředku, protože jej nelze spustit MSBuildTaskHost.exe.

Vlastnosti

ID článku: 2805226 - Poslední kontrola: 12. 1. 2017 - Revize: 1

Váš názor