Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.40 KB | None | 0 0
  1. public class Startup
  2. {
  3.  
  4. public void ConfigureServices(IServiceCollection services)
  5. {
  6. AwardsContext ac;
  7. string con1 = "Server=(localdb)\mssqllocaldb;Database=usersdbstore;Trusted_Connection=True;MultipleActiveResultSets=true";
  8. string con2 = "Server=(localdb)\mssqllocaldb;Database=awardsdbstore;Trusted_Connection=True;MultipleActiveResultSets=true";
  9. //AwardsContext.Database.EnsureCreated();
  10. services.AddDbContext<UsersContext>(options => options.UseSqlServer(con1));
  11. services.AddDbContext<AwardsContext>(options => options.UseSqlServer(con2));
  12. services.AddMvc();
  13.  
  14. }
  15.  
  16. public void Configure(IApplicationBuilder app)
  17. {
  18. app.UseMvc();
  19. }
  20. }
  21.  
  22. public class AwardsContext : DbContext
  23. {
  24. public DbSet<Award> Awards { get; set; }
  25. public AwardsContext(DbContextOptions<AwardsContext> options)
  26. : base(options)
  27. { }
  28. }
  29.  
  30. public class AwardsController : ControllerBase
  31. {
  32. private readonly AwardsContext _contextAward;
  33.  
  34. public AwardsController(AwardsContext contextAward)
  35. {
  36. _contextAward = contextAward;
  37. if(!_contextAward.Awards.Any())
  38. {
  39. _contextAward.Awards.Add(new Award() { Title = "Emmy", Description = "Американская телевизионная премия" });
  40. _contextAward.Awards.Add(new Award() { Title = "Grammy", Description = "Музыкальная премия Американской академии звукозаписи" });
  41. _contextAward.Awards.Add(new Award() { Title = "Oskar", Description = "Премия Американской академии кинематографических искусств и наук" });
  42. _contextAward.Awards.Add(new Award() { Title = "Tony", Description = "Театральная премия" });
  43. _contextAward.Awards.Add(new Award() { Title = "Премия Дарвина", Description = "Неофициальная премия, присуждаемая комиссией людям лишившим себя наследства по своей глупости и неосторожности" });
  44. _contextAward.SaveChanges();
  45. }
  46. }
  47.  
  48. // GET: api/Awards
  49. [HttpGet]
  50. public IEnumerable<Award> GetAwards()
  51. {
  52. return _contextAward.Awards;
  53. }
  54.  
  55. // GET: api/Awards/5
  56. [HttpGet("{id}")]
  57. public async Task<IActionResult> GetAward([FromRoute] int id)
  58. {
  59. if (!ModelState.IsValid)
  60. {
  61. return BadRequest(ModelState);
  62. }
  63.  
  64. var award = await _contextAward.Awards.FindAsync(id);
  65.  
  66. if (award == null)
  67. {
  68. return NotFound();
  69. }
  70.  
  71. return Ok(award);
  72. }
  73.  
  74. // PUT: api/Awards/5
  75. [HttpPut("{id}")]
  76. public async Task<IActionResult> PutAward([FromRoute] int id, [FromBody] Award award)
  77. {
  78. if (!ModelState.IsValid)
  79. {
  80. return BadRequest(ModelState);
  81. }
  82.  
  83. if (id != award.Id)
  84. {
  85. return BadRequest();
  86. }
  87.  
  88. _contextAward.Entry(award).State = EntityState.Modified;
  89.  
  90. try
  91. {
  92. await _contextAward.SaveChangesAsync();
  93. }
  94. catch (DbUpdateConcurrencyException)
  95. {
  96. if (!AwardExists(id))
  97. {
  98. return NotFound();
  99. }
  100. else
  101. {
  102. throw;
  103. }
  104. }
  105.  
  106. return NoContent();
  107. }
  108.  
  109. // POST: api/Awards
  110. [HttpPost]
  111. public async Task<IActionResult> PostAward([FromBody] Award award)
  112. {
  113. if (!ModelState.IsValid)
  114. {
  115. return BadRequest(ModelState);
  116. }
  117.  
  118. _contextAward.Awards.Add(award);
  119. await _contextAward.SaveChangesAsync();
  120.  
  121. return CreatedAtAction("GetAward", new { id = award.Id }, award);
  122. }
  123.  
  124. // DELETE: api/Awards/5
  125. [HttpDelete("{id}")]
  126. public async Task<IActionResult> DeleteAward([FromRoute] int id)
  127. {
  128. if (!ModelState.IsValid)
  129. {
  130. return BadRequest(ModelState);
  131. }
  132.  
  133. var award = await _contextAward.Awards.FindAsync(id);
  134. if (award == null)
  135. {
  136. return NotFound();
  137. }
  138.  
  139. _contextAward.Awards.Remove(award);
  140. await _contextAward.SaveChangesAsync();
  141.  
  142. return Ok(award);
  143. }
  144.  
  145. private bool AwardExists(int id)
  146. {
  147. return _contextAward.Awards.Any(e => e.Id == id);
  148. }
  149. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement