This course will be retired on July 14, 2025.
Heads up! To view this whole video, sign in with your Courses account or enroll in your free 7-day trial. Sign In Enroll
- What are Migrations? 4:41
- Enabling Migrations 6:06
- Code First Migrations Review 5 questions
- The Configuration Class 2:09
- Adding Our First Migration 4:05
- The Migration Fluent API 6:04
- Updating the Database 4:13
- Populating Our Database with Seed Data 7:31
- Using the Configuration Class to Add Seed Data 1 objective
- Excluding Test Data in Production 5:54
- Using a Preprocessor Directive to Exclude Test Data 1 objective
- Section Review 10 questions

- 2x 2x
- 1.75x 1.75x
- 1.5x 1.5x
- 1.25x 1.25x
- 1.1x 1.1x
- 1x 1x
- 0.75x 0.75x
- 0.5x 0.5x
Let's see how we can update our Configuration class to exclude our test data when we're not building a debug version of our application.
Follow Along
To follow along commiting your changes to this course, you'll need to fork the dotnet-ef-migrations repo. Then you can clone, commit, and push your changes to your fork like this:
git clone <your-fork>
cd dotnet-ef-migrations
git checkout tags/v1.8 -b excluding-test-data-in-production
Creating Custom Build Configurations
For a walkthrough of how to create a custom build configuration, see the following on MSDN.
Once you've created your custom build configuration, you can then define a symbol that can be used with preprocessor directives. See this MSDN resource for information on how to define symbols (be sure to scroll down to the section labeled "To set this compiler option in the Visual Studio development environment").
Here's an article on CodeProject that walks through a complete example of how to use conditional compilation to control runtime settings for different deployment scenarios.
Additional Learning
For more information about C# preprocessor directives, see the following resources.
- https://www.tutorialspoint.com/csharp/csharp_preprocessor_directives.htm
- https://msdn.microsoft.com/en-us/library/ed8yd1ha.aspx
For more information about Debug and Release configurations, see the following on MSDN.
Related Discussions
Have questions about this video? Start a discussion with the community and Treehouse staff.
Sign upRelated Discussions
Have questions about this video? Start a discussion with the community and Treehouse staff.
Sign up
You need to sign up for Treehouse in order to download course files.
Sign upYou need to sign up for Treehouse in order to set up Workspace
Sign up