Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Referenciakezelő párbeszédpanelen felveheti és kezelheti az Ön, a Microsoft vagy egy másik vállalat által kifejlesztett összetevőkre mutató hivatkozásokat. Univerzális Windows-alkalmazás fejlesztésekor a projekt automatikusan hivatkozik az összes megfelelő Windows SDK-DLL-re. .NET-projekt létrehozásakor a projekt automatikusan hivatkozik a szükséges összetevőkre, például a .NET SDK-ra, de a funkciók hozzáadásakor hivatkozásokat kell hozzáadnia. Egyes .NET API-k olyan összetevőkben érhetők el, amelyeket manuálisan kell hozzáadnia. A COM-összetevőkre vagy egyéni összetevőkre mutató hivatkozásokat manuálisan kell hozzáadni.
Ha egy NuGet-csomag elérhető a hivatkozott kódtárhoz, használja a NuGet-csomagkezelőt. Lásd: NuGet-csomag telepítése és használata.
Referenciakezelő párbeszédpanel
A Referenciakezelő párbeszédpanel a projekt típusától függően különböző kategóriákat jelenít meg a bal oldalon:
összeállítások, keretrendszer és bővítmények alcsoportokkal (csak .NET-keretrendszer)
COM- felsorolja a hivatkozáshoz elérhető összes COM-összetevőt
Windows, Core és Extensions alcsoportokkal. A Windows SDK-ban vagy a bővítmény SDK-kban található hivatkozásokat az Object Browserhasználatával ismerheti meg.
TallózásLegutóbbi alcsoporttal
Jegyzet
C++ projektek fejlesztése esetén előfordulhat, hogy nem jelenik meg Tallózás a Referenciakezelő párbeszédpanelen.
Hivatkozás hozzáadása
- A Megoldáskezelőbenkattintson a jobb gombbal a Hivatkozások vagy Függőségek csomópontra, majd válassza a Projekthivatkozásihozzáadása, Megosztott projekthivatkozás hozzáadása, vagy COM-referencia a helyi menüből. (Kattintson a jobb gombbal a projektcsomópontra, és válassza a hozzáadása a kiugró menüből a lehetőségek közül való választáshoz.)
Reference Manager megnyílik, és csoportonként listázza az elérhető hivatkozásokat.
Jelöljön ki egy hozzáadni kívánt hivatkozást, majd válassza OKlehetőséget.
Jegyzet
Ha nem látja a keresett hivatkozást, válassza a Tallózás lehetőséget a hivatkozás megkereséséhez. (Ha C++-projekteket fejleszt, előfordulhat, hogy nem jelenik meg tallózási lehetőség.)
Szerelvények lap (csak.NET-keretrendszer)
Jegyzet
A Szerelvények lap nem érhető el a .NET Core- vagy .NET 5-ös vagy újabb verziót megcélzott projektekhez. Válassza a Tallózás lehetőséget egy szerelvény megkereséséhez a fájlrendszerben, és adja hozzá hivatkozásként. Ha meg szeretné tekinteni egy projekt hivatkozott összeállításait, bontsa ki a projekt Függőségek csomópontot. A Függőségek csomóponton a jobb gombbal kattintva hozzáadhat vagy eltávolíthat projekthivatkozásokat, megtekintheti vagy eltávolíthatja a szerelvényeket a Szerelvények csomóponton, vagy megnyithatja a NuGet-csomagböngészőt a NuGet-csomagok kezeléséhez. Tekintse meg Csomagok telepítése és kezelése a Visual Studióban a NuGet Package Manager használatával a NuGet dokumentációjában.
A .NET-keretrendszer-projektek esetében a Szerelvények lap felsorolja a hivatkozáshoz elérhető .NET-szerelvényeket. A Szerelvények lap nem sorol fel szerelvényeket a globális szerelvény-gyorsítótárból (GAC), mert a GAC-beli szerelvények a futásidejű környezet részét képezik. Ha olyan alkalmazást helyez üzembe vagy másol, amely a GAC-ban regisztrált szerelvényre mutató hivatkozást tartalmaz, a rendszer nem telepíti vagy másolja a szerelvényt az alkalmazással, függetlenül attól, hogy Helyi másolása beállítást. További információ: Projektek hivatkozásainak kezelése.
Ha manuálisan ad hozzá hivatkozást bármelyik EnvDTE névtérhez (EnvDTE, EnvDTE80, EnvDTE90, EnvDTE90avagy EnvDTE100), állítsa a Beágyazás interop típusok tulajdonságot Hamis értékre a Tulajdonságok ablakban. Bizonyos EnvDTE-tulajdonságok beágyazásával kapcsolatos problémák miatt a tulajdonság True értékre állítása néha buildelési problémákat okozhat.
Minden asztali projekt tartalmaz egy implicit hivatkozást mscorlib. A Visual Basic-projektek implicit hivatkozást tartalmaznak a Microsoft.VisualBasic. Minden projekt tartalmaz egy implicit hivatkozást System.Core, még akkor is, ha az el lett távolítva a hivatkozások listájából.
A Szerelvények lap két altevékenységből áll:
keretrendszer felsorolja a célzott keretrendszert alkotó összes szerelvényt.
Azoknál a projekteknél, amelyek nem a .NET Core-t vagy az univerzális Windows platformot célozzák meg, a Keretrendszer lap felsorolja a megcélzott keretrendszerből származó összetevőket. A felhasználónak hozzá kell adnia az alkalmazás által igényelt hivatkozásokat.
Az univerzális Windows-projektek alapértelmezés szerint a célzott keretrendszer összes szerelvényére hivatkoznak. Felügyelt projektekben a Megoldás kezelő mappája alatti írásvédett csomópont jelzi a teljes keretrendszerre mutató hivatkozást. Ennek megfelelően a Keretrendszer lap nem sorolja fel a keretrendszer egyik szerelvényét sem, ehelyett a következő üzenetet jeleníti meg: "Az összes keretrendszer-szerelvényre már hivatkozunk. Kérjük, használja az Object Browsert a keretrendszer hivatkozásainak megismeréséhez."
bővítmények felsorolja azokat a szerelvényeket, amelyeket az összetevők és vezérlők külső gyártói fejlesztettek ki a célzott keretrendszer kiterjesztése érdekében. A felhasználói alkalmazás céljától függően szükség lehet ezekre a szerelvényekre.
Kiterjesztések a következő helyeken regisztrált szerelvények felsorolásával vannak feltöltve:
32 bites gép:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
64 bites gép:
HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
És a [Target Framework Identifier] régebbi verziói
Ha például egy projekt a .NET-keretrendszer 4-et célozza meg egy 32 bites gépen, a kiterjesztések az alábbi gyűjteményeket veszik számba: \Microsoft.NETFramework\v4.0\AssemblyFoldersEx, \Microsoft.NETFramework\v3.5\AssemblyFoldersEx, \Microsoft.NETFramework\v3.0\AssemblyFoldersEx, és \Microsoft.NETFramework\v2.0\AssemblyFoldersEx.
Előfordulhat, hogy a listában néhány összetevő nem jelenik meg a projekt keretrendszerverziójától függően. Ez a helyzet a következő feltételek mellett fordulhat elő:
A legutóbbi keretrendszerverziót használó összetevők nem kompatibilisek egy korábbi verziót célzó projekttel.
A projekt cél-keretrendszerverziójának módosításáról további információt a Keretrendszer célzási áttekintésébentalál.
A .NET-keretrendszer régebbi verzióját használó összetevők nem kompatibilisek egy újabb .NET-keretrendszert célzó projekttel.
A .NET-keretrendszer verziói közötti verziókompatibilitásról további információt Verziókompatibilitásicímű témakörben talál.
Ne adjon hozzá fájlhivatkozásokat egy másik projekt kimeneteihez ugyanabban a megoldásban, mert ez fordítási hibákat okozhat. Ehelyett a Hivatkozás hozzáadása párbeszédpanelben a Projektek lapot használja projekt-ről-projektre hivatkozások létrehozásához. Ez a gyakorlat megkönnyíti a csapatfejlesztést azáltal, hogy lehetővé teszi a projektekben létrehozott osztálykódtárak jobb felügyeletét. További információ: Hibás hivatkozások hibaelhárítása.
Jegyzet
Projekthivatkozás helyett fájlhivatkozás jön létre, ha az egyik projekt célkeret-verziója a .NET-keretrendszer 4.5-ös vagy újabb verziója, a másik projekt célverziója pedig a .NET Framework 2, 3, 3.5 vagy 4.0. A .NET-ről, a .NET-keretrendszerről és a .NET Core-ról további információt A .NET (és a .NET Core)című témakörben talál.
Szerelvény megjelenítése a Hivatkozás hozzáadása párbeszédpanelen
Helyezze át vagy másolja az összeállítást az alábbi helyek egyikére:
Az aktuális projektkönyvtár. (Ezeket az összeállításokat a Tallózás lapon találja.)
Más projektkönyvtárak ugyanazon megoldáson belül. (Ezeket a szerelvényeket a Projektek lapon találja.)
-vagy-
Állítson be egy beállításkulcsot, amely meghatározza a megjelenítendő szerelvények helyét:
32 bites operációs rendszer esetén adja hozzá az alábbi beállításkulcsok egyikét.
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework\<VersionMinimum>\AssemblyFoldersEx\MyAssemblies]@="<AssemblyLocation>"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\<VersionMinimum>\AssemblyFoldersEx\MyAssemblies]@="<AssemblyLocation>"
64 bites operációs rendszer esetén adja hozzá az alábbi beállításkulcsok egyikét egy 32 bites beállításjegyzék-halmazban.
[HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\<VersionMinimum>\AssemblyFoldersEx\MyAssemblies]@="<AssemblyLocation>"[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\<VersionMinimum>\AssemblyFoldersEx\MyAssemblies]@="<AssemblyLocation>"
<VersionMinimum> a legalacsonyabb érvényes keretrendszerverzió. Ha <VersionMinimum> 3.0-s verziójú, a .NET-keretrendszer 3.0-s vagy újabb verzióját megcélzó projektekre AssemblyFoldersEx megadott mappák érvényesek.
<AssemblyLocation> azon összeállítások könyvtára, amelyeket meg szeretne jeleníteni a Hivatkozás hozzáadása párbeszédpanelen, például C:\MyAssemblies.
A beállításkulcs
HKEY_LOCAL_MACHINEcsomópont alatt való létrehozásával minden felhasználó megtekintheti a szerelvényeket a megadott helyen, a Hivatkozás hozzáadása párbeszédpanelen. A beállításkulcs létrehozása aHKEY_CURRENT_USERcsomópont alatt csak az aktuális felhasználó beállítására van hatással.Nyissa meg ismét a Hivatkozás hozzáadása párbeszédpanelt. A szerelvényeknek meg kell jelennie a .NET lapon. Ha nem, győződjön meg arról, hogy a szerelvények a megadott AssemblyLocation könyvtárban találhatók, indítsa újra a Visual Studiót, és próbálkozzon újra.
Projektek fül
A Projektek lapon az aktuális megoldás összes kompatibilis projektje szerepel a Megoldás altáblában.
Egy projekt hivatkozhat egy másik projektre, amely egy másik keretrendszerverziót céloz meg. Létrehozhat például egy projektet, amely a .NET 8.0-t célozza, de a .NET 6.0-hoz készült szerelvényre hivatkozik. A .NET 6.0-projekt azonban nem hivatkozhat .NET-keretrendszer 8.0-s projektre. További információ: Keretrendszer célzásának áttekintése.
Megosztott projektek lap
A Referenciakezelő párbeszédpanel Megosztott projektek lapján adjon hozzá hivatkozást egy megosztott projekthez. A megosztott projektek segítségével számos különböző alkalmazásprojekt által hivatkozott közös kódot írhat.
Univerzális Windows lap
Az Univerzális Windows lap felsorolja az összes olyan SDK-t, amely azon platformokra vonatkozik, amelyeken a Windows operációs rendszerek futnak. Ezen a lapon két alcsoport található: Core és Bővítmények.
Alapvető alcsoport
Az univerzális Windows-alkalmazásprojektek alapértelmezés szerint hivatkoznak az Univerzális Windows SDK-ra. Ennek megfelelően a Reference ManagerCore alcsoportja nem veszi számba az univerzális Windows SDK-ból származó szerelvényeket.
Bővítmények alcsoportja
Bővítmények felsorolja a célzott Windows-platformot kiterjesztő felhasználói SDK-kat.
Az SDK olyan fájlok gyűjteménye, amelyeket a Visual Studio egyetlen összetevőként kezel. A Bővítmények lapon a Referenciakezelő párbeszédpanel meghívására szolgáló projektre vonatkozó SDK-k egyetlen bejegyzésként jelennek meg. Amikor hozzáadja egy projekthez, a Visual Studio az összes SDK-tartalmat felhasználja, így a felhasználónak nem kell további műveleteket végrehajtania az SDK tartalmának az IntelliSense, az eszközkészlet, a tervezők, az Object Browser, a buildelés, az üzembe helyezés, a hibakeresés és a csomagolás használatához.
Az SDK Bővítmények lapon való megjelenítéséről további információt a Szoftverfejlesztői készlet létrehozásacímű témakörben talál.
Jegyzet
Ha egy projekt egy másik SDK-tól függő SDK-ra hivatkozik, a Visual Studio csak akkor használja a második SDK-t, ha manuálisan hozzáad egy hivatkozást a második SDK-hoz. Amikor kiválaszt egy SDK-t a Bővítmények lapon, a Referenciakezelő párbeszédpanel segít azonosítani az SDK-függőségeket a részletek panelen található függőségek listázásával.
Ha egy projekttípus nem támogatja a bővítményeket, ez a lap nem jelenik meg a Referenciakezelő párbeszédpanelen.
COM fül
A COM lap felsorolja a hivatkozáshoz elérhető összes COM-összetevőt. Ha belső jegyzékfájlt tartalmazó regisztrált COM DLL-hez szeretne hozzáadni egy hivatkozást, először törölje a DLL regisztrációját. Ellenkező esetben a Visual Studio nem natív DLL-ként, hanem ActiveX-vezérlőként adja hozzá a szerelvényhivatkozást.
Ha egy projekttípus nem támogatja a COM-t, a lap nem jelenik meg a Referenciakezelő párbeszédpanelen.
Böngészés
A Tallózás gombra kattintva kereshet egy összetevőt vagy szerelvényt a fájlrendszerben.
A projektek hivatkozhatnak egy olyan összetevőre, amely egy másik keretrendszerverziót céloz meg. Létrehozhat például egy alkalmazást, amely a .NET-keretrendszer 4.7.2-et célozza, de hivatkozik egy .NET-keretrendszer 4-et célzó összetevőre. További információ: Keretrendszer célzásának áttekintése.
Ne adjon fájlhivatkozásokat egy másik projekt kimeneteihez ugyanabban a megoldásban, mert ez a taktika fordítási hibákat okozhat. Ehelyett a Referenciakezelő párbeszédpanel Megoldás lapján hozhat létre projektről projektre mutató hivatkozásokat. Ez megkönnyíti a csapatfejlesztést azáltal, hogy lehetővé teszi a projektekben létrehozott osztálykódtárak jobb felügyeletét. További információ: Hibás hivatkozások hibaelhárítása.
Nem kereshet egy SDK-t, és nem adhatja hozzá a projekthez. Egy fájlt (például egy assembly-t vagy .winmd) tallózhat, és hozzáadhatja a projekthez.
WinMD-fájlhivatkozások használatakor a várt elrendezés az, hogy a <FileName>.winmd, <FileName>.dllés <FileName>.pri fájlok mind egymás mellett vannak elhelyezve. Ha a következő forgatókönyvekben hivatkozik egy WinMD-re, a rendszer hiányos fájlkészletet másol a projekt kimeneti könyvtárába, és ennek következtében buildelési és futtatókörnyezeti hibák lépnek fel.
natív összetevő: egy natív projekt létrehoz egy WinMD-t minden különálló névtérkészlethez és egy DLL-hez, amely az implementációból áll. A WinMD-eknek eltérő neveik vannak. A natív összetevőfájlra való hivatkozáskor az MSBuild nem ismeri fel, hogy a eltérő nevű WinMD-k egyetlen összetevőt alkotnak. Így csak az azonos nevű <FileName>.dll és <FileName>.winmd lesz másolva, és futásidejű hibák lépnek fel. A probléma megoldásához hozzon létre egy bővítmény SDK-t. További információ: Szoftverfejlesztői készlet létrehozása.
Fogyasztói vezérlők: egy XAML-vezérlő legalább egy <FileName>.winmd, <FileName>.dll, <FileName>.pri, <XamlName>.xamlés egy <ImageName>.jpgáll. A projekt létrehozásakor a fájlhivatkozáshoz társított erőforrásfájlok nem lesznek átmásolva a projekt kimeneti könyvtárába, és csak <FileName>.winmd, <FileName>.dll és <FileName>.pri lesznek másolva. A rendszer egy buildelési hibát naplóz, amely azt jelzi, hogy az XamlName <>.xaml és <ImageName>.jpg erőforrások hiányoznak. A sikeresség érdekében másolja manuálisan ezeket az erőforrásfájlokat a projekt kimeneti könyvtárába a buildeléshez és hibakereséshez/futtatókörnyezethez. A probléma megoldásához hozzon létre egy bővítmény SDK-t a Szoftverfejlesztői készlet létrehozása lépéseit követve, vagy szerkessze a projektfájlt a következő tulajdonság hozzáadásához:
<PropertyGroup> <GenerateLibraryOutput>True</GenerateLibraryOutput> </PropertyGroup>Jegyzet
Ha hozzáadja a tulajdonságot, előfordulhat, hogy a build lassabban fut.
Friss
Szerelvények, COM, Windowsés Tallózás mindegyike támogatja a Legutóbbi lapot, amely felsorolja a projekthez nemrég hozzáadott összetevőket.
Kereső
A Referenciakezelő párbeszédpanel keresősávja a fókuszban lévő lapon működik. Ha például beírja a "System" szót a keresősávba, miközben a Megoldás lap van fókuszban, a keresés nem ad eredményt, hacsak a megoldás nem tartalmaz egy "System" nevet viselő projektnév részeként.
Hivatkozás eltávolítása
A Visual Studióban SDK-stílusú projektek nem használt hivatkozásait a Nem használt hivatkozás eltávolítása menüelem használatával távolíthatja el.
További információ: Nem használt hivatkozások eltávolítása.