Share via


IVSDBToolsOptionsSettings Interface

This interface defines settings contract. Any feature provides settings that need to be hosted in VS Tools -> Options page or Project Properties Page, it should implement this interface.

Namespace:  Microsoft.Data.Tools.Schema.Utilities.Sql.Settings.Internal
Assembly:  Microsoft.Data.Tools.Schema.Utilities.Sql (in Microsoft.Data.Tools.Schema.Utilities.Sql.dll)

Syntax

'Declaration
Public Interface IVSDBToolsOptionsSettings
'Usage
Dim instance As IVSDBToolsOptionsSettings
public interface IVSDBToolsOptionsSettings
public interface class IVSDBToolsOptionsSettings
type IVSDBToolsOptionsSettings =  interface end
public interface IVSDBToolsOptionsSettings

The IVSDBToolsOptionsSettings type exposes the following members.

Properties

  Name Description
Public property SettingValues This property represents current settings in name/value pair format. The caller will use returned value to serialize to project file or registry, etc. Or the caller can pass in new values for all the settings, in the setter, it will loop through passed in settings and set the related setting property with new value.

Top

Methods

  Name Description
Public method CompareSettingValues Compare to the oldValues to see if the current settings is different from the old one. If it is, fire the SettingsChanged event.
Public method IsSupportedSetting Check if this setting is supported by implementing class
Public method Reset This method is used to reset settings to default values.

Top

Events

  Name Description
Public event SettingsChanged Event for settings changed. Different feature can register to this event and do different actions when settings are changed.

Top

Remarks

Any setting will be a writable property in the implemented class, and the property should attributed with VSDBToolsOptionsSettingAttribute attribute. Any setting property should be able to covert to string. User can specify TypeConverter on this property. Implemented class should provide overrides for Equals and GetHashCode methods. In this way, when any modification happened to settings, old settings will be compared to new settings, if any changes detected, SettingsChanged event will be raised.

See Also

Reference

Microsoft.Data.Tools.Schema.Utilities.Sql.Settings.Internal Namespace