From 1ec9d1123e663fdc7f374d26fa1d38c0db057db1 Mon Sep 17 00:00:00 2001 From: alexandre-spieser Date: Wed, 7 Mar 2018 22:50:24 +0000 Subject: [PATCH] Add support for documents with and Id of type ObjectId. --- .../MongoIdentitySample.Mvc.csproj | 2 +- src/AspNetCore.Identity.MongoDbCore.csproj | 2 +- src/AspNetCore.Identity.MongoDbCore.nuspec | 8 +- src/Extensions/StringExtensions.cs | 31 ++++++ src/Models/MongoIdentityRole.cs | 38 +++----- src/Models/MongoIdentityUser.cs | 46 +++------ src/MongoRoleStore.cs | 27 +++--- src/MongoUserOnlyStore.cs | 15 ++- src/MongoUserStore.cs | 88 +++++++++++------- .../AspNetCore.Identity.MongoDbCore.deps.json | 14 +-- .../AspNetCore.Identity.MongoDbCore.dll | Bin 104960 -> 104960 bytes .../AspNetCore.Identity.MongoDbCore.xml | 45 ++++++++- .../AspNetCore.Identity.MongoDbCore.deps.json | 14 +-- .../AspNetCore.Identity.MongoDbCore.dll | Bin 104448 -> 104448 bytes .../AspNetCore.Identity.MongoDbCore.xml | 45 ++++++++- ...entity.MongoDbCore.IntegrationTests.csproj | 4 +- .../MongoDbStoreTestBase.cs | 2 +- .../SqlStoreOnlyUsersTestBase.cs | 2 +- .../UserStoreObjectIdKeyTest.cs | 56 +++++++++++ .../Utilities/MongoDatabaseFixture.cs | 6 +- 20 files changed, 291 insertions(+), 154 deletions(-) create mode 100644 src/Extensions/StringExtensions.cs create mode 100644 test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/UserStoreObjectIdKeyTest.cs diff --git a/sample/MongoIdentitySample.Mvc/MongoIdentitySample.Mvc.csproj b/sample/MongoIdentitySample.Mvc/MongoIdentitySample.Mvc.csproj index 9ee5219..8aa2573 100644 --- a/sample/MongoIdentitySample.Mvc/MongoIdentitySample.Mvc.csproj +++ b/sample/MongoIdentitySample.Mvc/MongoIdentitySample.Mvc.csproj @@ -8,7 +8,7 @@ - + diff --git a/src/AspNetCore.Identity.MongoDbCore.csproj b/src/AspNetCore.Identity.MongoDbCore.csproj index ce62933..eeda372 100644 --- a/src/AspNetCore.Identity.MongoDbCore.csproj +++ b/src/AspNetCore.Identity.MongoDbCore.csproj @@ -17,7 +17,7 @@ - + diff --git a/src/AspNetCore.Identity.MongoDbCore.nuspec b/src/AspNetCore.Identity.MongoDbCore.nuspec index cfa33ef..3490dd3 100644 --- a/src/AspNetCore.Identity.MongoDbCore.nuspec +++ b/src/AspNetCore.Identity.MongoDbCore.nuspec @@ -2,7 +2,7 @@ AspNetCore.Identity.MongoDbCore - 1.0.7 + 1.0.8 AspNetCore.Identity.MongoDbCore Alexandre Spieser Alexandre Spieser @@ -10,14 +10,14 @@ https://github.com/alexandre-spieser/AspNetCore.Identity.MongoDbCore false A MongoDb UserStore and RoleStore adapter for Microsoft.AspNetCore.Identity 2.0. - MongoDB 3.6 Support, Identity 2.0.1 upgrade. - Copyright 2017 (c) Alexandre Spieser. All rights reserved. + Added support for documents with an Id of type ObjectId. + Copyright 2018 (c) Alexandre Spieser. All rights reserved. aspnetcore mongo mongodb identity membership - + diff --git a/src/Extensions/StringExtensions.cs b/src/Extensions/StringExtensions.cs new file mode 100644 index 0000000..f9b3300 --- /dev/null +++ b/src/Extensions/StringExtensions.cs @@ -0,0 +1,31 @@ +using MongoDB.Bson; +using System.ComponentModel; + +namespace AspNetCore.Identity.MongoDbCore.Extensions +{ + /// + /// A set of extensions for string. + /// + public static class StringExtensions + { + /// + /// Converts the provided to a strongly typed key object. + /// + /// + /// + /// + public static TKey ToTKey(this string id) + { + if (id == null) + { + return default(TKey); + } + var typeOfKey = typeof(TKey); + if (typeOfKey.Name != "ObjectId") + { + return (TKey)TypeDescriptor.GetConverter(typeOfKey).ConvertFromInvariantString(id); + } + return (TKey)(object)(new ObjectId(id)); + } + } +} diff --git a/src/Models/MongoIdentityRole.cs b/src/Models/MongoIdentityRole.cs index 3ee76a7..698a1db 100644 --- a/src/Models/MongoIdentityRole.cs +++ b/src/Models/MongoIdentityRole.cs @@ -2,6 +2,7 @@ using AspNetCore.Identity.MongoDbCore.Interfaces; using Microsoft.AspNetCore.Identity; using MongoDbGenericRepository.Models; +using MongoDbGenericRepository.Utils; using System; using System.Collections.Generic; @@ -56,33 +57,6 @@ namespace AspNetCore.Identity.MongoDbCore.Models public class MongoIdentityRole : IdentityRole, IDocument, IClaimHolder where TKey : IEquatable { - - private void InitializeFields() - { - Version = 1; - Claims = new List(); - Guid guidValue = Guid.NewGuid(); - var idTypeName = typeof(TKey).Name; - switch (idTypeName) - { - case "Guid": - Id = (TKey)(object)guidValue; - break; - case "Int16": - Id = (TKey)(object)GlobalVariables.Random.Next(1, short.MaxValue); - break; - case "Int32": - Id = (TKey)(object)GlobalVariables.Random.Next(1, int.MaxValue); - break; - case "Int64": - Id = (TKey)(object)(GlobalVariables.Random.NextLong(1, long.MaxValue)); - break; - case "String": - Id = (TKey)(object)guidValue.ToString(); - break; - } - } - /// /// The constructor for a /// @@ -101,6 +75,16 @@ namespace AspNetCore.Identity.MongoDbCore.Models InitializeFields(); } + /// + /// Initialize the field of the MongoIdentityRole + /// + protected virtual void InitializeFields() + { + Version = 1; + Claims = new List(); + Id = IdGenerator.GetId(); + } + /// /// The constructor for a , taking a role name and a primary key value. /// diff --git a/src/Models/MongoIdentityUser.cs b/src/Models/MongoIdentityUser.cs index c983dea..bec8759 100644 --- a/src/Models/MongoIdentityUser.cs +++ b/src/Models/MongoIdentityUser.cs @@ -6,6 +6,7 @@ using MongoDB.Driver; using AspNetCore.Identity.MongoDbCore.Interfaces; using Microsoft.AspNetCore.Identity; using AspNetCore.Identity.MongoDbCore.Extensions; +using MongoDbGenericRepository.Utils; namespace AspNetCore.Identity.MongoDbCore.Models { @@ -134,7 +135,19 @@ namespace AspNetCore.Identity.MongoDbCore.Models UserName = userName ?? throw new ArgumentNullException(nameof(userName)); SetVersion(1); InitializeFields(); + } + + /// + /// Initialize the field of the MongoIdentityUser + /// + protected virtual void InitializeFields() + { + CreatedOn = DateTime.UtcNow; + Claims = new List(); + Logins = new List(); Roles = new List(); + Tokens = new List(); + Id = IdGenerator.GetId(); } /// @@ -166,7 +179,6 @@ namespace AspNetCore.Identity.MongoDbCore.Models return false; } - /// /// Add a role to the user. /// @@ -266,7 +278,6 @@ namespace AspNetCore.Identity.MongoDbCore.Models #region Token Management - /// /// Sets the token to a new value. /// @@ -360,36 +371,5 @@ namespace AspNetCore.Identity.MongoDbCore.Models #endregion Token Management - private void InitializeFields() - { - CreatedOn = DateTime.UtcNow; - Claims = new List(); - Logins = new List(); - Roles = new List(); - Tokens = new List(); - Guid guidValue = Guid.NewGuid(); - - var idTypeName = typeof(TKey).Name; - switch (idTypeName) - { - case "Guid": - Id = (TKey)(object)guidValue; - break; - case "Int16": - Id = (TKey)(object)GlobalVariables.Random.Next(1, short.MaxValue); - break; - case "Int32": - Id = (TKey)(object)GlobalVariables.Random.Next(1, int.MaxValue); - break; - case "Int64": - Id = (TKey)(object)(GlobalVariables.Random.NextLong(1, long.MaxValue)); - break; - case "String": - Id = (TKey)(object)guidValue.ToString(); - break; - } - - } - } } \ No newline at end of file diff --git a/src/MongoRoleStore.cs b/src/MongoRoleStore.cs index bfe9ed3..bfed4dc 100644 --- a/src/MongoRoleStore.cs +++ b/src/MongoRoleStore.cs @@ -123,6 +123,16 @@ namespace AspNetCore.Identity.MongoDbCore } } + /// + /// A navigation property for the roles the store contains. + /// + public virtual IQueryable Roles => RolesCollection.AsQueryable(); + + /// + /// A navigation property for the roles the store contains. + /// + public virtual IMongoCollection RolesCollection => Context.GetCollection(); + /// /// Gets or sets the for any error that occurred with the current operation. /// @@ -170,8 +180,7 @@ namespace AspNetCore.Identity.MongoDbCore } var oldStamp = role.ConcurrencyStamp; role.ConcurrencyStamp = Guid.NewGuid().ToString(); - var collection = MongoRepository.Context.GetCollection(); - var updateRes = await collection.ReplaceOneAsync(x => x.Id.Equals(role.Id) + var updateRes = await RolesCollection.ReplaceOneAsync(x => x.Id.Equals(role.Id) && x.ConcurrencyStamp.Equals(oldStamp), role); if (updateRes.ModifiedCount == 0) @@ -197,8 +206,7 @@ namespace AspNetCore.Identity.MongoDbCore } var oldStamp = role.ConcurrencyStamp; role.ConcurrencyStamp = Guid.NewGuid().ToString(); - var collection = MongoRepository.Context.GetCollection(); - var deleteRes = await collection.DeleteOneAsync(x => x.Id.Equals(role.Id) + var deleteRes = await RolesCollection.DeleteOneAsync(x => x.Id.Equals(role.Id) && x.ConcurrencyStamp.Equals(oldStamp)); if (deleteRes.DeletedCount == 0) { @@ -272,11 +280,7 @@ namespace AspNetCore.Identity.MongoDbCore /// An instance of representing the provided . public virtual TKey ConvertIdFromString(string id) { - if (id == null) - { - return default(TKey); - } - return (TKey)TypeDescriptor.GetConverter(typeof(TKey)).ConvertFromInvariantString(id); + return id.ToTKey(); } /// @@ -448,10 +452,7 @@ namespace AspNetCore.Identity.MongoDbCore } } - /// - /// A navigation property for the roles the store contains. - /// - public virtual IQueryable Roles => Context.GetCollection().AsQueryable(); + /// /// Creates a entity representing a role claim. diff --git a/src/MongoUserOnlyStore.cs b/src/MongoUserOnlyStore.cs index 571d918..f99adb0 100644 --- a/src/MongoUserOnlyStore.cs +++ b/src/MongoUserOnlyStore.cs @@ -118,7 +118,7 @@ namespace AspNetCore.Identity.MongoDbCore } } - private IMongoCollection UsersSet { get { return Context.GetCollection(); } } + private IMongoCollection UsersCollection { get { return Context.GetCollection(); } } /// /// Gets or sets a flag indicating if changes should be persisted after CreateAsync, UpdateAsync and DeleteAsync are called. @@ -150,7 +150,7 @@ namespace AspNetCore.Identity.MongoDbCore { throw new ArgumentNullException(nameof(user)); } - await UsersSet.InsertOneAsync(user); + await UsersCollection.InsertOneAsync(user); await SaveChanges(cancellationToken); return IdentityResult.Success; } @@ -171,8 +171,7 @@ namespace AspNetCore.Identity.MongoDbCore } var oldStamp = user.ConcurrencyStamp; user.ConcurrencyStamp = Guid.NewGuid().ToString(); - var collection = MongoRepository.Context.GetCollection(); - var updateRes = await collection.ReplaceOneAsync(x => x.Id.Equals(user.Id) + var updateRes = await UsersCollection.ReplaceOneAsync(x => x.Id.Equals(user.Id) && x.ConcurrencyStamp.Equals(oldStamp), user); if(updateRes.ModifiedCount == 0) @@ -202,8 +201,7 @@ namespace AspNetCore.Identity.MongoDbCore user.Tokens.Clear(); var oldStamp = user.ConcurrencyStamp; user.ConcurrencyStamp = Guid.NewGuid().ToString(); - var collection = MongoRepository.Context.GetCollection(); - var deleteRes = await collection.DeleteOneAsync(x => x.Id.Equals(user.Id) + var deleteRes = await UsersCollection.DeleteOneAsync(x => x.Id.Equals(user.Id) && x.ConcurrencyStamp.Equals(oldStamp)); if (deleteRes.DeletedCount == 0) { @@ -248,7 +246,7 @@ namespace AspNetCore.Identity.MongoDbCore /// public override IQueryable Users { - get { return UsersSet.AsQueryable(); } + get { return UsersCollection.AsQueryable(); } } /// @@ -539,8 +537,7 @@ namespace AspNetCore.Identity.MongoDbCore } var filter = Builders.Filter.ElemMatch(x => x.Claims, userClaims => userClaims.Value.Equals(claim.Value) && userClaims.Type.Equals(claim.Type)); - var collection = MongoRepository.Context.GetCollection(); - var cursor = collection.Find(filter); + var cursor = UsersCollection.Find(filter); var res = await cursor.ToListAsync(); return res; } diff --git a/src/MongoUserStore.cs b/src/MongoUserStore.cs index 3fa714a..be00f92 100644 --- a/src/MongoUserStore.cs +++ b/src/MongoUserStore.cs @@ -14,6 +14,8 @@ using AspNetCore.Identity.MongoDbCore.Extensions; using AspNetCore.Identity.MongoDbCore.Models; using AspNetCore.Identity.MongoDbCore.Infrastructure; using Microsoft.AspNetCore.Identity; +using System.ComponentModel; +using MongoDB.Bson; namespace AspNetCore.Identity.MongoDbCore { @@ -130,21 +132,29 @@ namespace AspNetCore.Identity.MongoDbCore /// private static TContext Context { get; set; } + private static object MongoRepositoryInitializationLock = new object(); private static IMongoRepository _mongoRepository; private static IMongoRepository MongoRepository { get { + // double checked locking to prevent race to initialize the repository in multithreaded environment. if (_mongoRepository == null) { - _mongoRepository = new MongoRepository(Context); + lock (MongoRepositoryInitializationLock) + { + if (_mongoRepository == null) + { + _mongoRepository = new MongoRepository(Context); + } + } } return _mongoRepository; } } - private IMongoCollection UsersSet { get { return Context.GetCollection(); } } - private IMongoCollection Roles { get { return Context.GetCollection(); } } + private IMongoCollection UsersCollection { get { return Context.GetCollection(); } } + private IMongoCollection RolesCollection { get { return Context.GetCollection(); } } /// /// Gets or sets a flag indicating if changes should be persisted after CreateAsync, UpdateAsync and DeleteAsync are called. @@ -176,7 +186,7 @@ namespace AspNetCore.Identity.MongoDbCore { throw new ArgumentNullException(nameof(user)); } - await UsersSet.InsertOneAsync(user); + await UsersCollection.InsertOneAsync(user); await SaveChanges(cancellationToken); return IdentityResult.Success; } @@ -197,11 +207,11 @@ namespace AspNetCore.Identity.MongoDbCore } var oldStamp = user.ConcurrencyStamp; user.ConcurrencyStamp = Guid.NewGuid().ToString(); - var collection = MongoRepository.Context.GetCollection(); - var updateRes = await collection.ReplaceOneAsync(x => x.Id.Equals(user.Id) - && x.ConcurrencyStamp.Equals(oldStamp), + var collection = MongoRepository.Context.GetCollection(); + var updateRes = await collection.ReplaceOneAsync(x => x.Id.Equals(user.Id) + && x.ConcurrencyStamp.Equals(oldStamp), user); - if(updateRes.ModifiedCount == 0) + if (updateRes.ModifiedCount == 0) { return IdentityResult.Failed(ErrorDescriber.ConcurrencyFailure()); } @@ -228,8 +238,7 @@ namespace AspNetCore.Identity.MongoDbCore user.Tokens.Clear(); var oldStamp = user.ConcurrencyStamp; user.ConcurrencyStamp = Guid.NewGuid().ToString(); - var collection = MongoRepository.Context.GetCollection(); - var deleteRes = await collection.DeleteOneAsync(x => x.Id.Equals(user.Id) + var deleteRes = await UsersCollection.DeleteOneAsync(x => x.Id.Equals(user.Id) && x.ConcurrencyStamp.Equals(oldStamp)); if (deleteRes.DeletedCount == 0) { @@ -254,6 +263,16 @@ namespace AspNetCore.Identity.MongoDbCore return MongoRepository.GetByIdAsync(id); } + /// + /// Converts the provided to a strongly typed key object. + /// + /// The id to convert. + /// An instance of representing the provided . + public override TKey ConvertIdFromString(string id) + { + return id.ToTKey(); + } + /// /// Finds and returns a user, if any, who has the specified normalized user name. /// @@ -274,7 +293,7 @@ namespace AspNetCore.Identity.MongoDbCore /// public override IQueryable Users { - get { return UsersSet.AsQueryable(); } + get { return UsersCollection.AsQueryable(); } } /// @@ -470,12 +489,12 @@ namespace AspNetCore.Identity.MongoDbCore } #pragma warning disable CS1998 // Cette méthode async n'a pas d'opérateur 'await' et elle s'exécutera de façon synchrone - /// - /// Get the claims associated with the specified as an asynchronous operation. - /// - /// The user whose claims should be retrieved. - /// The used to propagate notifications that the operation should be canceled. - /// A that contains the claims granted to a user. + /// + /// Get the claims associated with the specified as an asynchronous operation. + /// + /// The user whose claims should be retrieved. + /// The used to propagate notifications that the operation should be canceled. + /// A that contains the claims granted to a user. public async override Task> GetClaimsAsync(TUser user, CancellationToken cancellationToken = default(CancellationToken)) #pragma warning restore CS1998 // Cette méthode async n'a pas d'opérateur 'await' et elle s'exécutera de façon synchrone { @@ -610,14 +629,14 @@ namespace AspNetCore.Identity.MongoDbCore } #pragma warning disable CS1998 // Cette méthode async n'a pas d'opérateur 'await' et elle s'exécutera de façon synchrone - /// - /// Removes the given from the specified . - /// - /// The user to remove the login from. - /// The login to remove from the user. - /// The key provided by the to identify a user. - /// The used to propagate notifications that the operation should be canceled. - /// The that represents the asynchronous operation. + /// + /// Removes the given from the specified . + /// + /// The user to remove the login from. + /// The login to remove from the user. + /// The key provided by the to identify a user. + /// The used to propagate notifications that the operation should be canceled. + /// The that represents the asynchronous operation. public override async Task RemoveLoginAsync(TUser user, string loginProvider, string providerKey, #pragma warning restore CS1998 // Cette méthode async n'a pas d'opérateur 'await' et elle s'exécutera de façon synchrone CancellationToken cancellationToken = default(CancellationToken)) @@ -636,14 +655,14 @@ namespace AspNetCore.Identity.MongoDbCore } #pragma warning disable CS1998 // Cette méthode async n'a pas d'opérateur 'await' et elle s'exécutera de façon synchrone - /// - /// Retrieves the associated logins for the specified . - /// - /// The user whose associated logins to retrieve. - /// The used to propagate notifications that the operation should be canceled. - /// - /// The for the asynchronous operation, containing a list of for the specified , if any. - /// + /// + /// Retrieves the associated logins for the specified . + /// + /// The user whose associated logins to retrieve. + /// The used to propagate notifications that the operation should be canceled. + /// + /// The for the asynchronous operation, containing a list of for the specified , if any. + /// public async override Task> GetLoginsAsync(TUser user, CancellationToken cancellationToken = default(CancellationToken)) #pragma warning restore CS1998 // Cette méthode async n'a pas d'opérateur 'await' et elle s'exécutera de façon synchrone { @@ -711,8 +730,7 @@ namespace AspNetCore.Identity.MongoDbCore } var filter = Builders.Filter.ElemMatch(x => x.Claims, userClaims => userClaims.Value.Equals(claim.Value) && userClaims.Type.Equals(claim.Type)); - var collection = MongoRepository.Context.GetCollection(); - var cursor = collection.Find(filter); + var cursor = UsersCollection.Find(filter); var res = await cursor.ToListAsync(); return res; } diff --git a/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.deps.json b/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.deps.json index 4e83033..a5e6a14 100644 --- a/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.deps.json +++ b/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.deps.json @@ -1,7 +1,7 @@ { "runtimeTarget": { "name": ".NETCoreApp,Version=v2.0", - "signature": "38e5f0ca5f25fc12f74d4c5d8051381123909848" + "signature": "38b2f87cafd1a2fa8c7bd3268841c3cd7abe472b" }, "compilationOptions": {}, "targets": { @@ -11,7 +11,7 @@ "Microsoft.AspNetCore.Identity": "2.0.1", "Microsoft.Extensions.Identity.Stores": "2.0.1", "MongoDB.Driver": "2.5.0", - "MongoDbGenericRepository": "1.3.4" + "MongoDbGenericRepository": "1.3.6" }, "runtime": { "AspNetCore.Identity.MongoDbCore.dll": {} @@ -359,7 +359,7 @@ "lib/netstandard1.5/MongoDB.Driver.Core.dll": {} } }, - "MongoDbGenericRepository/1.3.4": { + "MongoDbGenericRepository/1.3.6": { "dependencies": { "MongoDB.Driver": "2.5.0" }, @@ -1462,12 +1462,12 @@ "path": "mongodb.driver.core/2.5.0", "hashPath": "mongodb.driver.core.2.5.0.nupkg.sha512" }, - "MongoDbGenericRepository/1.3.4": { + "MongoDbGenericRepository/1.3.6": { "type": "package", "serviceable": true, - "sha512": "sha512-nVtq9UGq6e8I61D1Fc1HIvh4qVA92IkfpcmrNXgG2141qBOpY7U0FbKlz+NOqiJoopY/ejhTBE3QbicsxsoOeg==", - "path": "mongodbgenericrepository/1.3.4", - "hashPath": "mongodbgenericrepository.1.3.4.nupkg.sha512" + "sha512": "sha512-bm4Q5RDLqt6rRZJTDiWvQpHOJ3ACxfELqg0kiZO8dyb7xMEqPQC7urpuLKMpDUmnE/pMBuXe6Pmy9TyTksDbdg==", + "path": "mongodbgenericrepository/1.3.6", + "hashPath": "mongodbgenericrepository.1.3.6.nupkg.sha512" }, "runtime.native.System/4.3.0": { "type": "package", diff --git a/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.dll b/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.dll index eee24d01b03045eb5fff19c6d5c32c46bfbf541b..c395fd06ff6fc150962e9d1b7ed3db2f0f3f3094 100644 GIT binary patch literal 104960 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

Zx2*?>&&<~QE`xhY073zzi?xO6hv#etE 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

$R%!f7F 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 F{{U)~WLN+I diff --git a/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.xml b/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.xml index e42217d..8ee2e9a 100644 --- a/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.xml +++ b/src/lib/netcoreapp2.0/AspNetCore.Identity.MongoDbCore.xml @@ -130,6 +130,19 @@ A configuration object of the AspNetCore.Identity.MongoDbCore package. An object representing a MongoDb connection. + +

+ A set of extensions for string. + + + + + Converts the provided to a strongly typed key object. + + + + + A class holding global variables. @@ -308,6 +321,11 @@ The name of the role. + + + Initialize the field of the MongoIdentityRole + + The constructor for a , taking a role name and a primary key value. @@ -425,6 +443,11 @@ The name of the user. + + + Initialize the field of the MongoIdentityUser + + Sets the version of the schema for the document. @@ -597,6 +620,16 @@ Gets the database context for this store. + + + A navigation property for the roles the store contains. + + + + + A navigation property for the roles the store contains. + + Gets or sets the for any error that occurred with the current operation. @@ -742,11 +775,6 @@ The used to propagate notifications that the operation should be canceled. The that represents the asynchronous operation. - - - A navigation property for the roles the store contains. - - Creates a entity representing a role claim. @@ -1360,6 +1388,13 @@ The that represents the asynchronous operation, containing the user matching the specified if it exists. + + + Converts the provided to a strongly typed key object. + + The id to convert. + An instance of representing the provided . + Finds and returns a user, if any, who has the specified normalized user name. diff --git a/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.deps.json b/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.deps.json index 3d8faa0..e59009d 100644 --- a/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.deps.json +++ b/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.deps.json @@ -1,7 +1,7 @@ { "runtimeTarget": { "name": ".NETStandard,Version=v2.0/", - "signature": "9926fc91f43fdc960144838c1bcb58195d97fdd2" + "signature": "777efc9083cc946975cf0e3ebd09810483543683" }, "compilationOptions": {}, "targets": { @@ -12,7 +12,7 @@ "Microsoft.AspNetCore.Identity": "2.0.1", "Microsoft.Extensions.Identity.Stores": "2.0.1", "MongoDB.Driver": "2.5.0", - "MongoDbGenericRepository": "1.3.4", + "MongoDbGenericRepository": "1.3.6", "NETStandard.Library": "2.0.1" }, "runtime": { @@ -360,7 +360,7 @@ "lib/netstandard1.5/MongoDB.Driver.Core.dll": {} } }, - "MongoDbGenericRepository/1.3.4": { + "MongoDbGenericRepository/1.3.6": { "dependencies": { "MongoDB.Driver": "2.5.0" }, @@ -1427,12 +1427,12 @@ "path": "mongodb.driver.core/2.5.0", "hashPath": "mongodb.driver.core.2.5.0.nupkg.sha512" }, - "MongoDbGenericRepository/1.3.4": { + "MongoDbGenericRepository/1.3.6": { "type": "package", "serviceable": true, - "sha512": "sha512-nVtq9UGq6e8I61D1Fc1HIvh4qVA92IkfpcmrNXgG2141qBOpY7U0FbKlz+NOqiJoopY/ejhTBE3QbicsxsoOeg==", - "path": "mongodbgenericrepository/1.3.4", - "hashPath": "mongodbgenericrepository.1.3.4.nupkg.sha512" + "sha512": "sha512-bm4Q5RDLqt6rRZJTDiWvQpHOJ3ACxfELqg0kiZO8dyb7xMEqPQC7urpuLKMpDUmnE/pMBuXe6Pmy9TyTksDbdg==", + "path": "mongodbgenericrepository/1.3.6", + "hashPath": "mongodbgenericrepository.1.3.6.nupkg.sha512" }, "NETStandard.Library/2.0.1": { "type": "package", diff --git a/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.dll b/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.dll index a6fa8aa169c0905505a2917144451670e08fd2a3..0b534ee807cbb09b8529d8c65dd0e9666ee25667 100644 GIT binary patch literal 104448 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ǁ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 Dt#y%j diff --git a/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.xml b/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.xml index e42217d..8ee2e9a 100644 --- a/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.xml +++ b/src/lib/netstandard2.0/AspNetCore.Identity.MongoDbCore.xml @@ -130,6 +130,19 @@ A configuration object of the AspNetCore.Identity.MongoDbCore package. An object representing a MongoDb connection. + + + A set of extensions for string. + + + + + Converts the provided to a strongly typed key object. + + + + + A class holding global variables. @@ -308,6 +321,11 @@ The name of the role. + + + Initialize the field of the MongoIdentityRole + + The constructor for a , taking a role name and a primary key value. @@ -425,6 +443,11 @@ The name of the user. + + + Initialize the field of the MongoIdentityUser + + Sets the version of the schema for the document. @@ -597,6 +620,16 @@ Gets the database context for this store. + + + A navigation property for the roles the store contains. + + + + + A navigation property for the roles the store contains. + + Gets or sets the for any error that occurred with the current operation. @@ -742,11 +775,6 @@ The used to propagate notifications that the operation should be canceled. The that represents the asynchronous operation. - - - A navigation property for the roles the store contains. - - Creates a entity representing a role claim. @@ -1360,6 +1388,13 @@ The that represents the asynchronous operation, containing the user matching the specified if it exists. + + + Converts the provided to a strongly typed key object. + + The id to convert. + An instance of representing the provided . + Finds and returns a user, if any, who has the specified normalized user name. diff --git a/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.IntegrationTests.csproj b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.IntegrationTests.csproj index 46233e5..b8099f0 100644 --- a/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.IntegrationTests.csproj +++ b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.IntegrationTests.csproj @@ -7,7 +7,7 @@ - + @@ -21,7 +21,7 @@ - + diff --git a/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/MongoDbStoreTestBase.cs b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/MongoDbStoreTestBase.cs index 68a7918..8316752 100644 --- a/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/MongoDbStoreTestBase.cs +++ b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/MongoDbStoreTestBase.cs @@ -162,7 +162,7 @@ namespace AspNetCore.Identity.MongoDbCore.Test private IQueryable GetQueryable() { - return Container.MongoRepository.Context.GetCollection().AsQueryable(); + return Container.MongoRepository.Context.GetCollection().AsQueryable(); } [Fact] diff --git a/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/SqlStoreOnlyUsersTestBase.cs b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/SqlStoreOnlyUsersTestBase.cs index cffdb8e..52abf72 100644 --- a/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/SqlStoreOnlyUsersTestBase.cs +++ b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/SqlStoreOnlyUsersTestBase.cs @@ -87,7 +87,7 @@ namespace AspNetCore.Identity.MongoDbCore.Test private IQueryable GetQueryable() { - return Container.MongoRepository.Context.GetCollection().AsQueryable(); + return Container.MongoRepository.Context.GetCollection().AsQueryable(); } [Fact] diff --git a/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/UserStoreObjectIdKeyTest.cs b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/UserStoreObjectIdKeyTest.cs new file mode 100644 index 0000000..ba1a97c --- /dev/null +++ b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/UserStoreObjectIdKeyTest.cs @@ -0,0 +1,56 @@ +// Copyright (c) .NET Foundation. All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using System; +using Microsoft.Extensions.DependencyInjection; +using AspNetCore.Identity.MongoDbCore.Models; +using MongoDbGenericRepository; +using AspNetCore.Identity.MongoDbCore.IntegrationTests.Infrastructure; +using Microsoft.AspNetCore.Identity; +using MongoDB.Bson; + +namespace AspNetCore.Identity.MongoDbCore.Test +{ + public class ObjectIdUser : MongoIdentityUser + { + public ObjectIdUser() : base() + { + } + } + + public class ObjectIdRole : MongoIdentityRole + { + public ObjectIdRole() : base() + { + } + } + + public class UserStoreObjectIdTest : MongoDbStoreTestBase + { + public UserStoreObjectIdTest(MongoDatabaseFixture fixture) + : base(fixture) + { + } + + public class ApplicationUserStore : MongoUserStore + { + public ApplicationUserStore(IMongoDbContext context) : base(Container.MongoRepository.Context) { } + } + + public class ApplicationRoleStore : MongoRoleStore + { + public ApplicationRoleStore(IMongoDbContext context) : base(Container.MongoRepository.Context) { } + } + + protected override void AddUserStore(IServiceCollection services, object context = null) + { + services.AddSingleton>(new ApplicationUserStore(Container.MongoRepository.Context)); + } + + protected override void AddRoleStore(IServiceCollection services, object context = null) + { + services.AddSingleton>(new ApplicationRoleStore(Container.MongoRepository.Context)); + } + + } +} \ No newline at end of file diff --git a/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/Utilities/MongoDatabaseFixture.cs b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/Utilities/MongoDatabaseFixture.cs index ab42c7e..9ce8b29 100644 --- a/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/Utilities/MongoDatabaseFixture.cs +++ b/test/AspNetCore.Identity.MongoDbCore.IntegrationTests/AspNetCore.Identity.MongoDbCore.Test/Utilities/MongoDatabaseFixture.cs @@ -31,7 +31,7 @@ namespace AspNetCore.Identity.MongoDbCore.Test var userIds = UsersToDelete.ToList().Select(e => e.Id); if (userIds.Any()) { - Context.GetCollection().DeleteMany(e => userIds.Contains(e.Id)); + Context.GetCollection().DeleteMany(e => userIds.Contains(e.Id)); } } } @@ -57,12 +57,12 @@ namespace AspNetCore.Identity.MongoDbCore.Test var userIds = UsersToDelete.ToList().Select(e => e.Id); if (userIds.Any()) { - Context.GetCollection().DeleteMany(e => userIds.Contains(e.Id)); + Context.GetCollection().DeleteMany(e => userIds.Contains(e.Id)); } var roleIds = RolesToDelete.ToList().Select(e => e.Id); if (roleIds.Any()) { - Context.GetCollection().DeleteMany(e => roleIds.Contains(e.Id)); + Context.GetCollection().DeleteMany(e => roleIds.Contains(e.Id)); } } }