Program.cs 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. using System;
  2. using System.Linq;
  3. using Vitorm;
  4. namespace App
  5. {
  6. public class Program
  7. {
  8. static void Main(string[] args)
  9. {
  10. // #1 Configures Vitorm
  11. using var dbContext = new Vitorm.ElasticSearch.DbContext("http://localhost:9200");
  12. // #2 Create Table
  13. dbContext.TryDropTable<User>();
  14. dbContext.TryCreateTable<User>();
  15. // #3 Insert Records
  16. dbContext.Add(new User { id = 1, name = "lith" });
  17. dbContext.AddRange(new[] {
  18. new User { id = 2, name = "lith", fatherId = 1 },
  19. new User { id = 3, name = "lith", fatherId = 1 }
  20. });
  21. // #4 Query Records
  22. {
  23. var user = dbContext.Get<User>(1);
  24. var users = dbContext.Query<User>().Where(u => u.name.Contains("li")).ToList();
  25. var sql = dbContext.Query<User>().Where(u => u.name.Contains("li")).ToExecuteString();
  26. }
  27. // #5 Update Records
  28. dbContext.Update(new User { id = 1, name = "lith1" });
  29. dbContext.UpdateRange(new[] {
  30. new User { id = 2, name = "lith2", fatherId = 1 },
  31. new User { id = 3, name = "lith3", fatherId = 2 }
  32. });
  33. //dbContext.Query<User>().Where(u => u.name.Contains("li"))
  34. // .ExecuteUpdate(u => new User { name = "Lith" + u.id });
  35. // #6 Delete Records
  36. dbContext.Delete<User>(new User { id = 1 });
  37. dbContext.DeleteRange(new[] {
  38. new User { id = 2 },
  39. new User { id = 3 }
  40. });
  41. dbContext.DeleteByKey<User>(1);
  42. dbContext.DeleteByKeys<User, int>(new[] { 1, 2 });
  43. //dbContext.Query<User>().Where(u => u.name.Contains("li"))
  44. // .ExecuteDelete();
  45. // #7 Join Queries
  46. // #8 Transactions
  47. // #9 Database Functions
  48. }
  49. // Entity Definition
  50. [System.ComponentModel.DataAnnotations.Schema.Table("User")]
  51. public class User
  52. {
  53. [System.ComponentModel.DataAnnotations.Key]
  54. public int id { get; set; }
  55. public string name { get; set; }
  56. public DateTime? birth { get; set; }
  57. public int? fatherId { get; set; }
  58. }
  59. }
  60. }