Skip to content

Instantly share code, notes, and snippets.

@yuxinliu-alex
Forked from gistlyn/main.cs
Created December 16, 2016 08:03
Show Gist options
  • Save yuxinliu-alex/fd18d38802c3dcf08a4e60fb6e85621b to your computer and use it in GitHub Desktop.
Save yuxinliu-alex/fd18d38802c3dcf08a4e60fb6e85621b to your computer and use it in GitHub Desktop.

Revisions

  1. yuxinliu-alex revised this gist Dec 16, 2016. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions main.cs
    Original file line number Diff line number Diff line change
    @@ -27,6 +27,7 @@ public class User
    new User { Id = 3, Name = "C", CreatedDate = DateTime.Now },
    new User { Id = 4, Name = "C", CreatedDate = DateTime.Now });


    var rowsC = db.Select<User>(x => x.Name == "C"); //SELECT by typed expression
    "No of 'C' Rows: {0}, Ids:".Print(rowsC.Count); //= 2
    rowsC.ConvertAll(x => x.Id).PrintDump(); //= 3,4
  2. @gistlyn gistlyn revised this gist Aug 25, 2016. 1 changed file with 5 additions and 5 deletions.
    10 changes: 5 additions & 5 deletions packages.config
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,8 @@
    <?xml version="1.0" encoding="utf-8"?>
    <packages>
    <package id="ServiceStack.Text" version="4.0.62" targetFramework="net45" />
    <package id="ServiceStack.Interfaces" version="4.0.62" targetFramework="net45" />
    <package id="ServiceStack.Common" version="4.0.62" targetFramework="net45" />
    <package id="ServiceStack.OrmLite" version="4.0.62" targetFramework="net45" />
    <package id="ServiceStack.OrmLite.Sqlite.Mono" version="4.0.62" targetFramework="net45" />
    <package id="ServiceStack.Text" version="4.5.0" targetFramework="net45" />
    <package id="ServiceStack.Interfaces" version="4.5.0" targetFramework="net45" />
    <package id="ServiceStack.Common" version="4.5.0" targetFramework="net45" />
    <package id="ServiceStack.OrmLite" version="4.5.0" targetFramework="net45" />
    <package id="ServiceStack.OrmLite.Sqlite.Mono" version="4.5.0" targetFramework="net45" />
    </packages>
  3. @gistlyn gistlyn revised this gist Aug 9, 2016. 1 changed file with 6 additions and 6 deletions.
    12 changes: 6 additions & 6 deletions packages.config
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,8 @@
    <?xml version="1.0" encoding="utf-8"?>
    <packages>
    <package id="ServiceStack.Common" version="4.0.60" targetFramework="net45" />
    <package id="ServiceStack.Interfaces" version="4.0.60" targetFramework="net45" />
    <package id="ServiceStack.OrmLite" version="4.0.60" targetFramework="net45" />
    <package id="ServiceStack.Text" version="4.0.60" targetFramework="net45" />
    <package id="ServiceStack.OrmLite.Sqlite.Mono" version="4.0.60" targetFramework="net45" />
    </packages>
    <package id="ServiceStack.Text" version="4.0.62" targetFramework="net45" />
    <package id="ServiceStack.Interfaces" version="4.0.62" targetFramework="net45" />
    <package id="ServiceStack.Common" version="4.0.62" targetFramework="net45" />
    <package id="ServiceStack.OrmLite" version="4.0.62" targetFramework="net45" />
    <package id="ServiceStack.OrmLite.Sqlite.Mono" version="4.0.62" targetFramework="net45" />
    </packages>
  4. @gistlyn gistlyn revised this gist Jul 27, 2016. No changes.
  5. @gistlyn gistlyn revised this gist Jul 27, 2016. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions main.cs
    Original file line number Diff line number Diff line change
    @@ -27,13 +27,13 @@ public class User
    new User { Id = 3, Name = "C", CreatedDate = DateTime.Now },
    new User { Id = 4, Name = "C", CreatedDate = DateTime.Now });

    var rowsC = db.Select<User>(x => x.Name == "C"); //SELECT by lambda expression
    var rowsC = db.Select<User>(x => x.Name == "C"); //SELECT by typed expression
    "No of 'C' Rows: {0}, Ids:".Print(rowsC.Count); //= 2
    rowsC.ConvertAll(x => x.Id).PrintDump(); //= 3,4

    db.Delete<User>(x => x.Name == "C"); //DELETE by lambda expression
    db.Delete<User>(x => x.Name == "C"); //DELETE by typed expression

    var remainingC = db.Select<User>("Name = @name", new {name="C"}); //Custom SQL
    var remainingC = db.Select<User>("Name= @name", new { name="C" }); //Custom SQL
    "No of 'C' Rows: {0}".Print(remainingC.Count); //= 0

    var rowsLeft = db.Select<User>();
  6. @gistlyn gistlyn revised this gist Jul 27, 2016. 1 changed file with 1 addition and 2 deletions.
    3 changes: 1 addition & 2 deletions main.cs
    Original file line number Diff line number Diff line change
    @@ -21,8 +21,7 @@ public class User

    db.DropAndCreateTable<User>(); //DROP (if exist) and CREATE Table from User POCO

    //INSERT multiple Users by params
    db.Insert(
    db.Insert( //INSERT multiple Users by params
    new User { Id = 1, Name = "A", CreatedDate = DateTime.Now },
    new User { Id = 2, Name = "B", CreatedDate = DateTime.Now },
    new User { Id = 3, Name = "C", CreatedDate = DateTime.Now },
  7. @gistlyn gistlyn revised this gist Jul 27, 2016. 1 changed file with 4 additions and 5 deletions.
    9 changes: 4 additions & 5 deletions main.cs
    Original file line number Diff line number Diff line change
    @@ -22,12 +22,11 @@ public class User
    db.DropAndCreateTable<User>(); //DROP (if exist) and CREATE Table from User POCO

    //INSERT multiple Users by params
    db.Insert(new User { Id = 1, Name = "A", CreatedDate = DateTime.Now },
    new User { Id = 2, Name = "B", CreatedDate = DateTime.Now });

    db.InsertAll(new[] { //INSERT by IEnumerable<T>
    db.Insert(
    new User { Id = 1, Name = "A", CreatedDate = DateTime.Now },
    new User { Id = 2, Name = "B", CreatedDate = DateTime.Now },
    new User { Id = 3, Name = "C", CreatedDate = DateTime.Now },
    new User { Id = 4, Name = "C", CreatedDate = DateTime.Now }});
    new User { Id = 4, Name = "C", CreatedDate = DateTime.Now });

    var rowsC = db.Select<User>(x => x.Name == "C"); //SELECT by lambda expression
    "No of 'C' Rows: {0}, Ids:".Print(rowsC.Count); //= 2
  8. @gistlyn gistlyn created this gist Jul 26, 2016.
    43 changes: 43 additions & 0 deletions main.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,43 @@
    using System;
    using System.Collections.Generic;
    using ServiceStack;
    using ServiceStack.Text;
    using ServiceStack.OrmLite;
    using ServiceStack.OrmLite.Sqlite;
    using ServiceStack.DataAnnotations;

    public class User
    {
    public long Id { get; set; }

    [Index]
    public string Name { get; set; }
    public DateTime CreatedDate { get; set; }
    public override string ToString() => Name;
    }

    var dbFactory = new OrmLiteConnectionFactory(":memory:", SqliteDialect.Provider);
    var db = dbFactory.Open(); //Open ADO.NET DB Connection

    db.DropAndCreateTable<User>(); //DROP (if exist) and CREATE Table from User POCO

    //INSERT multiple Users by params
    db.Insert(new User { Id = 1, Name = "A", CreatedDate = DateTime.Now },
    new User { Id = 2, Name = "B", CreatedDate = DateTime.Now });

    db.InsertAll(new[] { //INSERT by IEnumerable<T>
    new User { Id = 3, Name = "C", CreatedDate = DateTime.Now },
    new User { Id = 4, Name = "C", CreatedDate = DateTime.Now }});

    var rowsC = db.Select<User>(x => x.Name == "C"); //SELECT by lambda expression
    "No of 'C' Rows: {0}, Ids:".Print(rowsC.Count); //= 2
    rowsC.ConvertAll(x => x.Id).PrintDump(); //= 3,4

    db.Delete<User>(x => x.Name == "C"); //DELETE by lambda expression

    var remainingC = db.Select<User>("Name = @name", new {name="C"}); //Custom SQL
    "No of 'C' Rows: {0}".Print(remainingC.Count); //= 0

    var rowsLeft = db.Select<User>();
    "Rows Left: {0}".Print(rowsLeft.Count); //= 2
    rowsLeft.PrintDump(); //= A,B
    8 changes: 8 additions & 0 deletions packages.config
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,8 @@
    <?xml version="1.0" encoding="utf-8"?>
    <packages>
    <package id="ServiceStack.Common" version="4.0.60" targetFramework="net45" />
    <package id="ServiceStack.Interfaces" version="4.0.60" targetFramework="net45" />
    <package id="ServiceStack.OrmLite" version="4.0.60" targetFramework="net45" />
    <package id="ServiceStack.Text" version="4.0.60" targetFramework="net45" />
    <package id="ServiceStack.OrmLite.Sqlite.Mono" version="4.0.60" targetFramework="net45" />
    </packages>