DBDataLink.cs 758 B

1234567891011121314151617181920212223242526272829
  1. using MongoDB.Driver;
  2. using NetServer.MongoDB.DBData;
  3. namespace NetServer.MongoDB;
  4. public class DBDataLink<T>
  5. {
  6. protected IMongoCollection<T> _playerMongoCollection;
  7. protected void Init(DBLink dbLink,string dbName)
  8. {
  9. _playerMongoCollection = dbLink.MongoDatabase.GetCollection<T>(dbName);
  10. }
  11. protected void Insert(T bsonDocument)
  12. {
  13. _playerMongoCollection.InsertOne(bsonDocument);
  14. }
  15. protected void Update(FilterDefinition<T> filter, UpdateDefinition<T> update)
  16. {
  17. _playerMongoCollection.UpdateManyAsync(filter, update);
  18. }
  19. protected async Task<T> FindOneDataAsync(FilterDefinition<T> filter)
  20. {
  21. return await _playerMongoCollection.Find(filter).FirstOrDefaultAsync();
  22. }
  23. }