using System.Collections.Generic; using System.Threading.Tasks; using GameAuthApi.Models; using Microsoft.Extensions.Configuration; using MongoDB.Driver; namespace GameAuthApi.Services; public class ItemService { private readonly IMongoCollection _items; public ItemService(IConfiguration config) { var client = new MongoClient(config["MongoDB:ConnectionString"]); var db = client.GetDatabase(config["MongoDB:DatabaseName"]); _items = db.GetCollection("Items"); } public async Task CreateAsync(Item item) { await _items.InsertOneAsync(item); } public async Task> GetByLocationAsync(string locationId) { return await _items.Find(i => i.LocationId == locationId).ToListAsync(); } public async Task GetByIdAsync(string id) { return await _items.Find(i => i.Id == id).FirstOrDefaultAsync(); } public async Task UpdateAsync(Item item) { await _items.ReplaceOneAsync(i => i.Id == item.Id, item); } }