Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 15th, 2012  |  syntax: None  |  size: 0.98 KB  |  hits: 16  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Best strategy for unit testing controller front to back in ASP.NET using DI
  2. private readonly IRepository repository;
  3. private readonly IMappingEngine mappingEngine;
  4. private readonly ILogger logger;
  5.  
  6. public DossierController(IRepository repository, IMappingEngine mappingEngine, ILogger logger)
  7. {
  8.   this.repository = repository;
  9.   this.mappingEngine = mappingEngine;
  10.   this.logger = logger;
  11. }
  12.        
  13. [HttpPost]
  14. [ActionName("Dossier")]
  15. [AcceptVerbs(HttpVerbs.Post)]
  16. [AcceptParameter(Name = "button", Value = "save")]
  17. public ActionResult Dossier_Save(string button, DossierModel dossierModel, string returnUrl)
  18. {
  19.   if (!Request.IsAuthenticated)
  20.     return RedirectToAction("Index", "Home");
  21.  
  22.   if (!ModelState.IsValid) return View(dossierModel);
  23.  
  24.   Dossier dossier = mappingEngine.Map<DossierModel, Dossier>(dossierModel);
  25.   dossier.DigitaleHandtekeningDatum = new DateTime(2011, 11, 11);
  26.  
  27.   repository.TransactionBegin();
  28.   repository.Save(dossier);
  29.   repository.TransactionCommit();
  30.  
  31.   return View();
  32. }