相关疑难解决方法(0)

我应该如何注册使用 MongoClient、Singleton 或 scoped 的 mongodb 服务?

我正在使用 Mongodb 构建一个带有 ASP.NET 核心的 API,我有不同的服务用户服务家庭服务等。我想知道我是否应该将每个服务注册为单例服务,因为它在 asp.net 核心文档中提到,还是作为范围。链接到存储库https://github.com/krisk0su/apartments

用户服务.cs

public class UserService
{
    private readonly IMongoCollection<User> _books;
    private readonly IPasswordHasher _passwordService;

    public UserService(IBookstoreDatabaseSettings settings,  IPasswordHasher passwordService)
    {
        var client = new MongoClient(settings.ConnectionString);
        var database = client.GetDatabase(settings.DatabaseName);

        _books = database.GetCollection<User>(settings.UsersCollectionName);
        _passwordService = passwordService;
    }

    public List<User> Get() =>
        _books
        .Find(book => true)
        .ToList();

    public User Get(string id) =>
        _books.Find(user => user.Id == id).FirstOrDefault();

    public User Create(User user)
    {
        var password = this._passwordService.HashPassword(user.Password);
        user.Password = password;
        _books.InsertOne(user);
        return user;
    }
    public …
Run Code Online (Sandbox Code Playgroud)

c# asp.net mongodb

10
推荐指数
2
解决办法
3129
查看次数

标签 统计

asp.net ×1

c# ×1

mongodb ×1