Pelatihan
Modul
Assemble for a project in Dynamics 365 Business Central - Training
Learn how to assemble for a project in Dynamics 365 Business Central.
Browser ini sudah tidak didukung.
Mutakhirkan ke Microsoft Edge untuk memanfaatkan fitur, pembaruan keamanan, dan dukungan teknis terkini.
Rakitan membentuk unit dasar penyebaran, kontrol versi, penggunaan kembali, pelingkupan aktivasi, dan izin keamanan untuk aplikasi berbasis .NET. Assembly adalah kumpulan jenis dan sumber daya yang dibangun untuk bekerja sama dan membentuk unit fungsi logis. Rakitan mengambil bentuk file yang dapat dieksekusi (.exe) atau pustaka tautan dinamis (.dll), dan merupakan blok penyusun aplikasi .NET. Mereka menyediakan runtime bahasa umum dengan informasi yang perlu diperhatikan tentang implementasi jenis.
Di .NET dan .NET Framework, Anda dapat membuat assembly dari satu atau beberapa file kode sumber. Dalam .NET Framework, rakitan dapat berisi satu atau lebih modul. Hal ini memungkinkan proyek yang lebih besar untuk direncanakan sehingga beberapa pengembang dapat bekerja pada file kode sumber atau modul terpisah yang dikombinasikan untuk membuat assembly tunggal. Untuk mengetahui informasi selengkapnya tentang modul, lihat Cara: Membuat assembly multifile.
Rakitan memiliki properti berikut:
Rakitan diimplementasikan sebagai file .exe atau .dll.
Untuk pustaka yang menargetkan .NET Framework, Anda dapat berbagi rakitan antar aplikasi dengan menempatkannya di cache assembly global (GAC). Anda harus memiliki perakitan bernama kuat sebelum Anda dapat memasukkannya ke dalam GAC. Untuk mengetahui informasi selengkapnya, lihat Rakitan bernama kuat.
Assembly hanya dimuat ke dalam memori jika diperlukan. Jika tidak digunakan, assembly tidak dimuat. Artinya, rakitan dapat menjadi cara yang efisien untuk mengelola sumber daya dalam proyek yang lebih besar.
Anda dapat secara terprogram mendapatkan informasi tentang assembly dengan menggunakan refleksi. Untuk mengetahui informasi selengkapnya, lihat Reflection (C#) atau Reflection (Visual Basic).
Anda dapat memuat assembly hanya untuk memeriksanya dengan menggunakan MetadataLoadContext kelas di .NET dan .NET Framework. MetadataLoadContext menggantikan metode Assembly.ReflectionOnlyLoad.
Assembly menyediakan runtime bahasa umum dengan informasi yang dibutuhkan untuk mengetahui jenis implementasi. Untuk runtime, jenis tidak ada di luar konteks perakitan.
Perakitan menentukan informasi berikut:
Kode yang dijalankan runtime bahasa umum. Perhatikan bahwa setiap assembly hanya dapat memiliki satu titik masuk: DllMain
, WinMain
, atau Main
.
Batas keamanan. Assembly adalah unit di mana izin diminta dan diberikan. Untuk mengetahui informasi selengkapnya tentang batas keamanan dalam assembly, lihat Pertimbangan keamanan assembly.
Batas jenis. Identitas setiap jenis mencakup nama assembly tempat ia berada. Jenis yang disebut MyType
yang dimuat dalam cakupan satu assembly tidak sama dengan jenis yang disebut MyType
yang dimuat dalam cakupan assembly lain.
Batas cakupan referensi. Manifes assembly memiliki metadata yang digunakan untuk menyelesaikan jenis dan memenuhi permintaan sumber daya. Manifes menentukan jenis dan sumber daya untuk mengekspos di luar assembly, dan menyebutkan assembly lain yang menjadi dasarnya. Kode bahasa perantara Microsoft (MSIL) dalam file portabel yang dapat dieksekusi (PE) tidak akan dijalankan kecuali memiliki manifes assembly terkait.
Batas versi. Assembly adalah unit dengan versi terkecil dalam runtime bahasa umum. Semua jenis dan sumber daya dalam assembly yang sama dijadikan versi sebagai unit. Manifes assembly menjelaskan dependensi versi yang Anda tentukan untuk rakitan dependen apa pun. Untuk mengetahui informasi selengkapnya tentang penerapan versi, lihat Versi gambar.
Unit penyebaran. Ketika aplikasi dimulai, hanya assembly yang awalnya dipanggil aplikasi lah yang harus ada. Assembly lainnya seperti assembly yang berisi sumber daya pelokalan atau kelas utilitas dapat diambil sesuai permintaan. Hal ini memungkinkan aplikasi berukuran sederhana dan ringkas saat pertama kali diunduh. Untuk informasi selengkapnya tentang menyebarkan rakitan, lihat Menyebarkan aplikasi.
Unit eksekusi sisi ke sisi. Untuk mengetahui informasi selengkapnya tentang menjalankan beberapa versi assembly, lihat Assembly dan eksekusi sisi ke sisi.
Assembly dapat bersifat statis atau dinamis. Rakitan statis disimpan pada disk dalam file portabel yang dapat dieksekusi (PE). Assembly statis dapat mencakup antarmuka, kelas, dan sumber daya seperti bitmap, file JPEG, dan file sumber daya lainnya. Anda juga dapat membuat assembly dinamis, yang dijalankan langsung dari memori dan tidak disimpan ke disk sebelum eksekusi. Anda dapat menyimpan assembly dinamis ke disk setelah dieksekusi.
Ada beberapa cara untuk membuat mesin virtual. Anda dapat menggunakan alat pengembangan, seperti Visual Studio, yang dapat membuat file .dll atau .exe. Anda dapat menggunakan alat di SDK Windows untuk membuat assembly dengan modul dari lingkungan pengembangan lainnya. Anda juga dapat menggunakan API runtime bahasa umum, seperti System.Reflection.Emit, untuk membuat assembly dinamis.
Kompilasi assembly dengan membangunnya di Visual Studio, membangunnya dengan alat antarmuka baris perintah .NET Core, atau membangun rakitan .NET Framework dengan penyusun baris perintah. Untuk informasi selengkapnya tentang membangun rakitan menggunakan .NET CLI, lihat gambaran umum .NET CLI.
Catatan
Untuk membuat assembly di Visual Studio, pada menu Bangun, pilih Bangun.
Setiap assembly memiliki file manifes assembly. Mirip dengan daftar isi, manifes assembly berisi:
Identitas assembly (nama dan versinya).
Tabel file yang menjelaskan semua file lain yang membentuk assembly, seperti assembly lain yang Anda buat yang diandalkan file .exe atau .dll, file bitmap, atau file Readme.
Daftar referensi assembly yang merupakan daftar semua dependensi eksternal, seperti .dllatau file lainnya. Referensi perakitan berisi referensi ke objek global dan privat. Objek global tersedia untuk semua aplikasi lainnya. Di .NET Core, objek global digabungkan dengan runtime .NET Core tertentu. Di .NET Framework, objek global berada di cache assembly global (GAC). System.IO.dll adalah contoh assembly di GAC. Objek privat harus berada di tingkat direktori pada atau di bawah direktori tempat aplikasi Anda diinstal.
Karena assembly berisi informasi tentang konten, pembuatan versi, dan dependensi, aplikasi yang menggunakannya tidak perlu bergantung pada sumber eksternal, seperti registri pada sistem Windows, untuk berfungsi dengan baik. Assembly mengurangi konflik .dll dan membuat aplikasi Anda lebih andal dan lebih mudah disebarkan. Dalam banyak kasus, Anda dapat menginstal aplikasi berbasis .NET hanya dengan menyalin filenya ke komputer target. Untuk informasi selengkapnya, lihat Manifes assembly.
Untuk menggunakan assembly di suatu aplikasi, Anda harus menambahkan referensi. Setelah assembly direferensikan, semua jenis, properti, metode, dan anggota lain yang dapat diakses dari ruang namanya tersedia untuk aplikasi Anda seolah kode tersebut adalah bagian dari file sumber Anda.
Catatan
Sebagian besar assembly dari .NET Class Library direferensikan secara otomatis. Jika assembly sistem tidak direferensikan secara otomatis, tambahkan referensi dengan salah satu cara berikut:
-reference
opsi baris perintah untuk penyusun C# atau Visual Basic.Di C #, Anda dapat menggunakan dua versi assembly yang sama dalam satu aplikasi. Untuk mengetahui informasi selengkapnya, lihat alias ekstern.
Judul | Deskripsi |
---|---|
Konten assembly | Elemen yang membentuk assembly. |
Manifes assembly | Data dalam manifes assembly, dan cara data disimpan dalam assembly. |
Cache assembly global | Cara GAC menyimpan dan menggunakan assembly. |
Assembly bernama kuat | Karakteristik assembly bernama kuat. |
Pertimbangan keamanan assembly | Cara kerja keamanan dengan assembly. |
Penerapan versi assembly | Gambaran umum kebijakan pembuatan versi .NET Framework. |
Penempatan assembly | Tempat menemukan assembly. |
Assembly dan eksekusi sisi ke sisi | Gunakan beberapa versi runtime atau assembly secara bersamaan. |
Memancarkan metode dan assembly dinamis | Cara membuat assembly dinamis. |
Cara runtime menemukan assembly | Cara .NET Framework menyelesaikan referensi assembly saat run time. |
Pelatihan
Modul
Assemble for a project in Dynamics 365 Business Central - Training
Learn how to assemble for a project in Dynamics 365 Business Central.
Dokumentasi
Mengatasi kesalahan untuk referensi rakitan yang salah atau hilang - C# reference
Kesalahan dan peringatan kompilator ini menunjukkan referensi rakitan yang salah atau hilang. Kesalahan ini menyebabkan definisi yang hilang atau salah untuk jenis dalam program Anda.
Kesalahan Pengompilasi CS0518 - C# reference
Kesalahan Pengompilasi CS0518
Pelajari tentang aturan gaya analisis kode IDE0005.