コード例 #1
0
        public void Insert( )
        {
            muscle_log.framework.Models.MuscleLogContext ctx = new muscle_log.framework.Models.MuscleLogContext("metadata=res://*/Models.MuscleLogModel.csdl|res://*/Models.MuscleLogModel.ssdl|res://*/Models.MuscleLogModel.msl;provider=System.Data.SqlClient;provider connection string='data source=MAX-PC;Initial Catalog=muscle-log;User ID=Max-PC;integrated security=SSPI;multipleactiveresultsets=True;application name=EntityFramework'");
            var unitOfWork = new EFContextUnitOfWork(ctx);
            var repo = new Repository<ml_ForumThread>(unitOfWork);
            ForumThreadService service = new ForumThreadService(repo);
            int countBefore = service.ListThreads(muscle_log.framework.Util.Enum.Forums.Meta).Count();

            ForumThreadViewModel input = new ForumThreadViewModel( );
            input.ID = -1;
            input.UserID = 7;
            input.Title = "Testeintrag";
            input.Body = "Das ist ein Testeintrag. ~*</fsd !§$(%)=&??``´´'<<<><>>>@fsdf%%<%=fds";
            input.Forum = muscle_log.framework.Util.Enum.Forums.Meta;
            service.Save( input );

            int countAfter = service.ListThreads(muscle_log.framework.Util.Enum.Forums.Meta).Count();

            // there must be one more thread than  before
            Assert.AreEqual( countAfter, ( countBefore + 1 ) );

            // the id of the new thread must be bigger than 0
            Assert.Greater( input.ID, 0 );

            // the members of the input object and the output object must be equal
            var output = repo.Get(input.ID);
            Assert.AreNotEqual( input, output );
            Assert.AreEqual( input.Title, output.Title );
            Assert.AreEqual( input.Body, output.Body );
            Assert.AreEqual( input.Forum, output.Forum );
            Assert.AreEqual( input.UserID, output.UserID );

            unitOfWork.Dispose();
        }
コード例 #2
0
 /// <summary>
 /// lists the latest 10 forum threads
 /// </summary>
 /// <returns></returns>
 public ActionResult ListForumThreads( )
 {
     using (var unitOfWork = new EFContextUnitOfWork(new MuscleLogContext()))
     {
         var service = new ForumThreadService(new Repository<ml_ForumThread>(unitOfWork));
         return PartialView("_ListForumThreads", service.ListLatestThreads(10));
     }
 }
コード例 #3
0
 /// <summary>
 /// displays the recent activities
 /// </summary>
 /// <returns></returns>
 public ActionResult ListActivities( )
 {
     using (var unitOfWork = new EFContextUnitOfWork(new MuscleLogContext()))
     {
         var service = new ActivitiesService(new ActivityRepository(unitOfWork));
         return PartialView("_ListActivities", service.List());
     }
 }
コード例 #4
0
 /// <summary>
 /// returns the description of an exercise as a JSON result
 /// </summary>
 /// <param name="exerciseID">ID of the exercise</param>
 /// <returns>JSON object of the exercise description</returns>        
 public ActionResult GetExerciseDescription(int id)
 {
     ml_ExerciseLibrary exercise = null;
     using (var unitOfWork = new EFContextUnitOfWork(new MuscleLogContext()))
     {
         var service = new ExerciseLibraryService(new ExerciseRepository(unitOfWork));
         exercise = service.GetExercise(id);
     }
     return Json(exercise, JsonRequestBehavior.AllowGet);
 }
コード例 #5
0
        /// <summary>
        /// lists all exercises
        /// </summary>
        /// <returns></returns>
        public ActionResult Index()
        {
            var context = new MuscleLogContext();
            using(var unitOfWork = new EFContextUnitOfWork(context)) {
                var userService = new UserService(new Repository<ml_User>(unitOfWork));
                var exerciseService = new ExerciseLibraryService(new ExerciseRepository(unitOfWork));
                ViewData["UserCanEdit"] = userService.ExerciseAccess(CurrentUser, Convert.ToInt32(ConfigurationManager.AppSettings["EditExerciseRequiredLevel"]));
                return View(exerciseService.GetMuscleGroups());

            }
        }
コード例 #6
0
        public ActionResult Report( BugreportItemViewModel model )
        {
            if ( ModelState.IsValid ) {
                using (var unitOfWork = new EFContextUnitOfWork(new MuscleLogContext()))
                {
                    var service = new BugreportService(new Repository<ml_Bugreport>(unitOfWork));
                    service.Save(model);
                    TempData[ "successMessage" ] = "Vielen Dank für dein Feedback! Deine Rückmeldung wurde erfolgreich gespeichert.";
                }
            }

            return View( );
        }
コード例 #7
0
        /// <summary>
        /// saves or creates a new exercise library item. 
        /// </summary>
        /// <param name="model">ExerciseModel object to be saved</param>
        /// <returns>1 for success, 0 for error</returns>
        public JsonResult SaveExercise(string exerciseID, string exerciseDescription, string exerciseExecution)
        {
            int eID = -1;
            if(!Int32.TryParse(exerciseID, out eID) || eID == -1) return Json(0);

            ml_ExerciseLibrary exercise = new ml_ExerciseLibrary();
            exercise.ID = eID;
            exercise.ExerciseDescription = exerciseDescription;
            exercise.ExerciseExecution = exerciseExecution;

            using (var unitOfWork = new EFContextUnitOfWork(new MuscleLogContext()))
            {
                var service = new ExerciseLibraryService(new ExerciseRepository(unitOfWork));
                service.SaveExercise(exercise);
            }

            return Json(1);
        }
コード例 #8
0
        public void Update( )
        {
            muscle_log.framework.Models.MuscleLogContext ctx = new muscle_log.framework.Models.MuscleLogContext("metadata=res://*/Models.MuscleLogModel.csdl|res://*/Models.MuscleLogModel.ssdl|res://*/Models.MuscleLogModel.msl;provider=System.Data.SqlClient;provider connection string='data source=MAX-PC;Initial Catalog=muscle-log;User ID=Max-PC;integrated security=SSPI;multipleactiveresultsets=True;application name=EntityFramework'");
            var unitOfWork = new EFContextUnitOfWork(ctx);
            var repo = new Repository<ml_ForumThread>(unitOfWork);
            ForumThreadService service = new ForumThreadService(repo);

            ml_ForumThread model = service.GetThread(6);

            int beforeTraining = service.ListThreads(muscle_log.framework.Util.Enum.Forums.Training).Count();
            int beforeMeta = service.ListThreads(muscle_log.framework.Util.Enum.Forums.Meta).Count();
            model.Forum = muscle_log.framework.Util.Enum.Forums.Training.ToString();
            service.Save(model);

            ml_ForumThread modelAfterChange = repo.Get(model.ID);
            int afterTraining = service.ListThreads(muscle_log.framework.Util.Enum.Forums.Training).Count();
            int afterMeta = service.ListThreads(muscle_log.framework.Util.Enum.Forums.Meta).Count();

            Assert.AreNotEqual(afterTraining, beforeTraining);
            Assert.AreNotEqual(afterMeta, beforeMeta);
            Assert.AreNotEqual(model.LUDT, modelAfterChange.LUDT);

            unitOfWork.Dispose();
        }
コード例 #9
0
        public void Setup()
        {
            _context = new MuscleLogContext("metadata=res://*/Models.MuscleLogModel.csdl|res://*/Models.MuscleLogModel.ssdl|res://*/Models.MuscleLogModel.msl;provider=System.Data.SqlClient;provider connection string='data source=MAX-PC;Initial Catalog=muscle-log;User ID=Max-PC;integrated security=SSPI;multipleactiveresultsets=True;application name=EntityFramework'");
            _unitOfWork = new EFContextUnitOfWork(_context);
            _repository = new Repository<ml_Bugreport>(_unitOfWork);

            _addedEntities = new List<ml_Bugreport>();
            _deletedEntities = new List<ml_Bugreport>();
            _updatedEntities = new List<ml_Bugreport>();
        }
コード例 #10
0
 public ActivityRepository(EFContextUnitOfWork unitOfWork)
 {
     _unitOfWork = unitOfWork;
 }