Example #1
0
        //STORE MESSAGE in table with name of chatName
        public async Task <string> DBStoreMessage(string text, string nickname, string chatName)
        {
            CloudTable cloudTable = tableClient.GetTableReference(chatName);
            //await CreateNewTableAsync(cloudTable);

            MessageTable messageTable = new MessageTable();

            messageTable.Time           = DateTime.UtcNow.ToLongTimeString();
            messageTable.AuthorNickName = nickname;
            messageTable.Body           = text;

            messageTable.AssignPartitionKey();
            messageTable.AssignRowKey();


            TableOperation tableOperation = TableOperation.Insert(messageTable);
            await cloudTable.ExecuteAsync(tableOperation);

            return("Record inserted");
        }
Example #2
0
        public static async Task InsertRecordToTableAsync(CloudTable table, string time, string nickname, string value)
        {
            MessageTable message = new MessageTable();

            message.Time           = time;
            message.AuthorNickName = nickname;
            message.Body           = value;

            Message mess = await RetrieveRecordAsync(table, time, nickname);

            if (mess == null)
            {
                TableOperation tableOperation = TableOperation.Insert(message);
                await table.ExecuteAsync(tableOperation);

                //Console.WriteLine("Record inserted");
            }
            else
            {
                //Console.WriteLine("Record exists");
            }
        }
Example #3
0
        //TESTTING
        public Message GetLastMessageTest(string chatName, int count)
        {
            Message message = new Message();

            try
            {
                var table = tableClient.GetTableReference(chatName);
                TableContinuationToken token = null;
                var queryResult = table.ExecuteQuerySegmentedAsync(new TableQuery <MessageTable>(), token);
                var entities    = new List <MessageTable>();
                entities.AddRange(queryResult.Result);


                MessageTable messageTable = entities[count];

                message.body           = messageTable.Body;
                message.time           = messageTable.Time;
                message.authorNickName = messageTable.AuthorNickName;
            }
            catch
            {
            }
            return(message);
        }