Při použití objektů ADO a ADO MD v aplikaci rozhraní.NET Framework se zobrazí neočekávané chyby

Prohlášení o odmítnutí odpovědnosti pro už nepodporovaný obsah KB

Tento článek byl napsán pro produkty, ke kterým již Microsoft nadále nenabízí podporu. Článek je tedy poskytován „tak, jak je“ a nebude už nadále aktualizován.

Příznaky

V aplikaci Microsoft rozhraní.NET Framework můžete použít Microsoft ActiveX Data Objects (ADO) a Microsoft ActiveX Data Objects (ADO MD) (multidimenzionální) prostřednictvím COM interop. Někdy pod napětím, aplikace rozhraní.NET Framework, které používají tyto technologie dojít neočekávané chyby, jako je havárie a další občasné výjimky. To je zvláště běžné s více podprocesy aplikacemi jako jsou ty, které jsou spuštěny v aplikaci Microsoft ASP.NET.

Příčina

Objekty ADO a ADO MD byly navrženy před verze rozhraní.NET Framework a byly určeny k použití v prostředí nespravované modelu COM (Component Object). Ačkoli tyto technologie můžete přistupovat prostřednictvím COM interop, nedoporučujeme to provést. To zahrnuje objekty ADO primární Interop sestavení, který je součástí Microsoft Visual Studio .NET.

Vzhledem k tomu, že nejsou určeny pro použití tímto způsobem, ADO a ADO MD nebyly testovány silně ve scénářích vzájemné spolupráce.

Řešení

Doporučujeme použít Microsoft ADO.NET nebo Microsoft ADOMD.NET namísto klasické ADO nebo ADO MD prostřednictvím interop. Tyto technologie byly vyvinuty speciálně pro poskytování přístupu k datům v aplikacích rozhraní.NET Framework a nevyžadují přidané složitost COM interop.

Stav

Nesmí být žádné budoucí opravy nebo vylepšení tyto součásti opravit problémy, které se vyskytují pouze v spravované aplikace rozhraní.NET Framework. Obecně to nemá vliv na budoucí opravy nebo vylepšení ADO a ADO MD. Budeme pracovat na řešení potíží, ke kterým dochází při používání objektů ADO a ADO MD v nespravovaných aplikacích, včetně Microsoft Visual Basic 6.0, Microsoft Visual C++ a Microsoft ASP.

Jak potíže obejít

Chcete-li vyřešit tento problém v aplikaci Microsoft ASP.NET, nastavte atribut ASPCompat direktivě @ Page na hodnotu true. Při tento atribut je nastaven na hodnotu true, mohou být provedeny na stránce na podproces jedním podprocesem apartment (STA). Spuštění stránky na zřetězení STA snižuje pravděpodobnost neočekávané vícevláknový přístup k objektu rozhraní ADO nebo objekt ADO MD.

Poznámka: Použijte pouze to jako dočasné řešení při kód je přenášen ADO.NET nebo ADOMD.NET.

Aplikace rozhraní.NET Framework, které používají klasické ADO je nutné použít primární sestavení Interop pro objekty ADO, který je součástí aplikace Visual Studio .NET. Toto řešení může snížit některé problémy. Však nesmí bránit všechny problémy. Nepoužívejte toto zástupné řešení jako dlouhodobé řešení.

Odkazy

ADO.NET je poskytován jako součást Microsoft rozhraní.NET Framework. Další informace o rozhraní.NET Framework naleznete následujícím webu Microsoft Developer Network (MSDN):Následující soubor je k dispozici pro stažení z Microsoft Download Center:
Download Stáhnout balíček rozhraní ADOMD.NET. Další informace o stažení Microsoft Support soubory, klepněte na následující číslo článku databáze 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é změny souboru.
Vlastnosti

ID článku: 840667 - Poslední kontrola: 16. 1. 2017 - Revize: 1

Váš názor