A .NET Core 3.0 web app where a user chooses what to read by giving a thumbs up or thumbs down to random books being displayed (think Tinder, but for books)
To use this app successfully, you'll need to have .NET Core 3.0 or higher installed for your IDE. If you are using a preview build of .NET Core 3.0 in Visual Studio 2019, complete the following steps:
- Download and install .NET Core 3.0
- In Visual Studio 2019, enable preview use by going to Tools -> Options -> Environment -> Preview Features and check the “Use previews of the .NET Core SDK.”
- To double-check that .NET Core 3.0 has been installed, go to Solution Explorer, right-click the ReadingList project and select Properties, and make sure Target Framework is set to .NET Core 3.0 in the Applications tab.
This app was originally created to demo debugging tools in Visual Studio 2019, so a few bugs have been intentionally added to this app in order to illustrate them, but many are commented out by default. To turn on bugs, locate comments containing "DEMO," where the bug will be commented out directly below it. The demo comment will explain the bug and/or Visual Studio tools/features related to the line or code.
To quickly locate all demos/bugs via the Task List Window:
- Go to Tools -> Options -> Environment -> Task List
- Type "DEMO" in the Name textbox and select Add to add the demo keyword to the Token List.
- Open Task List window at View -> Task List to view, double-click and be redirected to all DEMO locations.
The following list contains debugging tools and corresponding documentation/blogs in Visual Studio that have been demoed using this application.
- Run to Click
- Pinned Datatips
- Set to Next Statement
- DebuggerDisplay(managed only) & Natvis(C++ only)
- Pinnable Properties (Doc link TBA) - Quickly inspect objects by their properties in datatips or Watch windows. Hover over a property in a datatip or Watch window and select the pin icon that appears or right-click the property and select "Pin property as favorite" from the context menu.
- Text Visualizers
- Conditional Breakpoints
- Tracepoints
- Search for Autos, Watch, and Locals windows
- Data Breakpoints
- Step Into Specific (Doc link TBA) - Step into a specific function by right clicking code line, selecting "Step into specific" and choosing a function to step into from the resulting dropdown menu
- ReturnValue
- Pseudovariables
- C# Format Specifiers
- C++ Format Specifiers
- Edit and Continue
- Diagnostics Tools Window
- Snapshots on Exceptions
- First-Chance Exceptions
- Parallel Stacks Window for Tasks (Doc link TBA) - Visualize Tasks flow in asynchronous applications by selecting Debug > Windows > Parallel Stacks
- Attach to Linux Docker Container (Doc link TBA) - Attach the debugger to Linux Docker containers by selecting Debug > Attach to Process.. and select "Docker (Linux Container)" from the "Connection Type" dropdown.
- Source Link
- Child Process Debugging Power Tool
- Snapshot Debugger
- Time-Travel Debugging