summaryrefslogtreecommitdiff
path: root/slips/src/app/Marina/DataAccess/Builders/Query.cs
diff options
context:
space:
mode:
Diffstat (limited to 'slips/src/app/Marina/DataAccess/Builders/Query.cs')
-rw-r--r--slips/src/app/Marina/DataAccess/Builders/Query.cs22
1 files changed, 22 insertions, 0 deletions
diff --git a/slips/src/app/Marina/DataAccess/Builders/Query.cs b/slips/src/app/Marina/DataAccess/Builders/Query.cs
new file mode 100644
index 0000000..0b95bf1
--- /dev/null
+++ b/slips/src/app/Marina/DataAccess/Builders/Query.cs
@@ -0,0 +1,22 @@
+using System.Data;
+
+namespace Marina.DataAccess.Builders {
+ public class Query : IQuery {
+ public Query( IQueryBuilder builder ) {
+ _builder = builder;
+ }
+
+ public void Prepare( IDbCommand command ) {
+ command.CommandText = _builder.ToString( );
+ command.CommandType = CommandType.Text;
+ foreach ( DatabaseCommandParameter parameter in _builder.Parameters( ) ) {
+ IDataParameter commandParameter = command.CreateParameter( );
+ commandParameter.ParameterName = "@" + parameter.ColumnName;
+ commandParameter.Value = parameter.Value;
+ command.Parameters.Add( commandParameter );
+ }
+ }
+
+ private readonly IQueryBuilder _builder;
+ }
+} \ No newline at end of file