See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 19035|Vastuse: 0

[Lahendatud] . .NET MySQL Connector konfliktid DbProviderFactories (.NET MySQL Connector Conflicts DbP...

[Kopeeri link]
Postitatud 2020-11-11 09:11:52 | | |
Seda postitust toimetas viimati QWERTYU 2020-11-11 09:14

Stsenaarium:
Ava .NET projekt mysql andmebaasi abil ja paigalda see kohalikku arenduskeskkonda.NET MySQL ühendus, kõik töötab hästi, kuid kui see iis-ile välja antakse, on programm ebanormaalne ja veateate on järgmine:
Erandite info:
System.Data.Entity.Infrastructure.DependencyResolution.DefaultProviderFactoryResolver. <GetService>b__0---> eranditeave: ADO.NET teenusepakkuja fikseeritud nimega "MySql.Data.MySqlClient" ei ole registreeritud arvuti ega rakenduse profiilis ega teda ei saa laadida. Lisateabe saamiseks vaata sisemisi erandeid.
InnerException:System.ArgumentException: 找不到请求的 .Net Framework Data Provider。可能没有安装。
Leia probleem:
Selgus, et server ei ole installitud.NET MySQL ühendus, kuna mysql kasutab Alibaba Cloudi pilveandmebaasi, on seal ka mitu serverit, et vältida paigaldamist igale serverile.NET MySQL connector,Selleks määrasin MySQL viited "kohalikuks koopiaks", et saaksin need kopeerida bin kausta ja lisada oma app.config lehele järgmised:
Pärast ülaltoodud konfiguratsiooni lisamist töötab see serveris hästi ja saan rakenduse juurutada ilma MySQL ühendust serverisse paigaldamata, kuid nüüd on mul probleem oma kohalikus arendusmasinas (MySQL connector paigaldatud) ja EF-ühenduse proovimisel saan selle vea:
Erandite info:
System.Data.Entity.Infrastructure.DependencyResolution.DefaultProviderFactoryResolver. <GetService>b__0---> eranditeave: ADO.NET teenusepakkuja fikseeritud nimega "MySql.Data.MySqlClient" ei ole registreeritud arvuti ega rakenduse profiilis ega teda ei saa laadida. Lisateabe saamiseks vaata sisemisi erandeid.
InnerException:System.ArgumentException: 找不到请求的 .Net Framework Data Provider。可能没有安装。
Proovi tegevust:
Kui ma kommenteerin eelpool lisatud XML-i konfiguratsioonis, kaob viga. See võib olla tingitud sellest, et sama draiver on süsteemis installitud ja asub machine.config lehel.
Lõplik lahendus ja miks:
Proovi lisada <remove invariant="MySql.Data.MySqlClient" /> oma veebikonfiguratsiooni. Sinu masinas on sul juba MySql ühendus paigaldatud ja sa muudad oma machine.config'i, lisades selle DbProviderFactoriesis. Kui paned oma web.config'i teise MySQL andmepakkuja, on see nagu prooviksid sama asja kaks korda registreerida.











Eelmine:C# paigutab viiteteegi DLL-id alamkaustadesse sondimise kaudu
Järgmine:ASP.NET Core Link Tracing (3) SkyAPM põhineb Consul dünaamilisel konfiguratsioonil
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com