TopModel.cs 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using CD67.FicheCollege.Entity;
  2. using System.Collections.Generic;
  3. namespace CD67.FicheCollege.MVC.Models
  4. {
  5. // Wrapper du modele qui permet d'emmener des informations suppelementaires avec celui-ci.
  6. public class TopModel
  7. {
  8. // Modele de la page en cours
  9. public dynamic Model { get; set; }
  10. // Obj est l'equivalent de Model, en peut-être plus clair
  11. public dynamic Obj { get { return Model; } }
  12. // (Facultatif) Mode d'accès à la page
  13. // Defaut: Lecture
  14. public ModeAcces Acces { get; set; }
  15. // Permet d'emporter d'éventuelles données complémentaires
  16. // comme les listes qui serviront entre autre à peupler les listes déroulantes.
  17. public Dictionary<string, object> Bag { get; set; } = new Dictionary<string, object>();
  18. // Utilisateur courant
  19. public UtilisateurConnecte User = CD67.FicheCollege.MVC.Internal.UtilisateurConnecteFactory.getUtilisateurConnecte();
  20. // ***************************
  21. // Constructeur de base
  22. public TopModel(object model,
  23. ModeAcces acces = ModeAcces.Lecture,
  24. Dictionary<string, object> bag = null)
  25. {
  26. Model = model;
  27. Acces = acces;
  28. if (bag != null)
  29. Bag = bag;
  30. }
  31. // Constructeur particuliers
  32. public TopModel(Annee model,
  33. ModeAcces acces = ModeAcces.Lecture,
  34. Dictionary<string, object> bag = null)
  35. {
  36. Model = model;
  37. Acces = acces;
  38. if (bag != null)
  39. Bag = bag;
  40. Bag["Annee_Lib"] = model.Libelle;
  41. }
  42. }
  43. }