Projektek referenciáinak kezelése
Mielőtt kódot ír egy külső összetevőre vagy csatlakoztatott szolgáltatásra, a projektnek először tartalmaznia kell rá mutató hivatkozást. A hivatkozás lényegében egy projektfájl olyan bejegyzése, amely tartalmazza azokat az információkat, amelyekre a Visual Studio-nak szüksége van az összetevő vagy a szolgáltatás megkereséséhez.
A hivatkozás hozzáadása a használt kód projekttípusától függ:
Ha lát egy Függőségek csomópontot a Megoldáskezelőterületen, a jobb gombbal kattintva a helyi menüből választhatja a Projekthivatkozás hozzáadásalehetőséget.
Jobb gombbal kattintson a projektcsomópontra, és válassza a >projekthivatkozás hozzáadásalehetőséget.
Ha a Megoldáskezelőablakban egy Hivatkozások csomópontot lát, az egér jobb gombjával kattintva a helyi menüben kiválaszthatja a Hivatkozás hozzáadásaopciót.
Vagy kattintson a jobb gombbal a projektcsomópontra, és válassza >hivatkozás hozzáadásalehetőséget.
További információ: Útmutató: Hivatkozások hozzáadása vagy eltávolítása.
A következő típusú összetevőkre és szolgáltatásokra mutató hivatkozást adhat hozzá:
.NET-osztálykódtárak vagy -szerelvények
UWP-alkalmazások
COM-összetevők
Más projektek gyűjteményei vagy osztálykönyvtárai ugyanabban a megoldásban
Megosztott projektek
XML-webszolgáltatások
UWP-alkalmazáshivatkozások
Az Univerzális Windows Platform (UWP) egy közös alkalmazásplatformot biztosít minden Windows rendszerű eszközhöz. Az UWP-alkalmazások létrehozásának módjáról az oktatóanyagból tájékozódhat: Az első univerzális Windows-platformalkalmazás létrehozása a Visual Studióban XAML és C#.
Projekthivatkozások
Az univerzális Windows-platform (UWP) projektek hivatkozásokat hozhatnak létre a megoldás más UWP-projektjeire, illetve Windows 8.1-projektekre vagy bináris fájlokra, feltéve, hogy ezek a projektek nem használnak a Windows 10-es és újabb verziókban elavult API-kat. További információ: lásd a , a Windows Runtime 8-ról UWP-re való áttérés című részt.
Ha a Windows 8.1-projekteket Windows 10-re és újabb verziókra szeretné újratelepíteni, tekintse meg Port, migrálás és frissítés Visual Studio-projektekcímű témakört.
Borravaló
Az új UWP-alkalmazás Windows 10-hez és Windows 11-hez való létrehozásáról és létrehozásáról további információt UWP-verzió kiválasztásacímű témakörben talál.
Bővítmény SDK-hivatkozásai
A Visual Basic, C#, C++ és JavaScript Universal Windows Platform (UWP) alkalmazások hivatkozhatnak a Windows 8.1-et megcélzó bővítmény-SDK-kra, feltéve, hogy ezek a bővítmény-SDK-k nem használják a Windows 10-es és újabb verzióiban elavult API-kat. A Bővítmény SDK szállítói webhelyén megtudhatja, hogy az UWP-alkalmazások hivatkozhatnak-e rá.
Ha úgy ítéli meg, hogy az alkalmazás által hivatkozott bővítmény SDK nem támogatott, akkor a következő lépéseket kell végrehajtania:
Tekintse meg a hibát okozó projekt nevét. A projekt céljait tartalmazó platform zárójelben jelenik meg a projekt neve mellett. Például MyProjectName (Windows 8.1) azt jelenti, hogy a projekt MyProjectName a Windows 8.1 platformverziót célozza.
Nyissa meg a nem támogatott Bővítmény SDK-t birtokoló gyártó webhelyét, és telepítse a Bővítmény SDK verzióját olyan függőségekkel, amelyek kompatibilisek a projekt által megcélzott platform verziójával.
Jegyzet
Egyik módja annak megállapítására, hogy egy bővítmény SDK függ-e más bővítmény-SDK-któl, az, ha megvizsgáljuk a Reference Manager-t. Indítsa újra a Visual Studiót, hozzon létre egy új C# UWP-alkalmazásprojektet, majd kattintson a jobb gombbal a projektre, és válassza a Hivatkozás hozzáadásalehetőséget. Lépjen a Windows lapra, majd a Bővítmények alfülre, és válassza a Bővítmény SDK-t. Tekintsen a Reference Managerjobb oldali paneljára. Ha függőségekkel rendelkezik, ott lesznek felsorolva.
Fontos
Ha a projekt kifejezetten a Windows 10-et célozza, és az előző lépésben telepített Bővítmény SDK függ a Microsoft Visual C++ futtatókörnyezeti csomagtól, a Windows 10-zel kompatibilis Microsoft Visual C++ futtatókörnyezeti csomag verziója 14.0-s verziójú, és a Visual Studióval van telepítve.
Ha az előző lépésben telepített Bővítmény SDK más bővítmény-SDK-któl is függ, keresse fel a függőségeket tulajdonos szállítók webhelyeit, majd telepítse a függőségek azon verzióit, amelyek kompatibilisek a projekt által megcélzott platform verziójával.
Indítsa újra a Visual Studiót, és nyissa meg az alkalmazást.
Kattintson a jobb gombbal a Hivatkozás vagy Függőségek csomópontra a hibát okozó projektben, majd válassza a Hivatkozás hozzáadásalehetőséget.
Jelölje be a Windows lapot, majd a Bővítmények altáblát, törölje a jelölést a régi bővítmény-SDK-k jelölőnégyzetei közül, majd jelölje be az új bővítmény-SDK-k jelölőnégyzeteit. Válassza OKlehetőséget.
Referencia hozzáadása a tervezéskor
Amikor egy szerelvényre hivatkozik a projektben, a Visual Studio a következő helyeken keresi a szerelvényt:
Az aktuális projektkönyvtár. (Ezeket a szerelvényeket a Tallózás lapon találja.)
Más projektkönyvtárak ugyanabban a megoldásban. (Ezeket a szerelvényeket a Projektek lapon találja.)
Jegyzet
- Minden projekt tartalmaz egy hallgatólagos hivatkozást mscorlib.
- Minden projekt tartalmaz egy hallgatólagos hivatkozást
System.Core
, még akkor is, haSystem.Core
el van távolítva a hivatkozások listájából. - A Visual Basic-projektek a Microsoft.VisualBasichallgatólagos hivatkozását tartalmazzák.
Megosztott összetevőkre mutató hivatkozások futásidőben
Futásidőben az összetevőknek a projekt kimeneti útvonalában vagy a globális szerelvénygyorsítótárban (GAC) kell lenniük. Ha a projekt olyan objektumra mutató hivatkozást tartalmaz, amely nem ezen helyek egyikén található, a projekt létrehozásakor át kell másolnia a hivatkozást a projekt kimeneti útvonalára. A CopyLocal tulajdonság azt jelzi, hogy ezt a másolatot el kell-e készíteni. Ha az érték Igaz, a hivatkozás a projekt létrehozásakor a projektkönyvtárba lesz másolva. Ha az érték Hamis, a hivatkozás nem kerül másolásra.
Ha olyan alkalmazást helyez üzembe, amely a GAC-ban regisztrált egyéni összetevőre mutató hivatkozást tartalmaz, az összetevő nem lesz üzembe helyezve az alkalmazással, a CopyLocal beállítástól függetlenül. A Visual Studio korábbi verzióiban beállíthatja a CopyLocal tulajdonságot egy hivatkozásra, hogy meggyőződjön arról, hogy a szerelvény üzembe lett helyezve. Most manuálisan kell hozzáadnia a szerelvényt a \Bin mappához. Ez a művelet minden egyéni kódot megvizsgál, ezáltal csökkenti annak kockázatát, hogy olyan egyéni kódot tegyen közzé, amelyet nem ismer.
Alapértelmezés szerint a CopyLocal tulajdonság értéke Hamis, ha a szerelvény vagy összetevő a globális szerelvény-gyorsítótárban található, vagy keretrendszerösszetevő. Ellenkező esetben az érték a True értékre van állítva. A projektprojekthivatkozások mindig igazértékre vannak beállítva.
Hivatkozás egy olyan projektre vagy szerelvényre, amely a .NET egy másik verzióját célozza
Létrehozhat olyan alkalmazásokat, amelyek a .NET egy másik verzióját megcélzott projektekre vagy szerelvényekre hivatkoznak. Létrehozhat például egy olyan alkalmazást, amely a .NET Framework 4.6-ot célozza, amely egy .NET-keretrendszer 4.5-ös szerelvényére hivatkozik. Ha olyan projektet hoz létre, amely a .NET egy korábbi verzióját célozza meg, az adott projektben nem állíthat be olyan projektet vagy szerelvényt, amely egy újabb verziót céloz meg.
További információ: Keretrendszer célzásának áttekintése.
Projektek közötti referenciák
A projekt-közti hivatkozások azok a hivatkozások, amelyek olyan projektekre mutatnak, amelyek összeállításokat tartalmaznak; projekt hivatkozásokat a Hivatkozáskezelő párbeszédpanel Projektek fülén adhat hozzá. A Visual Studio meg tudja találni a szerelvényt, ha megadja a projekt elérési útját.
Ha olyan projektje van, amely szerelvényt hoz létre, hivatkoznia kell a projektre, és nem kell fájlhivatkozást használnia. A projekt–projekt referenciának az az előnye, hogy függőséget hoz létre a buildelési rendszerben lévő projektek között. A függő projekt akkor jön létre, ha a hivatkozási projekt legutóbbi létrehozása óta módosult. A fájlhivatkozások nem hoznak létre buildfüggőséget, így a függő projekt létrehozása nélkül is felépíthető a hivatkozó projekt, és a hivatkozás elavulttá válhat. (Vagyis a projekt hivatkozhat a projekt egy korábban létrehozott verziójára.) Ez azt eredményezheti, hogy egyetlen DLL több verziójára van szükség a tároló könyvtárban, ami nem lehetséges. Ha ez az ütközés bekövetkezik, megjelenik egy üzenet, például "Figyelmeztetés: a projekt "projekt" fájljának függősége nem másolható a futtató könyvtárba, mert felülírná a "fájl" hivatkozást. További információ: Hibás hivatkozások hibaelhárítása és Útmutató: Projektfüggőségek létrehozása és eltávolítása.
Jegyzet
Ha az egyik projekt .NET-keretrendszerének célverziója 4.5-ös, a másik projekt célverziója pedig a 2-es, a 3-as, a 3.5-ös vagy a 4.0-s verzió, akkor fájlreferencia jön létre a projekt-to-projekt referencia helyett.
Megosztott projekthivatkozások
A legtöbb más projekttípustól eltérően egy megosztott projekt nem rendelkezik bináris kimenettel. Ehelyett a kód minden olyan projektbe lesz lefordítva, amely hivatkozik rá. A megosztott projektek segítségével számos különböző alkalmazásprojekt által hivatkozott közös kódot írhat. A kód fordítása minden hivatkozási projekt részeként történik, és fordítói irányelveket is tartalmazhat a platformspecifikus funkciók közös kódbázisba való beépítéséhez. A Referenciakezelő párbeszédpanel Megosztott projektek lapján adjon hozzá hivatkozást egy megosztott projekthez.
Fájlhivatkozások
A fájlhivatkozások közvetlen hivatkozások a Visual Studio-projekt környezetén kívüli assembly-kre. Ezeket a Hivatkozáskezelő párbeszédpanel Tallózás lapján hozhatja létre. Akkor használjon fájlhivatkozást, ha csak egy szerelvénysel vagy összetevővel rendelkezik, és nem az azt kimenetként létrehozó projekttel.