This extension can detect, and provide notifications for, three different performance issues. The first issue that the extension detects for is whether “Copy Always” is set for the “Copy to Output Directory” setting, which impacts performance by rebuilding projects that haven’t been modified since their last build. Another performance issue the extension checks for is whether “Fast Up To Date Check” has been disabled. Disabling “Fast Up to Date Check” impacts performance by allowing MSBuild to use a slower method to check whether a project needs to be recompiled. The extension also checks the scope of Roslyn analyzers. If the scope is set to “Entire Solution”, it analyzes files that haven’t been modified, which can slow down Visual Studio. When a performance issue is detected, you will see a toast notification informing you of the issue. Clicking “Don’t show again” will make it so the user does not see a toast notification for that particular performance issue again. Clicking “Manage Performance” will lead the user to the Performance Notification Center. If a user has more than one performance issue, a single toast will appear to address the multiple performance issues, instead of sending multiple toasts. In this case, users will not have the “Don’t show again” option in the toast. The Performance Notification Center can be accessed by clicking “Manage Performance” in the toast notifications and can also be found under the Tools tab of Visual Studio. It stores all current and past performance notifications, even after the toast notifications have been dismissed. The right pane of the window provides more information about the performance issues the user has been experiencing. Under “Details”, users can learn more about what the setting is that impacts performance, as well as what they can do to improve their performance. Additionally, in the case of the “Copy Always” performance issue, which can be set to individual project files, the Performance Notification Center will list the exact project files that are impacted by the setting under “Impacted files.” |