示例#1
0
        public HttpResponseMessage Add(HttpRequestMessage request, DataRecordViewModel data)
        {
            _requiredRepositories = new List <Type>()
            {
                typeof(DataRecord)
            };

            return(CreateHttpResponse(request, _requiredRepositories, () =>
            {
                HttpResponseMessage response = null;
                DataRecord newData = new DataRecord();
                var existingAuthorCount = _dataRecordRepository.GetAll().Count(a => a.Name == data.Name);
                if (existingAuthorCount == 0)
                {
                    newData.UpdateData(data);

                    _dataRecordRepository.Add(newData);

                    _unitOfWork.Commit();

                    // Update view model
                    data = Mapper.Map <DataRecord, DataRecordViewModel>(newData);
                    response = request.CreateResponse <DataRecordViewModel>(HttpStatusCode.Created, data);
                }
                else
                {
                    response = request.CreateErrorResponse(HttpStatusCode.Conflict, ModelState);
                }
                return response;
            }));
        }
示例#2
0
        public static void UpdateData(this DataRecord data, DataRecordViewModel dataVM)
        {
            data.Name       = dataVM.Name;
            data.Subject    = dataVM.Subject;
            data.Zip        = dataVM.Zip;
            data.Email      = dataVM.Email;
            data.DateJoined = dataVM.DateJoined;
            data.Country    = dataVM.Country;
            data.City       = dataVM.City;
            data.Address    = dataVM.Address;
            data.Grade      = dataVM.Grade;

            data.Cancel = dataVM.Cancel;
        }
示例#3
0
        public HttpResponseMessage Get(HttpRequestMessage request, int id)
        {
            _requiredRepositories = new List <Type>()
            {
                typeof(DataRecord)
            };

            return(CreateHttpResponse(request, _requiredRepositories, () =>
            {
                HttpResponseMessage response = null;

                var data = _dataRecordRepository.GetAll().Where(y => y.ID == id).SingleOrDefault();

                DataRecordViewModel dataVM = Mapper.Map <DataRecord, DataRecordViewModel>(data);

                response = request.CreateResponse <DataRecordViewModel>(HttpStatusCode.OK, dataVM);

                return response;
            }));
        }
示例#4
0
        public HttpResponseMessage Update(HttpRequestMessage request, DataRecordViewModel record)
        {
            _requiredRepositories = new List <Type>()
            {
                typeof(DataRecord)
            };
            return(CreateHttpResponse(request, _requiredRepositories, () =>
            {
                HttpResponseMessage response = null;

                var recordDb = _dataRecordRepository.GetSingle(record.ID);

                recordDb.UpdateData(record);

                _dataRecordRepository.Edit(recordDb);

                _unitOfWork.Commit();

                record = Mapper.Map <DataRecord, DataRecordViewModel>(recordDb);
                response = request.CreateResponse <DataRecordViewModel>(HttpStatusCode.OK, record);

                return response;
            }));
        }