Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A szerelvények az üzembe helyezés, a verziókövetés, az újrafelhasználás, az aktiválás hatókörének és a biztonsági engedélyek alapvető egységei .NET-alapú alkalmazások esetén. A szerelvény olyan típusok és erőforrások gyűjteménye, amelyek az együttműködésre és a logikai funkcióegységek kialakítására lettek létrehozva. Az összeállítások futtatható (.exe) vagy dinamikus csatolású könyvtár (.dll) fájlok formáját öltik, és a .NET-alkalmazások építőelemei. A közös nyelvi futtatókörnyezet számára biztosítják azokat az információkat, amelyekre szüksége van, hogy a típusok megvalósításával tisztában legyen.
A .NET-ben és a .NET-keretrendszerben létrehozhat egy szerelvényt egy vagy több forráskódfájlból. A .NET-keretrendszerben a szerelvények egy vagy több modult tartalmazhatnak. Így nagyobb projektek is tervezhetők, így több fejlesztő is dolgozhat külön forráskódfájlokon vagy modulokon, amelyek egyetlen szerelvény létrehozásához vannak kombinálva. A modulokkal kapcsolatos további információkért lásd: Többfájlos szerelvény létrehozása.
A szerelvények a következő tulajdonságokkal rendelkeznek:
A szerelvények .exe vagy .dll fájlokként vannak implementálva.
A .NET-keretrendszert célzó kódtárak esetében az összetevőket megoszthatja az alkalmazások között, ha elhelyezi őket a globális szerelvénygyorsítótárba (GAC, azaz Globális Szerelvénygyorsítótár). Mielőtt azokat a GAC-be foglalhatná, erős névvel kell ellátnia az assemblyket. További információ: Erős nevű összeállítások.
A szerelvények csak akkor töltődnek be a memóriába, ha szükség van rájuk. Ha nem használják őket, nincsenek betöltődve. Ezért a szerelvények hatékonyan kezelhetik a nagyobb projektek erőforrásait.
A szerelvényekkel kapcsolatos információkat programozott módon, tükröződés használatával szerezheti be. További információ: Tükröződés (C#) vagy Tükröződés (Visual Basic).
Egy assemblyt csak azért tölthet be, hogy megvizsgálja azt a .NET- és .NET-keretrendszerbeli MetadataLoadContext osztály használatával. MetadataLoadContext a metódusok Assembly.ReflectionOnlyLoad helyébe lép.
Assembly-k a közös nyelvi futtatókörnyezetben
A szerelvények biztosítják a közös nyelvi futtatókörnyezetet azokkal az információkkal, amelyekre ismernie kell a típusmegvalósításokat. A futtatókörnyezetben egy típus nem létezik az összeállítás kontextusán kívül.
A szerelvény a következő információkat határozza meg:
A közös nyelvi futtatókörnyezet által végrehajtott kód. Minden szerelvénynek csak egy belépési pontja lehet:
DllMain,WinMainvagyMain.A biztonsági határ. A szerelvény az az egység, amelynél az engedélyeket kérik és adják meg. A szerelvények biztonsági határaival kapcsolatos további információkért lásd a szerelvény biztonsági szempontjait.
A típushatár. Minden típus identitása tartalmazza annak a szerelvénynek a nevét, amelyben található. Az egyik szerelvény hatókörébe betöltött típus
MyTypenem ugyanaz, mint egy másik szerelvény hatókörébe betöltött típusMyType.A referencia-hatókör határa: A szerelvényjegyzék metaadatai a típusok feloldására és az erőforrás-kérelmek teljesítésére szolgálnak. A jegyzék megadja azokat a típusokat és erőforrásokat, amelyek a szerelvényen kívül elérhetővé tehetők, és számba vesz más szerelvényeket, amelyektől függ. A hordozható végrehajtható (PE) fájlok közös köztes nyelvi (CIL) kódja csak akkor lesz végrehajtva, ha van hozzá társított szerelvényjegyzéke.
A verzió határa. A program-összetevő a legkisebb verziózható egység a közös nyelvi futtatókörnyezetben. Az ugyanabban a szerelvényben lévő összes típus és erőforrás egységként van verziószámozott. A szerelvényjegyzék ismerteti a függő szerelvényekhez megadott verziófüggőségeket. A verziószámozással kapcsolatos további információkért lásd a szerelvény verziószámozását.
Az üzembe helyezési egység: Amikor egy alkalmazás elindul, csak azokat a szerelvényeket kell tartalmaznia, amelyeket az alkalmazás kezdetben hív. Más szerelvények, például a honosítási erőforrásokat vagy a segédprogramosztályokat tartalmazó szerelvények igény szerint lekérhetők. Ez a folyamat lehetővé teszi, hogy az alkalmazások egyszerűek és vékonyak legyenek az első letöltéskor. A szerelvények üzembe helyezésével kapcsolatos további információkért lásd az alkalmazások üzembe helyezését ismertető témakört.
Egy egymás melletti végrehajtási egység: A szerelvény több verziójának futtatásáról további információt a Szerelvények és az egymás melletti végrehajtás című témakörben talál.
Szerelvény létrehozása
A szerelvények lehetnek statikusak vagy dinamikusak. A statikus összeállítások hordozható végrehajtható (PE) fájlokban tárolódnak lemezen. A statikus szerelvények tartalmazhatnak interfészeket, osztályokat és erőforrásokat, például bitképeket, JPEG-fájlokat és más erőforrásfájlokat. Dinamikus szerelvényeket is létrehozhat, amelyek közvetlenül a memóriából futnak, és nem lesznek mentve a lemezre a végrehajtás előtt. A dinamikus szerelvényeket a végrehajtásuk után lemezre mentheti.
A szerelvényeket többféleképpen is létrehozhatja. Használhat fejlesztési eszközöket, például a Visual Studiót, amely .dll vagy .exe fájlokat hozhat létre. A Windows SDK eszközeivel más fejlesztői környezetekből származó modulokkal hozhat létre szerelvényeket. A gyakori nyelvi futtatókörnyezeti API-kat is használhatja, például System.Reflection.Emitdinamikus szerelvények létrehozásához.
Szerelvények összeállítása a Visual Studio használatával, a .NET Core parancssori felület eszközeivel vagy a .NET-keretrendszer parancssori fordítójával. A szerelvények .NET CLI használatával történő kiépítéséről a .NET CLI áttekintésében olvashat bővebben.
Megjegyzés:
Ha szerelvényt szeretne létrehozni a Visual Studióban, a Build menüben válassza a Build lehetőséget.
Szerelvényjegyzék
Minden szerelvény rendelkezik egy szerelvényjegyzékfájllal . A szerelvényjegyzék a tartalomjegyzékhez hasonlóan a következőket tartalmazza:
A szerelvény identitása (neve és verziója).
A szerelvényt alkotó összes többi fájlt leíró fájltábla, például a .exe vagy .dll fájl által létrehozott egyéb szerelvények, bitképfájlok vagy Readme-fájlok.
Szerelvény-referencialista, amely az összes külső függőség, például .dlls vagy más fájlok listája. A szerelvényhivatkozások globális és privát objektumokra is hivatkoznak. A globális objektumok minden más alkalmazás számára elérhetők. A .NET Core-ban a globális objektumok egy adott .NET Core-futtatókörnyezettel vannak összekapcsolva. A .NET-keretrendszerben a globális objektumok a globális szerelvény-gyorsítótárban (GAC) találhatók. System.IO.dll egy példa a GAC-beli összeállításra. A privát objektumoknak a címtár szintjén vagy alatta kell lenniük, amelyben az alkalmazás telepítve van.
A szerelvények tartalommal, verziószámozással és függőségekkel kapcsolatos információkat tartalmaznak. Ezért az őket használó alkalmazásoknak nem kell külső forrásokra, például a Windows-rendszerek regisztrációs adatbázisára támaszkodniuk a megfelelő működéshez. A szerelvények csökkentik .dll ütközéseket, és megbízhatóbbá és egyszerűbbé teszik az alkalmazások üzembe helyezését. Sok esetben egyszerűen telepíthet egy .NET-alapú alkalmazást a fájljai célgépre másolásával. További információ: Szerelvényjegyzék.
Szerelvényre mutató hivatkozás hozzáadása
Ha összeállítást szeretne használni egy alkalmazásban, hozzá kell adnia egy hivatkozást. Amikor egy szerelvényre hivatkozik, a névterek összes akadálymentes típusa, tulajdonsága, metódusa és egyéb tagja úgy lesz elérhető az alkalmazás számára, mintha a kód a forrásfájl részét képezte volna.
Megjegyzés:
A .NET-osztálykönyvtár legtöbb összeállítása automatikusan hivatkozásra kerül. Ha egy rendszerszerelvényre nem hivatkozik automatikusan, adjon hozzá egy hivatkozást az alábbi módok egyikén:
- A .NET és a .NET Core esetében adjon hozzá egy hivatkozást a szerelvényt tartalmazó NuGet-csomagra. Használja a NuGet Package Managert a Visual Studióban, vagy adjon hozzá egy
<PackageReference>elemet a szerelvényhez a .csproj vagy a .vbproj projekthez. - .NET-keretrendszer esetén adjon hozzá egy hivatkozást az assemblyhez a Hivatkozás hozzáadása párbeszédpanelen a Visual Studióban, vagy a
-referenceC# vagy Visual Basic fordítók parancssori opcióval.
A C#-ban ugyanazon szerelvény két verzióját használhatja egyetlen alkalmazásban. További információ: extern alias.
Kapcsolódó tartalom
| Cím | Leírás |
|---|---|
| Szerelvény tartalma | Szerelvényt alkotó elemek. |
| Összeállítási jegyzék | Az összeszerelési jegyzékben található adatok, és azok tárolási módja az összeszerelésekben. |
| Globális szerelvény-gyűjtemény | Hogyan tárolja és használja a GAC a szerelvényeket. |
| Erős névvel ellátott összetevők | Az erősnevű szerelvények jellemzői. |
| Szerelvény biztonsági szempontjai | Hogyan működik a biztonság a szerelvényekkel? |
| Összeállítás verziókezelése | A .NET-keretrendszer verziószámozási szabályzatának áttekintése. |
| Szerelvény elhelyezése | Hol találhatók a szerelvények. |
| Szerelvények és egymás melletti végrehajtás | Használjon egyszerre több futtatókörnyezetet vagy szerelvényt. |
| Dinamikus metódusok és szerelvények kibocsátása | Dinamikus szerelvények létrehozása. |
| Hogyan találja meg a futtatókörnyezet a szerelvényeket | Hogyan oldja fel a .NET-keretrendszer a szerelvényhivatkozásokat futásidőben. |
Referenciák
Lásd még
- .NET-szerelvényfájl formátuma
- Baráti összejövetelek
- Referenciaszerelvények
- Útmutató: Szerelvények betöltése és eltávolítása
- Útmutató: A szerelvény eltávolíthatóságának használata és hibakeresése a .NET Core-ban
- Útmutató: Annak meghatározása, hogy egy fájl szerelvény-e
- Útmutató: Szerelvény tartalmának vizsgálata a MetadataLoadContext használatával