コード例 #1
0
ファイル: UserProvider.cs プロジェクト: dimonKomaran/course
 public List<User> GetBestUsers(int count)
 {
     List<User> lst;
     using (var db = new DataContext())
     {
         lst = db.Users.OrderByDescending(user => user.Rate).Take(count).ToList();
     }
     return lst;
 }
コード例 #2
0
ファイル: CourseDatabase.cs プロジェクト: dimonKomaran/course
 public CourseDatabase()
 {
     Context = new DataContext();
     Tasks = new TaskRepository(Context);
     Users = new UserRepository(Context);
     Tags = new TagsRepository(Context);
     Answers = new AnswerRepository(Context);
     Search = new SearchRepository();
 }
コード例 #3
0
ファイル: TagsProvider.cs プロジェクト: dimonKomaran/course
 public List<Tag> GetPopularTags(int count)
 {
     List<Tag> lst;
     using (var db = new DataContext())
     {
         lst = db.Tags.OrderBy(tag => tag.Tasks.Count()).Take(count).ToList();
     }
     return lst;
 }
コード例 #4
0
ファイル: TasksProvider.cs プロジェクト: dimonKomaran/course
 /// <summary>
 /// Delete Task specified in TaskModel.
 /// </summary>
 /// <param name="deleteTaskModel">TaskModel of Task to delete.</param>
 public void DeleteTask(TaskModel deleteTaskModel)
 {
     using (var db = new DataContext())
     {
         var userProvider = new UserProvider();
         User currentUser = userProvider.GetCurrentUser(db);
         var deletingTask = currentUser.Tasks.FirstOrDefault(deleteTask => deleteTask.Title == deleteTaskModel.Title);
         currentUser.Tasks.Remove(deletingTask);
         db.SaveChanges();
     }
 }
コード例 #5
0
ファイル: TasksProvider.cs プロジェクト: dimonKomaran/course
 public void AddTask(TaskModel model)
 {
     using (var db = new DataContext())
     {
          var tag = new Tag {TagId = Guid.NewGuid(), TagName = "dasd"};
         var newTask = new Task
                            {
                                TaskId = Guid.NewGuid(),
                                Title = model.Title,
                                CreationDate = DateTime.UtcNow,
                            };
         db.Tags.Add(tag);
         newTask.Tags.Add(tag);
         var userProvider = new UserProvider();
         userProvider.GetCurrentUser(db).Tasks.Add(newTask);
         newTask.UserOwner = userProvider.GetCurrentUser(db);
         db.Tasks.Add(newTask);
         db.SaveChanges();
     }
 }
コード例 #6
0
ファイル: TasksProvider.cs プロジェクト: dimonKomaran/course
 private IEnumerable<Tag> InitializeTags(DataContext db,IEnumerable<String> tagNames)
 {
     var tags = new List<Tag>();
     foreach (var tagString in tagNames)
     {
         var tag = db.Tags.Create();
         tag.TagId = Guid.NewGuid();
         tag.TagName = tagString;
         tags.Add(tag);
     }
     return tags;
 }
コード例 #7
0
ファイル: TasksProvider.cs プロジェクト: dimonKomaran/course
 public void LikeTask(Guid id)
 {
     using (var db = new DataContext())
     {
         var userProvider = new UserProvider();
         Task task = GetTaskById(id);
         if (!userProvider.IsUserLikedTask(db,task))
         {
             userProvider.AddTaskLiked(db,task);
             IncrementLikes(id);
        //     DbContext.Entry(user).State = EntityState.Modified;
             db.SaveChanges();
         }
     }
 }
コード例 #8
0
ファイル: TasksProvider.cs プロジェクト: dimonKomaran/course
 public Task GetTaskById(Guid id)
 {
     using (var db = new DataContext())
     {
         return db.Tasks.FirstOrDefault(task => task.TaskId == id);
     }
 }
コード例 #9
0
ファイル: TasksProvider.cs プロジェクト: dimonKomaran/course
 public List<Task> GetLastTasks()
 {
     List<Task> lst;
     using (var db = new DataContext())
     {
         lst = db.Tasks.OrderByDescending(task => task.CreationDate).Take(10).ToList();
     }
     return lst;
 }
コード例 #10
0
ファイル: WebSecurity.cs プロジェクト: dimonKomaran/course
        public static MembershipCreateStatus Register(string username, string password, string email, bool IsApproved)
        {
            MembershipCreateStatus createStatus;
            System.Web.Security.Membership.CreateUser(username, password, email, null, null, IsApproved, Guid.NewGuid(), out createStatus);

            if (createStatus == MembershipCreateStatus.Success)
            {
                using (var context = new DataContext())
                {
                    context.SaveChanges();
                }
            }

            return createStatus;
        }
コード例 #11
0
ファイル: UserProvider.cs プロジェクト: dimonKomaran/course
 public void AddTaskLiked(DataContext db, Task task)
 {
     this.GetCurrentUser(db).TasksLiked.Add(task);
 }
コード例 #12
0
ファイル: UserProvider.cs プロジェクト: dimonKomaran/course
 public bool IsUserLikedTask(DataContext db, Task task)
 {
     return this.GetCurrentUser(db).TasksLiked.Find(taskFind => taskFind.TaskId == task.TaskId) != null;
 }
コード例 #13
0
ファイル: TasksProvider.cs プロジェクト: dimonKomaran/course
 public IEnumerable<Task> GetAllTasksByUserName(string username)
 {
     using (var db = new DataContext())
     {
         var userProvider = new UserProvider();
         return userProvider.GetUserByUsername(db, username).Tasks;
     }
 }
コード例 #14
0
ファイル: TagsProvider.cs プロジェクト: dimonKomaran/course
 public List<Tag> GetPopularTags(DataContext db,int count)
 {
     return db.Tags.OrderBy(tag => tag.Tasks.Count()).Take(count).ToList();
 }
コード例 #15
0
 public void AddCathegory(DataContext db,CathegoryModel model)
 {
     Cathegory newCathegory = db.Cathegories.Create();
     InitializeCathegory(model,newCathegory);
     db.SaveChanges();
 }
コード例 #16
0
ファイル: UserProvider.cs プロジェクト: dimonKomaran/course
 public User GetUserByUsername(DataContext db, String username)
 {
     return db.Users.FirstOrDefault(user => user.Username == username);
 }
コード例 #17
0
ファイル: UserProvider.cs プロジェクト: dimonKomaran/course
 public User GetUserById(DataContext db, Guid id)
 {
     return db.Users.FirstOrDefault(user => user.UserId == id);
 }
コード例 #18
0
ファイル: UserProvider.cs プロジェクト: dimonKomaran/course
 public User GetCurrentUser(DataContext db)
 {
     return this.GetUserByUsername(db,WebSecurity.User.Identity.Name);
 }
コード例 #19
0
ファイル: TagsProvider.cs プロジェクト: dimonKomaran/course
 public Tag GetTagById(DataContext db, Guid id)
 {
     return db.Tags.First(tag => tag.TagId == id);
 }
コード例 #20
0
ファイル: TagsProvider.cs プロジェクト: dimonKomaran/course
 public IEnumerable<Task> GetTagTasks(DataContext db, Guid id, int count)
 {
     Tag selectedTag = GetTagById(db, id);
     return selectedTag.Tasks.Take(count);
 }
コード例 #21
0
ファイル: TasksProvider.cs プロジェクト: dimonKomaran/course
 /// <summary>
 /// Return all currnet User Tasks 
 /// </summary>
 /// <returns>UserTasks</returns>
 public IEnumerable<Task> GetCurrentUserTasks()
 {
     using (var db = new DataContext())
     {
         var userProvider = new UserProvider();
         return userProvider.GetCurrentUser(db).Tasks;
     }
 }
コード例 #22
0
ファイル: UserProvider.cs プロジェクト: dimonKomaran/course
 public IEnumerable<User> GetUsers(DataContext db, int index, int count)
 {
     return db.Users.Skip(index).Take(count);
 }