Пример #1
0
        public ServiceResult <long> CreateNewConversation(AddConversationDTO model)
        {
            string errorMessage = string.Empty;
            EnumServiceResultType serviceResultType = EnumServiceResultType.Unspecified;
            long result = -1;

            try
            {
                var newConversation = new Conversation
                {
                    SenderId   = model.SenderId,
                    ReceiverId = model.ReceiverId,
                    Message    = model.Message,
                    Date       = DateTime.Now
                };

                var conversationResult = _conversationRepository.Add(newConversation);
                _unitOfWork.SaveChanges();

                result            = conversationResult.Id;
                serviceResultType = EnumServiceResultType.Success;
            }
            catch (Exception ex)
            {
                errorMessage      = ex.Message;
                serviceResultType = EnumServiceResultType.Error;
            }
            return(new ServiceResult <long> {
                ErrorMessage = errorMessage, Result = result, ServiceResultType = serviceResultType
            });
        }
        protected void buttonSendMessage_Click(object sender, EventArgs e)
        {
            try
            {
                AddConversationDTO newConversation = new AddConversationDTO()
                {
                    SenderId   = UserHelper.UserId,
                    ReceiverId = Convert.ToInt64(UserList.SelectedValue),
                    Message    = Message.Text
                };

                ServiceResult <long> serviceResult = new ServiceResult <long>();
                var queryString = new Dictionary <string, string>();
                var response    = ApiHelper.CallSendApiMethod(ApiKeys.MessageApiUrl, "CreateNewConversation", queryString, newConversation);
                if (!response.IsSuccessStatusCode)
                {
                    throw new Exception("Hata oluştu!");
                }
                var data = response.Content.ReadAsStringAsync().Result;
                serviceResult = JsonConvert.DeserializeObject <ServiceResult <long> >(data);

                if (serviceResult.ServiceResultType != EnumServiceResultType.Success)
                {
                    throw new Exception(serviceResult.ErrorMessage);
                }
            }
            catch (Exception ex)
            {
            }

            Message.Text = null;
            GetConversationList();
        }
        public IHttpActionResult CreateNewConversation(AddConversationDTO model)
        {
            if (!Request.Headers.Contains("apiKey"))
            {
                return(Unauthorized());
            }

            string apiKey = Request.Headers.GetValues("apiKey").First();

            if (!ApiHelper.CheckKey(apiKey))
            {
                return(Unauthorized());
            }

            try
            {
                var serviceResult = _messageService.CreateNewConversation(model);
                return(Ok(serviceResult));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }