@@ -27,12 +27,12 @@ namespace Serilog.Sinks.MSSqlServer
27
27
/// <summary>Contains common functionality and properties used by both MSSqlServerSinks.</summary>
28
28
internal class MSSqlServerSinkTraits : IDisposable
29
29
{
30
+ private readonly string _tableName ;
31
+ private readonly string _schemaName ;
32
+ private readonly ColumnOptions _columnOptions ;
30
33
private readonly ILogEventDataGenerator _logEventDataGenerator ;
31
34
private bool _disposedValue ;
32
35
33
- public string TableName { get ; }
34
- public string SchemaName { get ; }
35
- public ColumnOptions ColumnOptions { get ; }
36
36
public DataTable EventTable { get ; }
37
37
38
38
public MSSqlServerSinkTraits (
@@ -61,13 +61,13 @@ internal MSSqlServerSinkTraits(
61
61
if ( string . IsNullOrWhiteSpace ( tableName ) )
62
62
throw new ArgumentNullException ( nameof ( tableName ) ) ;
63
63
64
+ _tableName = tableName ;
65
+ _schemaName = schemaName ;
66
+ _columnOptions = columnOptions ;
67
+
64
68
if ( sqlTableCreator == null )
65
69
throw new ArgumentNullException ( nameof ( sqlTableCreator ) ) ;
66
70
67
- TableName = tableName ;
68
- SchemaName = schemaName ;
69
- ColumnOptions = columnOptions ?? new ColumnOptions ( ) ;
70
-
71
71
// TODO initialize this outside of this class
72
72
var standardColumnDataGenerator = new StandardColumnDataGenerator ( columnOptions , formatProvider , logEventFormatter ) ;
73
73
var propertiesColumnDataGenerator = new PropertiesColumnDataGenerator ( columnOptions ) ;
@@ -79,7 +79,7 @@ internal MSSqlServerSinkTraits(
79
79
{
80
80
try
81
81
{
82
- sqlTableCreator . CreateTable ( SchemaName , TableName , EventTable , ColumnOptions ) ; // return code ignored, 0 = failure?
82
+ sqlTableCreator . CreateTable ( _schemaName , _tableName , EventTable , _columnOptions ) ; // return code ignored, 0 = failure?
83
83
}
84
84
catch ( Exception ex )
85
85
{
@@ -95,24 +95,24 @@ public IEnumerable<KeyValuePair<string, object>> GetColumnsAndValues(LogEvent lo
95
95
96
96
private DataTable CreateDataTable ( )
97
97
{
98
- var eventsTable = new DataTable ( TableName ) ;
98
+ var eventsTable = new DataTable ( _tableName ) ;
99
99
100
- foreach ( var standardColumn in ColumnOptions . Store )
100
+ foreach ( var standardColumn in _columnOptions . Store )
101
101
{
102
- var standardOpts = ColumnOptions . GetStandardColumnOptions ( standardColumn ) ;
102
+ var standardOpts = _columnOptions . GetStandardColumnOptions ( standardColumn ) ;
103
103
var dataColumn = standardOpts . AsDataColumn ( ) ;
104
104
eventsTable . Columns . Add ( dataColumn ) ;
105
- if ( standardOpts == ColumnOptions . PrimaryKey )
105
+ if ( standardOpts == _columnOptions . PrimaryKey )
106
106
eventsTable . PrimaryKey = new DataColumn [ ] { dataColumn } ;
107
107
}
108
108
109
- if ( ColumnOptions . AdditionalColumns != null )
109
+ if ( _columnOptions . AdditionalColumns != null )
110
110
{
111
- foreach ( var addCol in ColumnOptions . AdditionalColumns )
111
+ foreach ( var addCol in _columnOptions . AdditionalColumns )
112
112
{
113
113
var dataColumn = addCol . AsDataColumn ( ) ;
114
114
eventsTable . Columns . Add ( dataColumn ) ;
115
- if ( addCol == ColumnOptions . PrimaryKey )
115
+ if ( addCol == _columnOptions . PrimaryKey )
116
116
eventsTable . PrimaryKey = new DataColumn [ ] { dataColumn } ;
117
117
}
118
118
}
0 commit comments