/
n1kolas
/
NoteCreator
Обзор
Документация
Войти
/
n1kolas
/
NoteCreator
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
Services/NoteService.cs
82 строки
2 KB
Nicolai
Fixed some warnings
07 окт 2025, 00:53
07 окт 2025, 00:53
0031691
Код
Авторство
О чём код?
using LogIn.Data.Models; using Microsoft.Extensions.DependencyInjection; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Navigation; namespace LogIn.Services { public class NoteService : INoteService { public IUserService? _userService; private ObservableCollection<Note>? _notes; public ObservableCollection<Note>? Notes => _notes; public NoteService() { _userService = App.ServiceProvider?.GetRequiredService<IUserService>(); _notes = new ObservableCollection<Note>(); var usr = _userService?.CurrentUser; if (usr != null && !_notes.Any()) { this.Add(new Note(1, usr.Id, "Приготовить пасту", "Если не сделаю, ко мне придет злой Марио")); this.Add(new Note(2, usr.Id, "Создать новый код для библиотеки", "Надо бы поработать больше с пониманием WPF")); } } public bool Add(Note note) { if (note is null) return false; try { if(_notes is not null && !_notes.Any()) { note.Id = 1; } else { var lastNote = _notes?.OrderBy(n => n.Id).Last(); if(lastNote is not null) { note.Id = lastNote.Id + 1; } } _notes?.Add(note); } catch { return false; } return true; } public bool Remove(Note note) { if (note is null) return false; try { _notes?.Remove(note); } catch { return false; } return true; } public Note? GetById(int Id) { if (Id < 0) return null; var note = _notes?.FirstOrDefault(n => n.Id == Id); return note; } } }