Пример #1
0
        public async Task SendMessage(string Reciever, string message = null, string Chtimage = null)
        {
            DateTime datetime = DateTime.Now;

            using (IServiceScope scope = _sp.CreateScope())
            {
                SwishDBContext dbContext = scope.ServiceProvider.GetRequiredService <SwishDBContext>();
                try
                {
                    ChatModel t = new ChatModel
                    {
                        Sender   = Context.UserIdentifier,
                        Reciever = Reciever,
                        Message  = message,
                        Image    = Chtimage,
                        dateTime = datetime
                    };

                    dbContext.ChatModel.Add(t);
                    dbContext.SaveChanges();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.ToString());
                }
            }
            try
            {
                await Clients.User(Reciever).SendAsync("ReceiveMessage", Context.UserIdentifier, Context.User.Identity.Name, message, Chtimage, datetime.ToString("HH:mm"));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
Пример #2
0
 public HomeController(ILogger <HomeController> logger, SwishDBContext context, UserManager <SwishUser> UserManager, IWebHostEnvironment hostingEnvironment)
 {
     _logger             = logger;
     _context            = context;
     _UserManager        = UserManager;
     _hostingEnvironment = hostingEnvironment;
 }
Пример #3
0
 public BlockedUsersModel(UserManager <SwishUser> userManager, SwishDBContext context, UserManager <SwishUser> UserManager, IWebHostEnvironment hostingEnvironment)
 {
     _userManager        = userManager;
     _context            = context;
     _UserManager        = UserManager;
     _hostingEnvironment = hostingEnvironment;
 }
Пример #4
0
        public async Task AskForMessages(string Reciever)
        {
            Console.WriteLine("AskForMessages");
            List <string[]> messages = new List <string[]>();

            using (IServiceScope scope = _sp.CreateScope())
            {
                SwishDBContext dbContext = scope.ServiceProvider.GetRequiredService <SwishDBContext>();
                try
                {
                    var Messages = from AllMessages in dbContext.ChatModel
                                   where (AllMessages.Sender == Context.UserIdentifier && AllMessages.Reciever == Reciever) || (AllMessages.Sender == Reciever && AllMessages.Reciever == Context.UserIdentifier)
                                   select new
                    {
                        AllMessages.dateTime,
                        AllMessages.Message,
                        AllMessages.Image,
                        Sender =
                            (
                                AllMessages.Sender == Reciever ? "Recieved" :
                                AllMessages.Sender == Context.UserIdentifier ? "Sent" : "Unknown"
                            )
                    };
                    Console.WriteLine(Messages);
                    foreach (var RecievedMessage in Messages)
                    {
                        string[] message = new string[4];
                        message[0] = (RecievedMessage.Message);
                        message[1] = (RecievedMessage.Sender);
                        message[2] = (RecievedMessage.dateTime.ToString("HH:mm"));
                        message[3] = (RecievedMessage.Image);
                        Console.WriteLine(RecievedMessage.Message + " " + RecievedMessage.Sender + " " + RecievedMessage.dateTime.ToString("HH:mm"));
                        messages.Add(message);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.ToString());
                }
            }
            await Clients.User(Context.UserIdentifier).SendAsync("GetMessagesFromUser", messages);
        }
Пример #5
0
 public DbOperations(SwishDBContext context, SwishUser _Cureuser = null, IWebHostEnvironment hostingEnvironment = null)
 {
     _context            = context;
     Cureuser            = _Cureuser;
     _hostingEnvironment = hostingEnvironment;
 }