For the most part, you just take whatever Visual Studio sets it for you as a default… I’m referring to the BuildAction property for each file selected in Solution Explorer. There are a number of options and it’s difficult to know what each one of them will do.
8 s
-
None: The file is not included in the project output group and is not compiled in the build process. An example is a text file that contains documentation, such as a Readme file.
-
Compile: The file is compiled into the build output. This setting is used for code files.
-
Content: Allows you to retrieve a file (in the same directory as the assembly) as a stream via Application.GetContentStream(URI). For this method to work, it needs a AssemblyAssociatedContentFile custom attribute which Visual Studio graciously adds when you mark a file as “Content”
-
Embedded resource: Embeds the file in an exclusive assembly manifest resource.
-
Resource (WPF only): Embeds the file in a shared (by all files in the assembly with similar setting) assembly manifest resource named AppName.g.resources.
-
Page (WPF only): Used to compile a
xaml
file intobaml
. Thebaml
is then embedded with the same technique asResource
(i.e. available as `AppName.g.resources) -
ApplicationDefinition (WPF only): Mark the XAML/class file that defines your application. You specify the code-behind with the x:Class=”Namespace.ClassName” and set the startup form/page with StartupUri=”Window1.xaml”
-
SplashScreen (WPF only): An image that is marked as
SplashScreen
is shown automatically when an WPF application loads, and then fades -
DesignData: Compiles XAML viewmodels so that usercontrols can be previewed with sample data in Visual Studio (uses mock types)
-
DesignDataWithDesignTimeCreatableTypes: Compiles XAML viewmodels so that usercontrols can be previewed with sample data in Visual Studio (uses actual types)
-
EntityDeploy: (Entity Framework): used to deploy the Entity Framework artifacts
-
CodeAnalysisDictionary: An XML file containing custom word dictionary for spelling rules