Raw sql query extensions to Simple.Data
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
Runner
Simple.Data.RawSql
packages
.gitignore
Simple.Data.RawSql.sln
license.txt
readme.md

readme.md

Simple.Data.RawSql

Raw sql extensions to Simple.Data

Query a single row:

Database db = Database.Open(); // Notice statically typed db variable as Database
var sql = @"SELECT TOP 1 * FROM tblData WHERE Name = @name ORDER BY Id";
var row = db.ToRows(sql, new {name = "Jason Dentler"});
// rows is a dynamic

var id = (Guid) row.Id;
var name = (string) row.Name;

Query several rows:

Database db = Database.Open(); // Notice statically typed db variable as Database
var sql = @"SELECT * FROM tblData WHERE Name = @name";
var rows = db.ToRows(sql, new {name = "Jason Dentler"});

// rows is IEnumerable<dynamic>
foreach (var row in rows)
{
	var id = (Guid) row.Id;
	var name = (string) row.Name;
}

Batch several queries together:

Database db = Database.Open(); // Notice statically typed db variable as Database
var sql = @"
	SELECT TOP 5 * FROM tblData WHERE Name = @name ORDER BY Name;
	SELECT COUNT(*) AS [Count] FROM tblData WHERE Name = @name";
// Sql queries delimited by semicolon

var resultSets = db.ToResultSets(sql, new {name = "Jason Dentler"});
// resultSets is IEnumerable<IEnumerable<dynamic>>

rows = resultSets.ElementAt(0).ToArray();
var count = (long) resultSets.ElementAt(1).Single().Count;

Console.WriteLine("Showing results 0 through {0} of {1}", rows.Count(), count);
foreach (var row in rows)
{
	var id = (Guid) row.Id;
	var name = (string) row.Name;
}