Finish implementing SQLite parameter and collection wrappers

This commit is contained in:
Chris Cameron
2018-01-29 10:04:53 -05:00
parent 44b79ea7ee
commit a8313d8190
4 changed files with 32 additions and 9 deletions

View File

@@ -151,9 +151,14 @@
<Compile Include="SafeCriticalSection.Standard.cs" />
<Compile Include="SafeMutex.cs" />
<Compile Include="Sqlite\eDbType.cs" />
<Compile Include="Sqlite\IcdDbDataReader.cs" />
<Compile Include="Sqlite\IcdSqliteCommand.cs" />
<Compile Include="Sqlite\IcdSqliteConnection.cs" />
<Compile Include="Sqlite\IcdSqliteDataReader.cs" />
<Compile Include="Sqlite\IcdSqliteParameter.cs" />
<Compile Include="Sqlite\IcdSqliteParameterCollection.cs" />
<Compile Include="Sqlite\IIcdDataReader.cs" />
<Compile Include="Sqlite\IIcdDataRecord.cs" />
<Compile Include="StringUtils.cs" />
<Compile Include="TableBuilder.cs" />
<Compile Include="ThreadingUtils.cs" />

View File

@@ -1,5 +1,9 @@
using System;
#if SIMPLSHARP
using SqliteDataReader = Crestron.SimplSharp.SQLite.SQLiteDataReader;
#else
using System;
using Microsoft.Data.Sqlite;
#endif
namespace ICD.Common.Utils.Sqlite
{
@@ -7,6 +11,8 @@ namespace ICD.Common.Utils.Sqlite
{
private readonly SqliteDataReader m_Reader;
public override object this[string columnId] { get { return m_Reader[columnId]; } }
/// <summary>
/// Constructor.
/// </summary>
@@ -28,7 +34,5 @@ namespace ICD.Common.Utils.Sqlite
{
return m_Reader.Read();
}
public override object this[string columnId] { get { return m_Reader[columnId]; } }
}
}

View File

@@ -1,7 +1,24 @@
namespace ICD.Common.Utils.Sqlite
#if SIMPLSHARP
using SqliteParameter = Crestron.SimplSharp.SQLite.SQLiteParameter;
#else
using Microsoft.Data.Sqlite;
#endif
namespace ICD.Common.Utils.Sqlite
{
public sealed class IcdSqliteParameter
{
public object Value { get; set; }
private readonly SqliteParameter m_Parameter;
public object Value { get { return m_Parameter.Value; } set { m_Parameter.Value = value; } }
/// <summary>
/// Constructor.
/// </summary>
/// <param name="parameter"></param>
public IcdSqliteParameter(SqliteParameter parameter)
{
m_Parameter = parameter;
}
}
}

View File

@@ -19,12 +19,9 @@ namespace ICD.Common.Utils.Sqlite
m_Parameters = commandParameters;
}
public IcdSqliteParameter Add(string name, eDbType type)
{
SqliteType
return new IcdSqliteParameter(m_Parameters.Add(name, type));
return new IcdSqliteParameter(m_Parameters.Add(name, type.ToParamType()));
}
}
}