Untuk sebagian besar, Anda hanya mengambil apa pun yang ditetapkan Visual Studio untuk Anda sebagai default ... Saya mengacu pada properti BuildAction untuk setiap file yang dipilih di Solution Explorer. Ada sejumlah opsi dan sulit untuk mengetahui apa yang akan dilakukan oleh masing-masing dari mereka.
AdditionalFiles
? Saya melihatnya di VS 2015 tetapi tidak dapat menemukan referensi untuk itu.Dari dokumentasi:
sumber
Halaman - Mengambil file XAML yang ditentukan, dan mengkompilasi ke dalam BAML, dan menyematkan output itu ke aliran sumber daya yang dikelola untuk perakitan Anda (khususnya AssemblyName.g.resources), Selain itu, jika Anda memiliki atribut yang sesuai pada elemen XAML root di file, itu akan membuat file blah.g.cs, yang akan berisi sebagian kelas "codebehind" untuk halaman itu; ini pada dasarnya melibatkan panggilan ke BAML goop untuk kembali menghidrasi file ke dalam memori, dan untuk mengatur variabel anggota kelas Anda ke item yang dibuat sekarang (misalnya jika Anda meletakkan x: Name = "foo" pada item , Anda dapat melakukan ini.foo.Latar Belakang = Ungu; atau serupa.
ApplicationDefinition - mirip dengan Page, kecuali ia berjalan lebih jauh, dan menentukan titik masuk untuk aplikasi Anda yang akan membuat instance objek aplikasi Anda, memanggil run di atasnya, yang kemudian akan instantiate jenis yang ditetapkan oleh properti StartupUri, dan akan memberikan jendela utama Anda .
Juga, untuk menjadi jelas, pertanyaan ini secara keseluruhan dimasukkan dalam hasil yang ditetapkan; siapa pun dapat mendefinisikan BuildActions tambahan hanya dengan membangun Tugas MSBuild. Jika Anda melihat di direktori% systemroot% \ Microsoft.net \ framework \ v {version} \, dan melihat file Microsoft.Common.targets, Anda harus dapat menguraikan lebih banyak lagi (misalnya, dengan VS Pro ke atas, ada tindakan "Bayangan" yang memungkinkan Anda menghasilkan pengakses pribadi untuk membantu pengujian unit kelas privat.
sumber
VS2010 memiliki properti untuk 'Bangun Tindakan', dan juga untuk 'Salin ke Direktori Keluaran'. Jadi tindakan 'Tidak Ada' masih akan menyalin ke direktori build jika properti salin diatur ke 'Salin jika Baru' atau 'Salin Selalu'.
Jadi Tindakan Build 'Konten' harus disediakan untuk menunjukkan konten yang akan Anda akses melalui 'Application.GetContentStream'
Saya menggunakan pengaturan 'Build Action' pada 'None' dan pengaturan 'Copy to Output Direcotry' pada 'Copy if Newer' untuk beberapa .config yang terhubung secara eksternal.
G.
sumber
Dalam VS2008, entri dokumen yang tampaknya paling berguna adalah:
Windows Presentation Foundation Membangun Aplikasi WPF (WPF)
ms-help: //MS.VSCC.v90/MS.MSDNQTR.v90.en/wpf_conceptual/html/a58696fd-bdad-4b55-9759-136dfdf8b91c.htm
ApplicationDefinition Mengidentifikasi file markup XAML yang berisi definisi aplikasi (file markup XAML yang elemen dasarnya adalah Aplikasi). ApplicationDefinition wajib ketika Install benar dan OutputType adalah winexe. Aplikasi WPF dan, akibatnya, proyek MSBuild hanya dapat memiliki satu ApplicationDefinition.
Halaman Mengidentifikasi file markup XAML yang kontennya dikonversi ke format biner dan dikompilasi menjadi sebuah majelis. Item halaman biasanya diterapkan bersamaan dengan kelas kode-belakang.
Item Halaman yang paling umum adalah file XAML yang elemen level atasnya adalah salah satu dari yang berikut:
Sumber Daya Mengidentifikasi file sumber daya yang dikompilasi ke dalam rakitan aplikasi. Seperti yang disebutkan sebelumnya, UICulture memproses item Sumber Daya.
Konten Mengidentifikasi file konten yang didistribusikan dengan aplikasi. Metadata yang menjelaskan file konten dikompilasi ke dalam aplikasi (menggunakan AssemblyAssociatedContentFileAttribute).
sumber
Bagaimana dengan halaman ini dari Microsoft Connect (menjelaskan DesignData dan DesignDataWithDesignTimeCreatableTypes) jenis. Mengutip:
Berikut ini menjelaskan dua Tindakan Membangun untuk file Data Sampel.
Sampel data .xaml file harus ditetapkan salah satu dari Tindakan Bangun di bawah ini:
DesignData : Contoh tipe data akan dibuat sebagai tipe palsu. Gunakan Tindakan Bangun ini ketika tipe data sampel tidak dapat dibuat atau memiliki sifat hanya baca yang Anda inginkan untuk menentukan nilai data sampel.
DesignDataWithDesignTimeCreatableTypes : Tipe data sampel akan dibuat menggunakan tipe yang ditentukan dalam file data sampel. Gunakan Tindakan Bangun ini ketika tipe data sampel dapat dibuat menggunakan konstruktor kosong default mereka.
Tidak terlalu lengkap, tetapi setidaknya memberi petunjuk. Panduan MSDN ini juga memberikan beberapa ide. Saya tidak tahu apakah Build Action ini berlaku untuk proyek non-Silverlight juga.
sumber
sumber