public void BulkInsertAndSelect() { var db = new TestDb(false, new ContractResolver(t => _container.CanResolve(t), (t, op) => _container.Resolve(t))); db.CreateTable <IProduct>(); db.CreateTable <IOrder>(); db.CreateTable <IOrderLine>(); db.CreateTable <IOrderHistory>(); var rnd = new Random(); var data = new List <IOrderLine>(); for (var i = 0; i < 100; i++) { var l = _container.Resolve <IOrderLine>(); l.OrderId = rnd.Next(1, 100); l.ProductId = rnd.Next(1, 100); l.Quantity = rnd.Next(1, 25); l.Status = OrderLineStatus.Shipped; l.UnitPrice = rnd.Next(0, 100); data.Add(l); } db.InsertAll(data.ToArray()); var results = db.Table <IOrderLine>(); Assert.AreEqual(data.Count, results.Count()); Assert.AreEqual(data.First().UnitPrice, results.First().UnitPrice); Assert.AreEqual(data.Last().UnitPrice, results.Last().UnitPrice); }
public async Task SendTextMessage(Peer peer, int receiverId, string msg) { TlAbsInputPeer receiver = await GetInputPeer(peer, receiverId); var update = await _client.SendMessageAsync(receiver, msg); Message message = null; if (update is TlUpdateShortSentMessage) { message = _ioc.Resolve <Message>(); message.FillValues("You", msg, (update as TlUpdateShortSentMessage).TimeUnixToWindows(true)); } else { message = GetMessage(update); } OnSendMessage?.Invoke(message); }
static void Main(string[] args) { SimpleIoC ioc = new SimpleIoC(); ioc.Register <MainViewModel, MainViewModel>(); ioc.Register <ICustomer, Customer>(); ioc.Register <ICustomerRepository, CustomerRepository>(); ioc.Register <IDbGateway, DbGateway>(); var mainViewModel = ioc.Resolve <MainViewModel>(); Console.ReadLine(); }
public DialogsService(SimpleIoC ioc) { _ioc = ioc; _client = ioc.Resolve <ITelegramClient>(); using (var file = File.OpenRead("currentUser.json")) { using (StreamReader sr = new StreamReader(file)) { string userData = sr.ReadToEnd(); Contact user = JsonConvert.DeserializeObject <Contact>(userData); _userId = user.Id; } } }
private async Task AddNewMessageToUnread(int senderId, string text, DateTime dateTime) { var dialogs = (TlDialogs)await _client.GetUserDialogsAsync(); var dialog = dialogs.Dialogs.Lists[0]; string title = "Unknown sender"; switch (dialog.Peer) { case TlPeerUser peerUser: var user = dialogs.Users.Lists .OfType <TlUser>() .FirstOrDefault(c => c.Id == peerUser.UserId); title = $"{user?.FirstName} {user?.LastName}"; break; case TlPeerChannel peerChannel: var channel = dialogs.Chats.Lists .OfType <TlChannel>() .FirstOrDefault(c => c.Id == peerChannel.ChannelId); title = $"{channel.Title}"; break; case TlPeerChat peerChat: var chat = dialogs.Chats.Lists .OfType <TlChat>() .FirstOrDefault(c => c.Id == peerChat.ChatId); title = $"{chat.Title}"; break; } var message = _ioc.Resolve <Message>(); message.FillValues(title, text, dateTime); UnreadMessages.Push(message); OnAddUnreadMessage?.Invoke(senderId, message); }
public ContactsService(SimpleIoC ioc) { _ioc = ioc; _client = ioc.Resolve <ITelegramClient>(); }
//public event Action<string, string, DateTime> OnAddUnreadMessageFromChannel; public ReceivingService(SimpleIoC ioc) { _ioc = ioc; _client = ioc.Resolve <ITelegramClient>(); _client.Updates.RecieveUpdates += Updates_RecieveUpdates; }
public SendingService(SimpleIoC ioc) { _client = ioc.Resolve <ITelegramClient>(); _ioc = ioc; }
public async Task FillDialog(string dialogName, Peer peer, int dialogId) { Stack <Message> messages = new Stack <Message>(); Dialog = _ioc.Resolve <Dialog>(); dynamic history; var dialogs = (TlDialogs)await _client.GetUserDialogsAsync(); try { switch (peer) { case Peer.User: var user = dialogs.Users.Lists.OfType <TlUser>().FirstOrDefault(c => c.Id == dialogId); history = await _client.GetHistoryAsync( new TlInputPeerUser { UserId = user.Id, AccessHash = (long)user.AccessHash }, 0, -1, 50); break; case Peer.Chat: history = await _client.GetHistoryAsync(new TlInputPeerChat { ChatId = dialogId }, 0, -1, 50); break; default: var channel = dialogs.Chats.Lists.OfType <TlChannel>().FirstOrDefault(c => c.Id == dialogId); history = await _client.GetHistoryAsync( new TlInputPeerChannel { ChannelId = channel.Id, AccessHash = (long)channel.AccessHash }, 0, -1, 50); break; } } catch (Exception e) { Console.WriteLine(e); throw; } foreach (var message in history.Messages.Lists) { if (message is TlMessage) { string senderName = dialogName; if (_userId == message.FromId) { senderName = "You"; } else { foreach (TlUser user in history.Users.Lists) { if (user.Id == message.FromId) { senderName = $"{user.FirstName} {user.LastName}"; break; } } } AddMsg(message, messages, senderName); } } //foreach (var message in history.Messages.Lists) //{ // string senderName = dialogName; // if (_userId == message.FromId) // { // senderName = "You"; // } // else // { // foreach (TlUser user in history.Users.Lists) // { // if (user.Id == message.FromId) // { // senderName = $"{user.FirstName} {user.LastName}"; // break; // } // } // } // AddMsg(message, messages, senderName); //} Dialog.FillValues(dialogName, messages); Dialog.Id = dialogId; }