VIKINGSController.cs 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Data.Entity;
  5. using System.Linq;
  6. using System.Net;
  7. using System.Web;
  8. using System.Web.Mvc;
  9. using CD67.ModeleMVC.Entity;
  10. using CD67.ModeleMVC.Factory;
  11. namespace CD67.ModeleMVC.MVC.Controllers
  12. {
  13. public class VIKINGSController : Controller
  14. {
  15. private Entities db = new Entities();
  16. // GET: VIKINGS
  17. public ActionResult Index()
  18. {
  19. VIKINGSFactory vikingsFactory = new VIKINGSFactory(db);
  20. return View(vikingsFactory.getAll());
  21. }
  22. // GET: VIKINGS/Details/5
  23. public ActionResult Details(int? id)
  24. {
  25. if (id == null)
  26. {
  27. return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
  28. }
  29. VIKINGSFactory vikingsFactory = new VIKINGSFactory(db);
  30. EXEMPLE_VIKINGS viking = vikingsFactory.getById(id.Value);
  31. if (viking == null)
  32. {
  33. return HttpNotFound();
  34. }
  35. return View(viking);
  36. }
  37. // GET: VIKINGS/Create
  38. public ActionResult Create()
  39. {
  40. EXEMPLE_VIKINGS viking = new EXEMPLE_VIKINGS();
  41. FillSelect(viking);
  42. return View(viking);
  43. }
  44. // POST: VIKINGS/Create
  45. // Afin de déjouer les attaques par sur-validation, activez les propriétés spécifiques que vous voulez lier. Pour
  46. // plus de détails, voir http://go.microsoft.com/fwlink/?LinkId=317598.
  47. [HttpPost]
  48. [ValidateAntiForgeryToken]
  49. public ActionResult Create([Bind(Include = "ID,NOM,ID_TYPE,DESCRIPTION")] EXEMPLE_VIKINGS viking)
  50. {
  51. if (ModelState.IsValid)
  52. {
  53. VIKINGSFactory vikingsFactory = new VIKINGSFactory(db);
  54. vikingsFactory.add(ref viking);
  55. return RedirectToAction("Index");
  56. }
  57. FillSelect(viking);
  58. return View(viking);
  59. }
  60. // GET: VIKINGS/Edit/5
  61. public ActionResult Edit(int? id)
  62. {
  63. if (id == null)
  64. {
  65. return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
  66. }
  67. VIKINGSFactory vikingsFactory = new VIKINGSFactory(db);
  68. EXEMPLE_VIKINGS viking = vikingsFactory.getById(id.Value);
  69. if (viking == null)
  70. {
  71. return HttpNotFound();
  72. }
  73. FillSelect(viking);
  74. return View(viking);
  75. }
  76. // POST: VIKINGS/Edit/5
  77. // Afin de déjouer les attaques par sur-validation, activez les propriétés spécifiques que vous voulez lier. Pour
  78. // plus de détails, voir http://go.microsoft.com/fwlink/?LinkId=317598.
  79. [HttpPost]
  80. [ValidateAntiForgeryToken]
  81. public ActionResult Edit([Bind(Include = "ID,NOM,ID_TYPE,DESCRIPTION")] EXEMPLE_VIKINGS viking)
  82. {
  83. if (ModelState.IsValid)
  84. {
  85. VIKINGSFactory vikingsFactory = new VIKINGSFactory(db);
  86. vikingsFactory.update(ref viking);
  87. return RedirectToAction("Index");
  88. }
  89. FillSelect(viking);
  90. return View(viking);
  91. }
  92. // GET: VIKINGS/Delete/5
  93. public ActionResult Delete(int? id)
  94. {
  95. if (id == null)
  96. {
  97. return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
  98. }
  99. VIKINGSFactory vikingsFactory = new VIKINGSFactory(db);
  100. EXEMPLE_VIKINGS viking = vikingsFactory.getById(id.Value);
  101. if (viking == null)
  102. {
  103. return HttpNotFound();
  104. }
  105. return View(viking);
  106. }
  107. // POST: VIKINGS/Delete/5
  108. [HttpPost, ActionName("Delete")]
  109. [ValidateAntiForgeryToken]
  110. public ActionResult DeleteConfirmed(int id)
  111. {
  112. VIKINGSFactory vikingsFactory = new VIKINGSFactory(db);
  113. EXEMPLE_VIKINGS viking = vikingsFactory.getById(id);
  114. vikingsFactory.delete(ref viking);
  115. return RedirectToAction("Index");
  116. }
  117. protected override void Dispose(bool disposing)
  118. {
  119. if (disposing)
  120. {
  121. db.Dispose();
  122. }
  123. base.Dispose(disposing);
  124. }
  125. private void FillSelect(EXEMPLE_VIKINGS viking)
  126. {
  127. TYPE_VIKINGFactory typeVikingFactory = new TYPE_VIKINGFactory(db);
  128. ViewBag.ID_TYPE = new SelectList(typeVikingFactory.getAll(), "ID", "TYPE", viking.ID_TYPE);
  129. }
  130. }
  131. }