aboutsummaryrefslogtreecommitdiff
path: root/src/Data
diff options
context:
space:
mode:
authortranstrike <transtrike@gmail.com>2021-02-19 18:28:16 +0200
committertranstrike <transtrike@gmail.com>2021-02-19 18:28:16 +0200
commit3410581312b1f1eb8607b8ca534cf4d8f1471d96 (patch)
tree6a3d3e73525f4ff18e1159b441366259f8bf831b /src/Data
parent02cf7a097c781cd0ef9e844078e873fcda5a3fcd (diff)
downloadDevHive-lazy_loading.tar
DevHive-lazy_loading.tar.gz
DevHive-lazy_loading.zip
Lazy loading craching VS Code on debug sessionlazy_loading
Diffstat (limited to 'src/Data')
-rw-r--r--src/Data/DevHive.Data.Models/Comment.cs4
-rw-r--r--src/Data/DevHive.Data.Models/Language.cs2
-rw-r--r--src/Data/DevHive.Data.Models/Post.cs8
-rw-r--r--src/Data/DevHive.Data.Models/ProfilePicture.cs3
-rw-r--r--src/Data/DevHive.Data.Models/Rating.cs2
-rw-r--r--src/Data/DevHive.Data.Models/RelationalModels/PostAttachments.cs2
-rw-r--r--src/Data/DevHive.Data.Models/RelationalModels/RatedPost.cs4
-rw-r--r--src/Data/DevHive.Data.Models/RelationalModels/UserRate.cs4
-rw-r--r--src/Data/DevHive.Data.Models/Role.cs2
-rw-r--r--src/Data/DevHive.Data.Models/Technology.cs2
-rw-r--r--src/Data/DevHive.Data.Models/User.cs16
-rw-r--r--src/Data/DevHive.Data/Repositories/UserRepository.cs28
12 files changed, 40 insertions, 37 deletions
diff --git a/src/Data/DevHive.Data.Models/Comment.cs b/src/Data/DevHive.Data.Models/Comment.cs
index f907e43..8c42b75 100644
--- a/src/Data/DevHive.Data.Models/Comment.cs
+++ b/src/Data/DevHive.Data.Models/Comment.cs
@@ -9,11 +9,11 @@ namespace DevHive.Data.Models
// public Guid PostId { get; set; }
- public Post Post { get; set; }
+ public virtual Post Post { get; set; }
// public Guid CreatorId { get; set; }
- public User Creator { get; set; }
+ public virtual User Creator { get; set; }
public string Message { get; set; }
diff --git a/src/Data/DevHive.Data.Models/Language.cs b/src/Data/DevHive.Data.Models/Language.cs
index fdcfb07..c1df5be 100644
--- a/src/Data/DevHive.Data.Models/Language.cs
+++ b/src/Data/DevHive.Data.Models/Language.cs
@@ -10,6 +10,6 @@ namespace DevHive.Data.Models
public string Name { get; set; }
- public HashSet<User> Users { get; set; } = new();
+ public virtual HashSet<User> Users { get; set; } = new();
}
}
diff --git a/src/Data/DevHive.Data.Models/Post.cs b/src/Data/DevHive.Data.Models/Post.cs
index 15b6b77..5b0faad 100644
--- a/src/Data/DevHive.Data.Models/Post.cs
+++ b/src/Data/DevHive.Data.Models/Post.cs
@@ -11,16 +11,16 @@ namespace DevHive.Data.Models
{
public Guid Id { get; set; }
- public User Creator { get; set; }
+ public virtual User Creator { get; set; }
public string Message { get; set; }
public DateTime TimeCreated { get; set; }
- public List<Comment> Comments { get; set; } = new();
+ public virtual List<Comment> Comments { get; set; } = new();
- public Rating Rating { get; set; } = new();
+ public virtual Rating Rating { get; set; } = new();
- public List<PostAttachments> Attachments { get; set; } = new();
+ public virtual List<PostAttachments> Attachments { get; set; } = new();
}
}
diff --git a/src/Data/DevHive.Data.Models/ProfilePicture.cs b/src/Data/DevHive.Data.Models/ProfilePicture.cs
index c502654..596591e 100644
--- a/src/Data/DevHive.Data.Models/ProfilePicture.cs
+++ b/src/Data/DevHive.Data.Models/ProfilePicture.cs
@@ -8,7 +8,8 @@ namespace DevHive.Data.Models
public Guid Id { get; set; }
public Guid UserId { get; set; }
- public User User { get; set; }
+
+ public virtual User User { get; set; }
public string PictureURL { get; set; }
}
diff --git a/src/Data/DevHive.Data.Models/Rating.cs b/src/Data/DevHive.Data.Models/Rating.cs
index 13fdbce..10bed36 100644
--- a/src/Data/DevHive.Data.Models/Rating.cs
+++ b/src/Data/DevHive.Data.Models/Rating.cs
@@ -10,7 +10,7 @@ namespace DevHive.Data.Models
public Guid PostId { get; set; }
- public Post Post { get; set; }
+ public virtual Post Post { get; set; }
public int Rate { get; set; }
}
diff --git a/src/Data/DevHive.Data.Models/RelationalModels/PostAttachments.cs b/src/Data/DevHive.Data.Models/RelationalModels/PostAttachments.cs
index 8c814fc..40ce861 100644
--- a/src/Data/DevHive.Data.Models/RelationalModels/PostAttachments.cs
+++ b/src/Data/DevHive.Data.Models/RelationalModels/PostAttachments.cs
@@ -9,7 +9,7 @@ namespace DevHive.Data.Models.Relational
{
public Guid Id { get; set; }
- public Post Post { get; set; }
+ public virtual Post Post { get; set; }
public string FileUrl { get; set; }
}
diff --git a/src/Data/DevHive.Data.Models/RelationalModels/RatedPost.cs b/src/Data/DevHive.Data.Models/RelationalModels/RatedPost.cs
index fb63848..2a72c6f 100644
--- a/src/Data/DevHive.Data.Models/RelationalModels/RatedPost.cs
+++ b/src/Data/DevHive.Data.Models/RelationalModels/RatedPost.cs
@@ -10,9 +10,9 @@ namespace DevHive.Data.Models.Relational
public class RatedPost
{
public Guid UserId { get; set; }
- public User User { get; set; }
+ public virtual User User { get; set; }
public Guid PostId { get; set; }
- public Post Post { get; set; }
+ public virtual Post Post { get; set; }
}
}
diff --git a/src/Data/DevHive.Data.Models/RelationalModels/UserRate.cs b/src/Data/DevHive.Data.Models/RelationalModels/UserRate.cs
index 46bd605..8e82d29 100644
--- a/src/Data/DevHive.Data.Models/RelationalModels/UserRate.cs
+++ b/src/Data/DevHive.Data.Models/RelationalModels/UserRate.cs
@@ -9,10 +9,10 @@ namespace DevHive.Data.Models.Relational
{
public Guid Id { get; set; }
- public User User { get; set; }
+ public virtual User User { get; set; }
public bool Liked { get; set; }
- public Post Post { get; set; }
+ public virtual Post Post { get; set; }
}
}
diff --git a/src/Data/DevHive.Data.Models/Role.cs b/src/Data/DevHive.Data.Models/Role.cs
index 0df556c..55fc9fc 100644
--- a/src/Data/DevHive.Data.Models/Role.cs
+++ b/src/Data/DevHive.Data.Models/Role.cs
@@ -12,6 +12,6 @@ namespace DevHive.Data.Models
public const string DefaultRole = "User";
public const string AdminRole = "Admin";
- public HashSet<User> Users { get; set; } = new();
+ public virtual HashSet<User> Users { get; set; } = new();
}
}
diff --git a/src/Data/DevHive.Data.Models/Technology.cs b/src/Data/DevHive.Data.Models/Technology.cs
index 9354d5b..17b60dd 100644
--- a/src/Data/DevHive.Data.Models/Technology.cs
+++ b/src/Data/DevHive.Data.Models/Technology.cs
@@ -10,6 +10,6 @@ namespace DevHive.Data.Models
public string Name { get; set; }
- public HashSet<User> Users { get; set; } = new();
+ public virtual HashSet<User> Users { get; set; } = new();
}
}
diff --git a/src/Data/DevHive.Data.Models/User.cs b/src/Data/DevHive.Data.Models/User.cs
index bac5425..1c61eba 100644
--- a/src/Data/DevHive.Data.Models/User.cs
+++ b/src/Data/DevHive.Data.Models/User.cs
@@ -14,20 +14,20 @@ namespace DevHive.Data.Models
public string LastName { get; set; }
- public ProfilePicture ProfilePicture { get; set; } = new() { PictureURL = "/assets/images/feed/profile-pic.png" };
+ public virtual ProfilePicture ProfilePicture { get; set; } = new() { PictureURL = "/assets/images/feed/profile-pic.png" };
- public HashSet<Language> Languages { get; set; } = new();
+ public virtual HashSet<Language> Languages { get; set; } = new();
- public HashSet<Technology> Technologies { get; set; } = new();
+ public virtual HashSet<Technology> Technologies { get; set; } = new();
- public HashSet<Role> Roles { get; set; } = new();
+ public virtual HashSet<Role> Roles { get; set; } = new();
- public HashSet<Post> Posts { get; set; } = new();
+ public virtual HashSet<Post> Posts { get; set; } = new();
- public HashSet<User> Friends { get; set; } = new();
+ public virtual HashSet<User> Friends { get; set; } = new();
- public HashSet<Comment> Comments { get; set; } = new();
+ public virtual HashSet<Comment> Comments { get; set; } = new();
- public HashSet<RatedPost> RatedPosts { get; set; } = new();
+ public virtual HashSet<RatedPost> RatedPosts { get; set; } = new();
}
}
diff --git a/src/Data/DevHive.Data/Repositories/UserRepository.cs b/src/Data/DevHive.Data/Repositories/UserRepository.cs
index d570480..fb5faef 100644
--- a/src/Data/DevHive.Data/Repositories/UserRepository.cs
+++ b/src/Data/DevHive.Data/Repositories/UserRepository.cs
@@ -32,11 +32,11 @@ namespace DevHive.Data.Repositories
public async Task<bool> AddRoleToUser(User user, string roleName)
{
bool succeeded = (await this._userManager.AddToRoleAsync(user, roleName)).Succeeded;
- if (succeeded)
- {
- user.Roles.Add(await this._roleManager.FindByNameAsync(roleName));
- succeeded = await this.SaveChangesAsync();
- }
+ // if (succeeded)
+ // {
+ // user.Roles.Add(await this._roleManager.FindByNameAsync(roleName));
+ // succeeded = await this.SaveChangesAsync();
+ // }
return succeeded;
}
@@ -45,14 +45,16 @@ namespace DevHive.Data.Repositories
#region Read
public override async Task<User> GetByIdAsync(Guid id)
{
- return await this._userManager.Users
- .Include(x => x.Roles)
- .Include(x => x.Languages)
- .Include(x => x.Technologies)
- .Include(x => x.Posts)
- .Include(x => x.Friends)
- .Include(x => x.ProfilePicture)
- .FirstOrDefaultAsync(x => x.Id == id);
+ return await this._userManager.FindByIdAsync(id.ToString());
+
+ // return await this._userManager.Users
+ // .Include(x => x.Roles)
+ // .Include(x => x.Languages)
+ // .Include(x => x.Technologies)
+ // .Include(x => x.Posts)
+ // .Include(x => x.Friends)
+ // .Include(x => x.ProfilePicture)
+ // .FirstOrDefaultAsync(x => x.Id == id);
}
public async Task<User> GetByUsernameAsync(string username)