SfcObjectExtender<TSfcInstance> Class
Definition
Used as a base class for objects that needs to be extended with additional properties Allows to add these new properties to the PropertySet, so they can be accessed using PropertyProvider Also, it helps to establish dependancy between extended property and original one
public class SfcObjectExtender<TSfcInstance> : Microsoft.SqlServer.Management.Sdk.Sfc.ISfcPropertyProvider, System.ComponentModel.INotifyPropertyChanged where TSfcInstance : ISfcPropertyProvidernew()
type SfcObjectExtender<'SfcInstance (requires 'SfcInstance :> ISfcPropertyProvider and 'SfcInstance : (new : unit -> 'SfcInstance))> = class
interface ISfcPropertyProvider
interface ISfcNotifyPropertyMetadataChanged
interface INotifyPropertyChanged
Public Class SfcObjectExtender(Of TSfcInstance)
Implements INotifyPropertyChanged, ISfcPropertyProvider
Type Parameters
- TSfcInstance
- Inheritance
-
SfcObjectExtender<TSfcInstance>
- Derived
- Implements
Constructors
SfcObjectExtender<TSfcInstance>() |
default ctor. Used in code-generation scenarios |
SfcObjectExtender<TSfcInstance>(TSfcInstance) |
ctor |
Properties
Parent |
Parent object |
Methods
GetParentSfcPropertySet() |
Returns an instance of the parent's property set |
GetPropertySet() |
returns collection of the properties |
OnPropertyChanged(String) |
Fires PropertyChanged event, when it has any subscriber |
OnPropertyMetadataChanged(String) |
Fires PropertyMetadataChanged event, when it has any subscriber |
parent_PropertyChanged(Object, PropertyChangedEventArgs) | |
parent_PropertyMetadataChanged(Object, SfcPropertyMetadataChangedEventArgs) | |
RegisterParentProperty(PropertyInfo) |
Register property of the parent, that has not been included in properties collection (like 'Name' in SMO or collections |
RegisterProperty(PropertyInfo) |
Register an additional reflected property |
RegisterProperty(PropertyInfo, String) |
Register an additional reflected property, dependant on the property from the parent object |
Events
PropertyChanged | |
PropertyMetadataChanged |