public async Task <Ret_info> Create(Db db_new) { Ret_info ret = new Ret_info(); try { db_new.S_short = Util_l.MD5(db_new.S_long); ret.Db_list.Add(db_new); var filter = new BsonDocument("$and", new BsonArray { new BsonDocument("User_id", db_new.User_id), new BsonDocument("S_short", db_new.S_short) }); List <Db> l_db = await _db.Find(filter).ToListAsync <Db>(); // Поиск короткой ссылки - создаем новую только при отсутствии старой if (l_db.Count == 0) { await _db.InsertOneAsync(db_new); // добавление записи } } catch (Exception ex) { ret.B_result = false; ret.S_error = ex.ToString(); } return(ret); }
// получение короткой ссылки по имени public async Task <Ret_info> Get1(string id, string id1) { // id- идентификатор пользователя id1-короткя ссылка Ret_info ret = new Ret_info(); ret = await db.Get(id, Util_l.From64(id1), false, true); return(ret); }