Compare commits
No commits in common. "main" and "master" have entirely different histories.
@ -2,7 +2,6 @@
|
||||
|
||||
namespace Demo.Data.Exceptions
|
||||
{
|
||||
// Исключение для случая, когда данные уже существуют
|
||||
public class DataAlreadyExistsException : Exception
|
||||
{
|
||||
public DataAlreadyExistsException(string message) : base(message) { }
|
||||
|
@ -2,7 +2,6 @@
|
||||
|
||||
namespace Demo.Data.Exceptions
|
||||
{
|
||||
// Исключение для случая, когда данные не найдены
|
||||
public class DataNotFoundException : Exception
|
||||
{
|
||||
public DataNotFoundException(string message) : base(message) { }
|
||||
|
@ -2,7 +2,6 @@
|
||||
|
||||
namespace Demo.Data.Exceptions
|
||||
{
|
||||
// Исключение для случая, когда GUID не найден
|
||||
public class GuidNotFoundException : Exception
|
||||
{
|
||||
public GuidNotFoundException(string message) : base(message) { }
|
||||
|
@ -2,7 +2,6 @@
|
||||
|
||||
namespace Demo.Data.Exceptions
|
||||
{
|
||||
// Исключение для случаев, когда передан некорректный или несуществующий ID группы
|
||||
public class InvalidGroupIdException : Exception
|
||||
{
|
||||
public InvalidGroupIdException(string message) : base(message) { }
|
||||
|
@ -1,4 +1,5 @@
|
||||
using Demo.domain.Models;
|
||||
using Demo.Domain.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
@ -1,19 +1,20 @@
|
||||
using Demo.Data.LocalData;
|
||||
using Demo.domain.Models;
|
||||
using Demo.Data.Exceptions; // Добавлено
|
||||
using Demo.Domain.Models;
|
||||
using Demo.Data.Exceptions;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Demo.Domain.UseCase;
|
||||
|
||||
namespace Demo.Data.Repository
|
||||
{
|
||||
public class GroupRepositoryImpl
|
||||
public class GroupRepositoryImpl: IGroupRepository
|
||||
{
|
||||
private List<GroupLocalEntity> _groups;
|
||||
|
||||
public GroupRepositoryImpl()
|
||||
{
|
||||
_groups = LocalStaticData.groups; // Получаем группы из LocalStaticData
|
||||
_groups = LocalStaticData.groups;
|
||||
}
|
||||
|
||||
public List<GroupLocalEntity> GetAllGroups()
|
||||
@ -21,24 +22,13 @@ namespace Demo.Data.Repository
|
||||
return _groups;
|
||||
}
|
||||
|
||||
public void AddGroup(int id, string name)
|
||||
public bool AddGroup(GroupLocalEntity group)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (_groups.Any(g => g.Id == id))
|
||||
{
|
||||
throw new DataAlreadyExistsException($"Группа с ID {id} уже существует."); // Кастомное исключение
|
||||
_groups.Add(new GroupLocalEntity { Id = group.Id, Name = group.Name });
|
||||
return true;
|
||||
}
|
||||
|
||||
_groups.Add(new GroupLocalEntity { Id = id, Name = name });
|
||||
}
|
||||
catch (DataAlreadyExistsException ex)
|
||||
{
|
||||
Console.WriteLine($"Ошибка: {ex.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
public void UpdateGroup(int id, string newName)
|
||||
public bool UpdateGroup(int id)
|
||||
{
|
||||
try
|
||||
{
|
||||
@ -46,11 +36,22 @@ namespace Demo.Data.Repository
|
||||
|
||||
if (group == null)
|
||||
{
|
||||
throw new InvalidGroupIdException($"Группа с ID {id} не существует."); // Новое исключение
|
||||
throw new InvalidGroupIdException($"Группа с ID {id} не существует.");
|
||||
}
|
||||
|
||||
string newName = Console.ReadLine();
|
||||
try
|
||||
{
|
||||
if (newName != "")
|
||||
{
|
||||
group.Name = newName;
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
Console.WriteLine("Введите корректное название группы");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
catch (InvalidGroupIdException ex)
|
||||
{
|
||||
Console.WriteLine($"Ошибка: {ex.Message}");
|
||||
@ -59,9 +60,10 @@ namespace Demo.Data.Repository
|
||||
{
|
||||
Console.WriteLine($"Ошибка: {ex.Message}");
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public void DeleteGroupById(int id)
|
||||
public bool DeleteGroupById(int id)
|
||||
{
|
||||
try
|
||||
{
|
||||
@ -69,16 +71,33 @@ namespace Demo.Data.Repository
|
||||
if (group != null)
|
||||
{
|
||||
_groups.Remove(group);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new DataNotFoundException($"Группа с ID {id} не найдена."); // Исключение с русским сообщением
|
||||
throw new DataNotFoundException($"Группа с ID {id} не найдена.");
|
||||
}
|
||||
}
|
||||
catch (DataNotFoundException ex)
|
||||
{
|
||||
Console.WriteLine($"Ошибка: {ex.Message}");
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public GroupLocalEntity GetGroupById(int groupID)
|
||||
{
|
||||
var _groups = GetAllGroups();
|
||||
foreach (var _group in _groups)
|
||||
{
|
||||
if (_group.Id == groupID)
|
||||
{
|
||||
Console.WriteLine();
|
||||
Console.WriteLine($"ID группы: {_group.Id} Название группы: {_group.Name}");
|
||||
Console.WriteLine();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
18
Demo/Data/Repository/IGroupRepository.cs
Normal file
18
Demo/Data/Repository/IGroupRepository.cs
Normal file
@ -0,0 +1,18 @@
|
||||
using Demo.Domain.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Demo.Data.Repository
|
||||
{
|
||||
public interface IGroupRepository
|
||||
{
|
||||
List<GroupLocalEntity> GetAllGroups();
|
||||
bool DeleteGroupById(int groupID);
|
||||
bool UpdateGroup(int groupID);
|
||||
GroupLocalEntity GetGroupById(int groupID);
|
||||
bool AddGroup(GroupLocalEntity newGroup);
|
||||
}
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
using Demo.Data.LocalData;
|
||||
using Demo.domain.Models;
|
||||
using Demo.Data.Exceptions; // Добавлено
|
||||
using Demo.Data.Exceptions;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
@ -13,13 +13,11 @@ namespace Demo.Data.Repository
|
||||
|
||||
public UserRepositoryImpl()
|
||||
{
|
||||
_users = LocalStaticData.users; // Получаем пользователей из LocalStaticData
|
||||
_users = LocalStaticData.users;
|
||||
}
|
||||
|
||||
// Получение всех пользователей
|
||||
public IEnumerable<UserLocalEntity> GetAllUsers => _users;
|
||||
|
||||
// Удаление пользователя по GUID
|
||||
public void DeleteUserByGuid(Guid guid)
|
||||
{
|
||||
var user = _users.FirstOrDefault(u => u.Guid == guid);
|
||||
@ -29,22 +27,20 @@ namespace Demo.Data.Repository
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new GuidNotFoundException($"Пользователь с GUID {guid} не найден."); // Кастомное исключение
|
||||
throw new GuidNotFoundException($"Пользователь с GUID {guid} не найден.");
|
||||
}
|
||||
}
|
||||
|
||||
// Поиск пользователя по GUID
|
||||
public UserLocalEntity? FindUserByGuid(Guid guid)
|
||||
{
|
||||
var user = _users.FirstOrDefault(u => u.Guid == guid);
|
||||
if (user == null)
|
||||
{
|
||||
throw new GuidNotFoundException($"Пользователь с GUID {guid} не найден."); // Кастомное исключение
|
||||
throw new GuidNotFoundException($"Пользователь с GUID {guid} не найден.");
|
||||
}
|
||||
return user;
|
||||
}
|
||||
|
||||
// Обновление пользователя
|
||||
public void UpdateUser(string guidOrInt, string newFIO, int newGroupID)
|
||||
{
|
||||
Guid guid;
|
||||
@ -61,7 +57,7 @@ namespace Demo.Data.Repository
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new GuidNotFoundException($"Пользователь с GUID {guid} не найден."); // Кастомное исключение
|
||||
throw new GuidNotFoundException($"Пользователь с GUID {guid} не найден.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -6,9 +6,9 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace Demo.domain.Models
|
||||
{
|
||||
public class GroupLocalEntity
|
||||
public class Group
|
||||
{
|
||||
public required int Id { get; set; }
|
||||
public required string Name { get; set; }
|
||||
public int Id { get; set; }
|
||||
public string Name { get; set; }
|
||||
}
|
||||
}
|
@ -11,6 +11,8 @@ namespace Demo.domain.Models
|
||||
{
|
||||
public required string FIO { get; set; }
|
||||
public Guid Guid { get; set; }
|
||||
public int GroupID { get; set; }
|
||||
public required Group Group { get; set; }
|
||||
|
||||
}
|
||||
}
|
@ -1,11 +1,14 @@
|
||||
using Demo.Data.Repository;
|
||||
using Demo.domain.Models;
|
||||
using Demo.Data.LocalData;
|
||||
using Demo.Data.Repository;
|
||||
using Demo.Domain.Models;
|
||||
|
||||
namespace Demo.Domain.UseCase
|
||||
{
|
||||
public class GroupUseCase
|
||||
{
|
||||
|
||||
private readonly GroupRepositoryImpl _repositoryGroupImpl;
|
||||
private List<GroupLocalEntity> _groups = LocalStaticData.groups;
|
||||
|
||||
public GroupUseCase(GroupRepositoryImpl repositoryGroupImpl)
|
||||
{
|
||||
@ -17,14 +20,20 @@ namespace Demo.Domain.UseCase
|
||||
return _repositoryGroupImpl.GetAllGroups();
|
||||
}
|
||||
|
||||
public void AddGroup(int id, string name)
|
||||
public void GetGroupById(int id)
|
||||
{
|
||||
_repositoryGroupImpl.AddGroup(id, name);
|
||||
_repositoryGroupImpl.GetGroupById(id);
|
||||
}
|
||||
|
||||
public void UpdateGroup(int id, string newName)
|
||||
public void AddGroup(GroupLocalEntity group)
|
||||
{
|
||||
_repositoryGroupImpl.UpdateGroup(id, newName);
|
||||
group.Id = _groups.Any() ? _groups.Max(g => g.Id) + 1 : 1;
|
||||
_repositoryGroupImpl.AddGroup(group);
|
||||
}
|
||||
|
||||
public void UpdateGroup(int id)
|
||||
{
|
||||
_repositoryGroupImpl.UpdateGroup(id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,84 +1,77 @@
|
||||
using Demo.Data.Repository;
|
||||
using Demo.Data.Exceptions; // Добавлено
|
||||
using Demo.Domain.Models;
|
||||
using Demo.Data.Exceptions;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Demo.domain.Models;
|
||||
|
||||
namespace Demo.Domain.UseCase
|
||||
{
|
||||
public class UserUseCase
|
||||
{
|
||||
private readonly UserRepositoryImpl _userRepositoryImpl;
|
||||
private readonly UserRepositoryImpl _userRepository;
|
||||
private readonly IGroupRepository _groupRepository;
|
||||
|
||||
public UserUseCase(UserRepositoryImpl userRepositoryImpl)
|
||||
public UserUseCase(UserRepositoryImpl userRepository, IGroupRepository groupRepository)
|
||||
{
|
||||
_userRepositoryImpl = userRepositoryImpl;
|
||||
_userRepository = userRepository;
|
||||
_groupRepository = groupRepository;
|
||||
}
|
||||
|
||||
public List<UserLocalEntity> GetAllUsers()
|
||||
private List<Group> GetAllGroups() =>
|
||||
_groupRepository.GetAllGroups()
|
||||
.Select(g => new Group { Id = g.Id, Name = g.Name })
|
||||
.ToList();
|
||||
|
||||
public List<User> GetAllUsers() =>
|
||||
_userRepository.GetAllUsers
|
||||
.Join(_groupRepository.GetAllGroups(),
|
||||
user => user.GroupID,
|
||||
group => group.Id,
|
||||
(user, group) => new User
|
||||
{
|
||||
FIO = user.FIO,
|
||||
Guid = user.Guid,
|
||||
Group = new Group { Id = group.Id, Name = group.Name }
|
||||
})
|
||||
.ToList();
|
||||
|
||||
public bool RemoveUserByGuid(Guid userGuid)
|
||||
{
|
||||
try
|
||||
{
|
||||
return new List<UserLocalEntity>(_userRepositoryImpl.GetAllUsers);
|
||||
_userRepository.DeleteUserByGuid(userGuid);
|
||||
return true;
|
||||
}
|
||||
catch (Exception ex)
|
||||
catch (GuidNotFoundException)
|
||||
{
|
||||
Console.WriteLine($"Ошибка при получении пользователей: {ex.Message}");
|
||||
return new List<UserLocalEntity>(); // Возвращаем пустой список в случае ошибки
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public void DeleteUserByGuid(Guid guid) // Изменен тип параметра
|
||||
public User UpdateUser(User user)
|
||||
{
|
||||
try
|
||||
{
|
||||
_userRepositoryImpl.DeleteUserByGuid(guid);
|
||||
}
|
||||
catch (DataNotFoundException ex)
|
||||
_userRepository.UpdateUser(user.Guid.ToString(), user.FIO, user.Group.Id);
|
||||
|
||||
var group = GetAllGroups().FirstOrDefault(g => g.Id == user.Group.Id);
|
||||
if (group == null)
|
||||
{
|
||||
Console.WriteLine($"Ошибка при удалении пользователя: {ex.Message}"); // Логгирование
|
||||
}
|
||||
catch (Exception ex) // Ловим любые другие ошибки
|
||||
{
|
||||
Console.WriteLine($"Неизвестная ошибка: {ex.Message}");
|
||||
}
|
||||
throw new Exception($"Группа с ID {user.Group.Id} не найдена.");
|
||||
}
|
||||
|
||||
public UserLocalEntity? FindUserByGuid(Guid guid) // Изменен тип параметра
|
||||
return new User { FIO = user.FIO, Guid = user.Guid, Group = group };
|
||||
}
|
||||
catch (GuidNotFoundException ex)
|
||||
{
|
||||
try
|
||||
throw new Exception("Пользователь не найден.", ex);
|
||||
}
|
||||
catch (ArgumentException ex)
|
||||
{
|
||||
return _userRepositoryImpl.FindUserByGuid(guid);
|
||||
}
|
||||
catch (DataNotFoundException ex)
|
||||
{
|
||||
Console.WriteLine($"Ошибка при поиске пользователя: {ex.Message}"); // Логгирование
|
||||
return null; // Возвращаем null в случае ошибки
|
||||
}
|
||||
catch (Exception ex) // Ловим любые другие ошибки
|
||||
{
|
||||
Console.WriteLine($"Неизвестная ошибка: {ex.Message}");
|
||||
return null; // Возвращаем null в случае ошибки
|
||||
throw new Exception("Некорректный GUID.", ex);
|
||||
}
|
||||
}
|
||||
|
||||
public void UpdateUser(Guid guid, string newFIO, int newGroupID)
|
||||
{
|
||||
var users = _userRepositoryImpl.GetAllUsers; // Получаем список пользователей
|
||||
var user = users.FirstOrDefault(u => u.Guid == guid);
|
||||
|
||||
if (user != null)
|
||||
{
|
||||
user.FIO = newFIO;
|
||||
user.GroupID = newGroupID;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new GuidNotFoundException($"Пользователь с GUID {guid} не найден."); // Кастомное исключение
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,7 @@ class Program
|
||||
var userRepository = new UserRepositoryImpl();
|
||||
var groupRepository = new GroupRepositoryImpl();
|
||||
|
||||
var userUseCase = new UserUseCase(userRepository);
|
||||
var userUseCase = new UserUseCase(userRepository,groupRepository);
|
||||
var groupUseCase = new GroupUseCase(groupRepository);
|
||||
|
||||
var userConsole = new UserConsole(userUseCase);
|
||||
|
@ -1,4 +1,7 @@
|
||||
using Demo.Domain.UseCase;
|
||||
using Demo.Data.Repository;
|
||||
using Demo.domain.Models;
|
||||
using Demo.Domain.Models;
|
||||
using Demo.Domain.UseCase;
|
||||
using System;
|
||||
|
||||
namespace Demo.UI
|
||||
@ -12,6 +15,12 @@ namespace Demo.UI
|
||||
_groupUseCase = groupUseCase;
|
||||
}
|
||||
|
||||
public void GetGroupById(int id)
|
||||
{
|
||||
_groupUseCase.GetGroupById(id);
|
||||
|
||||
}
|
||||
|
||||
public void ShowAllGroups()
|
||||
{
|
||||
var groups = _groupUseCase.GetAllGroups();
|
||||
@ -21,22 +30,17 @@ namespace Demo.UI
|
||||
}
|
||||
}
|
||||
|
||||
public void AddGroup()
|
||||
public void AddGroup(string Name)
|
||||
{
|
||||
Console.WriteLine("Enter Group Name:");
|
||||
string name = Console.ReadLine();
|
||||
var id = int.Parse(Console.ReadLine());
|
||||
|
||||
|
||||
_groupUseCase.AddGroup(id, name);
|
||||
GroupLocalEntity newGroup = new GroupLocalEntity { Name = Name };
|
||||
_groupUseCase.AddGroup(newGroup);
|
||||
Console.WriteLine("Group added successfully.");
|
||||
}
|
||||
|
||||
public void UpdateGroup(int groupId)
|
||||
{
|
||||
Console.WriteLine("Enter new Group Name:");
|
||||
string newName = Console.ReadLine();
|
||||
_groupUseCase.UpdateGroup(groupId, newName);
|
||||
_groupUseCase.UpdateGroup(groupId);
|
||||
Console.WriteLine("Group updated successfully.");
|
||||
}
|
||||
}
|
||||
|
@ -14,6 +14,9 @@ namespace Demo.UI
|
||||
_groupConsole = groupConsole;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public void ShowMenu()
|
||||
{
|
||||
while (true)
|
||||
@ -22,10 +25,11 @@ namespace Demo.UI
|
||||
Console.WriteLine("2. Показать все группы");
|
||||
Console.WriteLine("3. Добавить группу");
|
||||
Console.WriteLine("4. Обновить группу");
|
||||
Console.WriteLine("5. Обновить пользователя");
|
||||
Console.WriteLine("6. Удалить пользователя");
|
||||
Console.WriteLine("7. Найти пользователя");
|
||||
Console.WriteLine("8. Выход");
|
||||
Console.WriteLine("5. Найти группу по id");
|
||||
Console.WriteLine("6. Обновить пользователя");
|
||||
Console.WriteLine("7. Удалить пользователя");
|
||||
Console.WriteLine("8. Найти пользователя");
|
||||
Console.WriteLine("9. Выход");
|
||||
Console.WriteLine("Выберете команду:");
|
||||
|
||||
string choice = Console.ReadLine();
|
||||
@ -38,7 +42,9 @@ namespace Demo.UI
|
||||
_groupConsole.ShowAllGroups();
|
||||
break;
|
||||
case "3":
|
||||
_groupConsole.AddGroup();
|
||||
Console.Write("Введите название новой группы: ");
|
||||
string newGroupName = Console.ReadLine();
|
||||
_groupConsole.AddGroup(newGroupName);
|
||||
break;
|
||||
case "4":
|
||||
Console.WriteLine("Введите ID группы:");
|
||||
@ -52,6 +58,11 @@ namespace Demo.UI
|
||||
}
|
||||
break;
|
||||
case "5":
|
||||
Console.WriteLine("Введите id группы");
|
||||
int id = int.Parse(Console.ReadLine());
|
||||
_groupConsole.GetGroupById(id);
|
||||
break;
|
||||
case "6":
|
||||
Console.WriteLine("Введите юзер GUID:");
|
||||
if (Guid.TryParse(Console.ReadLine(), out Guid userGuid))
|
||||
{
|
||||
@ -62,7 +73,7 @@ namespace Demo.UI
|
||||
Console.WriteLine("Ошибка: Введите корректный GUID пользователя.");
|
||||
}
|
||||
break;
|
||||
case "6":
|
||||
case "7":
|
||||
Console.WriteLine("Введите юзер GUID:");
|
||||
if (Guid.TryParse(Console.ReadLine(), out userGuid))
|
||||
{
|
||||
@ -73,7 +84,7 @@ namespace Demo.UI
|
||||
Console.WriteLine("Ошибка: Введите корректный GUID пользователя.");
|
||||
}
|
||||
break;
|
||||
case "7":
|
||||
case "8":
|
||||
Console.WriteLine("Введите юзер GUID:");
|
||||
if (Guid.TryParse(Console.ReadLine(), out userGuid))
|
||||
{
|
||||
@ -84,7 +95,7 @@ namespace Demo.UI
|
||||
Console.WriteLine("Ошибка: Введите корректный GUID пользователя.");
|
||||
}
|
||||
break;
|
||||
case "8":
|
||||
case "9":
|
||||
return;
|
||||
default:
|
||||
Console.WriteLine("Ошибка: Выберите корректный пункт меню.");
|
||||
|
@ -1,4 +1,5 @@
|
||||
using Demo.Domain.UseCase;
|
||||
using Demo.domain.Models;
|
||||
using Demo.Domain.UseCase;
|
||||
using System;
|
||||
|
||||
namespace Demo.UI
|
||||
@ -23,7 +24,7 @@ namespace Demo.UI
|
||||
|
||||
foreach (var user in users)
|
||||
{
|
||||
Console.WriteLine($"User GUID: {user.Guid}, FIO: {user.FIO}, Group ID: {user.GroupID}");
|
||||
Console.WriteLine($"User GUID: {user.Guid}, FIO: {user.FIO}, Group ID: {user.Group.Id}");
|
||||
}
|
||||
}
|
||||
|
||||
@ -34,22 +35,29 @@ namespace Demo.UI
|
||||
Console.WriteLine("Enter new Group ID:");
|
||||
int newGroupID = int.Parse(Console.ReadLine());
|
||||
|
||||
_userUseCase.UpdateUser(userGuid, newFIO, newGroupID);
|
||||
var user = new User
|
||||
{
|
||||
Guid = userGuid,
|
||||
FIO = newFIO,
|
||||
Group = new Group { Id = newGroupID }
|
||||
};
|
||||
|
||||
_userUseCase.UpdateUser(user);
|
||||
Console.WriteLine("User updated successfully.");
|
||||
}
|
||||
|
||||
public void DeleteUser(Guid userGuid)
|
||||
{
|
||||
_userUseCase.DeleteUserByGuid(userGuid);
|
||||
_userUseCase.RemoveUserByGuid(userGuid);
|
||||
Console.WriteLine("User deleted successfully.");
|
||||
}
|
||||
|
||||
public void FindUser(Guid userGuid)
|
||||
{
|
||||
var user = _userUseCase.FindUserByGuid(userGuid);
|
||||
var user = _userUseCase.GetAllUsers().FirstOrDefault(u => u.Guid == userGuid);
|
||||
if (user != null)
|
||||
{
|
||||
Console.WriteLine($"User found: {user.FIO}, Group ID: {user.GroupID}");
|
||||
Console.WriteLine($"User found: {user.FIO}, Group ID: {user.Group.Id}");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -14,7 +14,7 @@ using System.Reflection;
|
||||
[assembly: System.Reflection.AssemblyCompanyAttribute("Demo")]
|
||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+6012168a59e9bbf0281cdaaa8d7f6e69b8ecec8f")]
|
||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+b4e5a3dd2f475e7d74fb288c1de8905f5f994806")]
|
||||
[assembly: System.Reflection.AssemblyProductAttribute("Demo")]
|
||||
[assembly: System.Reflection.AssemblyTitleAttribute("Demo")]
|
||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||
|
@ -1 +1 @@
|
||||
efd0090b9c54c0abf864e23fbf373a506c3fb00e3f28b8ef9c89c024ba7d64a7
|
||||
5878b69e5613879bcba64db1891c8a7dbcd49ccef6a7931f8930b38073917d15
|
||||
|
@ -8,6 +8,6 @@ build_property.PlatformNeutralAssembly =
|
||||
build_property.EnforceExtendedAnalyzerRules =
|
||||
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||
build_property.RootNamespace = Demo
|
||||
build_property.ProjectDir = C:\Users\admin\Downloads\presence\Demo\
|
||||
build_property.ProjectDir = C:\Users\Class_Student\source\repos\Пресенс 1 обнова\Demo\
|
||||
build_property.EnableComHosting =
|
||||
build_property.EnableGeneratedComInterfaceComImportInterop =
|
||||
|
Binary file not shown.
@ -1 +1 @@
|
||||
f99c4e359b24acf3225e0e4301aebeedd510c03d00507261adb31764dc1d4cf2
|
||||
4b5b0f995b1adfca76622723dd459ae2fd250d0a03dfae990704539081a799be
|
||||
|
@ -40,3 +40,17 @@ C:\Users\admin\Downloads\presence\Demo\obj\Debug\net8.0\refint\Demo.dll
|
||||
C:\Users\admin\Downloads\presence\Demo\obj\Debug\net8.0\Demo.pdb
|
||||
C:\Users\admin\Downloads\presence\Demo\obj\Debug\net8.0\Demo.genruntimeconfig.cache
|
||||
C:\Users\admin\Downloads\presence\Demo\obj\Debug\net8.0\ref\Demo.dll
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\bin\Debug\net8.0\Demo.exe
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\bin\Debug\net8.0\Demo.deps.json
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\bin\Debug\net8.0\Demo.runtimeconfig.json
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\bin\Debug\net8.0\Demo.dll
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\bin\Debug\net8.0\Demo.pdb
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\obj\Debug\net8.0\Demo.GeneratedMSBuildEditorConfig.editorconfig
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\obj\Debug\net8.0\Demo.AssemblyInfoInputs.cache
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\obj\Debug\net8.0\Demo.AssemblyInfo.cs
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\obj\Debug\net8.0\Demo.csproj.CoreCompileInputs.cache
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\obj\Debug\net8.0\Demo.dll
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\obj\Debug\net8.0\refint\Demo.dll
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\obj\Debug\net8.0\Demo.pdb
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\obj\Debug\net8.0\Demo.genruntimeconfig.cache
|
||||
C:\Users\adm\Source\Repos\presence_kv\Demo\obj\Debug\net8.0\ref\Demo.dll
|
||||
|
Binary file not shown.
@ -1 +1 @@
|
||||
02cdd9e0986a102e7732e877ec932f42f00981a7aa4040bf65a1930454f6c138
|
||||
646917542bf92e8c89c0a80da626af33086f53aa936b6509f071016280c8969c
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,24 +1,20 @@
|
||||
{
|
||||
"format": 1,
|
||||
"restore": {
|
||||
"C:\\Users\\admin\\Downloads\\presence\\Demo\\Demo.csproj": {}
|
||||
"C:\\Users\\Class_Student\\source\\repos\\Пресенс 1 обнова\\Demo\\Demo.csproj": {}
|
||||
},
|
||||
"projects": {
|
||||
"C:\\Users\\admin\\Downloads\\presence\\Demo\\Demo.csproj": {
|
||||
"C:\\Users\\Class_Student\\source\\repos\\Пресенс 1 обнова\\Demo\\Demo.csproj": {
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "C:\\Users\\admin\\Downloads\\presence\\Demo\\Demo.csproj",
|
||||
"projectUniqueName": "C:\\Users\\Class_Student\\source\\repos\\Пресенс 1 обнова\\Demo\\Demo.csproj",
|
||||
"projectName": "Demo",
|
||||
"projectPath": "C:\\Users\\admin\\Downloads\\presence\\Demo\\Demo.csproj",
|
||||
"packagesPath": "C:\\Users\\admin\\.nuget\\packages\\",
|
||||
"outputPath": "C:\\Users\\admin\\Downloads\\presence\\Demo\\obj\\",
|
||||
"projectPath": "C:\\Users\\Class_Student\\source\\repos\\Пресенс 1 обнова\\Demo\\Demo.csproj",
|
||||
"packagesPath": "C:\\Users\\Class_Student\\.nuget\\packages\\",
|
||||
"outputPath": "C:\\Users\\Class_Student\\source\\repos\\Пресенс 1 обнова\\Demo\\obj\\",
|
||||
"projectStyle": "PackageReference",
|
||||
"fallbackFolders": [
|
||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
|
||||
],
|
||||
"configFilePaths": [
|
||||
"C:\\Users\\admin\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||
"C:\\Users\\Class_Student\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||
],
|
||||
"originalTargetFrameworks": [
|
||||
@ -64,7 +60,7 @@
|
||||
"privateAssets": "all"
|
||||
}
|
||||
},
|
||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.403/PortableRuntimeIdentifierGraph.json"
|
||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.400/PortableRuntimeIdentifierGraph.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5,12 +5,11 @@
|
||||
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
||||
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\admin\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
|
||||
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Class_Student\.nuget\packages\</NuGetPackageFolders>
|
||||
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.11.1</NuGetToolVersion>
|
||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.11.0</NuGetToolVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<SourceRoot Include="C:\Users\admin\.nuget\packages\" />
|
||||
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
|
||||
<SourceRoot Include="C:\Users\Class_Student\.nuget\packages\" />
|
||||
</ItemGroup>
|
||||
</Project>
|
@ -8,24 +8,19 @@
|
||||
"net8.0": []
|
||||
},
|
||||
"packageFolders": {
|
||||
"C:\\Users\\admin\\.nuget\\packages\\": {},
|
||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {}
|
||||
"C:\\Users\\Class_Student\\.nuget\\packages\\": {}
|
||||
},
|
||||
"project": {
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "C:\\Users\\admin\\Downloads\\presence\\Demo\\Demo.csproj",
|
||||
"projectUniqueName": "C:\\Users\\Class_Student\\source\\repos\\Пресенс 1 обнова\\Demo\\Demo.csproj",
|
||||
"projectName": "Demo",
|
||||
"projectPath": "C:\\Users\\admin\\Downloads\\presence\\Demo\\Demo.csproj",
|
||||
"packagesPath": "C:\\Users\\admin\\.nuget\\packages\\",
|
||||
"outputPath": "C:\\Users\\admin\\Downloads\\presence\\Demo\\obj\\",
|
||||
"projectPath": "C:\\Users\\Class_Student\\source\\repos\\Пресенс 1 обнова\\Demo\\Demo.csproj",
|
||||
"packagesPath": "C:\\Users\\Class_Student\\.nuget\\packages\\",
|
||||
"outputPath": "C:\\Users\\Class_Student\\source\\repos\\Пресенс 1 обнова\\Demo\\obj\\",
|
||||
"projectStyle": "PackageReference",
|
||||
"fallbackFolders": [
|
||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
|
||||
],
|
||||
"configFilePaths": [
|
||||
"C:\\Users\\admin\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||
"C:\\Users\\Class_Student\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||
],
|
||||
"originalTargetFrameworks": [
|
||||
@ -71,7 +66,7 @@
|
||||
"privateAssets": "all"
|
||||
}
|
||||
},
|
||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.403/PortableRuntimeIdentifierGraph.json"
|
||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.400/PortableRuntimeIdentifierGraph.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,8 +1,8 @@
|
||||
{
|
||||
"version": 2,
|
||||
"dgSpecHash": "RrqvWWGEBZQ=",
|
||||
"dgSpecHash": "lD1Jh1lqFLo=",
|
||||
"success": true,
|
||||
"projectFilePath": "C:\\Users\\admin\\Downloads\\presence\\Demo\\Demo.csproj",
|
||||
"projectFilePath": "C:\\Users\\Class_Student\\source\\repos\\Пресенс 1 обнова\\Demo\\Demo.csproj",
|
||||
"expectedPackageFiles": [],
|
||||
"logs": []
|
||||
}
|
Loading…
Reference in New Issue
Block a user