public async Task <ContactUpdateResponse> UpdateContactAsync(int id, ContactUpdateRequest updateRequest)
        {
            var retVal = new ContactUpdateResponse();

            try
            {
                // using a stored procedure here is not normally needed, but is also not harmful.
                var resultAsync = await _connection.QueryMultipleAsync("usp_Contact_Update",
                                                                       new
                {
                    id,
                    updateRequest.FirstName,
                    updateRequest.LastName,
                    updateRequest.EMail,
                    updateRequest.TelephoneNumber_Entry,
                    updateRequest.Updater
                }
                                                                       , commandType : CommandType.StoredProcedure);

                var result = resultAsync.ReadSingleOrDefault <Domain.DomainModels.Contact.Contact>();

                retVal.Success = true;
                retVal.Contact = result;
            }
            catch (Exception ex)
            {
                retVal.Success = false;
                retVal.Message = ex.Message;
            }

            return(retVal);
        }
Beispiel #2
0
        public async Task <ContactUpdateResponse> UpdateContactAsync(ContactUpdateRequest req)
        {
            using (var conn = new SqlConnection(_connectionSettings.DefaultConnection))
            {
                var    result    = new ContactUpdateResponse();
                string storeproc = string.Format("[dbo].[usp{0}Update_New]", req.ContactType);
                await conn.OpenAsync();

                var dynParm = new
                {
                    req.Contact.Id,
                    req.Contact.Address,
                    req.Contact.City,
                    req.Contact.ContactName,
                    req.Contact.Name,
                    req.Contact.Phone,
                    req.Contact.State,
                    req.Contact.Zip,
                    req.Contact.UpdatedBy,
                    req.Contact.UpdatedDate
                };
                var rawResult = await conn.QueryAsync <ContactDTO>(storeproc, dynParm, null, null, CommandType.StoredProcedure);

                if (rawResult != null)
                {
                    result.Data             = rawResult.FirstOrDefault();
                    result.Data.ContactType = req.ContactType;
                }


                return(result);
            }
        }
        public void TestNominetContactUpdateResponse1()
        {
            byte[] input    = File.ReadAllBytes("ContactUpdateResponse1.xml");
            var    response = new ContactUpdateResponse(input);

            Assert.AreEqual("1000", response.Code);
            Assert.AreEqual("Command completed successfully", response.Message);

            Assert.AreEqual("ABC-12345", response.ClientTransactionId);
            Assert.AreEqual("54321-XYZ", response.ServerTransactionId);
        }
Beispiel #4
0
 public async Task <ActionResult> Update(string id, [FromBody] ContactUpdateRequest rq)
 {
     try
     {
         ContactUpdateResponse rs = await(new ContactUpdateService(this.Context, _contactModRepo)).RunAsync(rq);
         return(new ApiActionResult(this.Context.Request, rs));
     }
     catch (Exception ex)
     {
         return(new ApiActionResult(this.Context.Request, ex));
     }
 }