Add Settings to ReShaper Options
What you should know beforehand:
ReSharper settings are key-value based. Settings are like onions - they have layers and are applied top-down:
Predefined settings: settings that come with ReSharper (can be modified by the next levels).
Computer-level settings: settings stored in files in user's
Localappdata. All instances of ReSharper have access to this level.
Solution-level: settings stored in files next to the solution:
.sln.dotSettings: team-shared settings. This file is expected to be stored in VCS.
.sln.dotSettings.user: private user settings. Here you can store e.g., the last unit test session, position of some dialog on the screen, and so on. So, these are settings that are specific to this particular solution, otherwise, they go to the computer level.
Project-level: settings stored in files next to the project. These settings may include, e.g. specific naming rules.
.csproj.dotSettings: team-shared settings.
.csproj.dotSettings.user: private user settings.
Adding a setting
To create a simple setting, you should derive your class from
SimpleOptionsPage and mark it with the
Reading a setting value
To access the setting value, you can use the