public IHttpActionResult RetrieveData(int id)
        {
            ApiResData res = new ApiResData();

            try
            {
                TOURIS_TM_SUB_CATEGORY subCategory     = repo.Retrieve(id);
                TOURIS_TV_SUB_CATEGORY subCategoryView = new TOURIS_TV_SUB_CATEGORY();

                if (subCategory != null)
                {
                    subCategoryView.ID                       = subCategory.ID;
                    subCategoryView.CATEGORY_ID              = subCategory.CATEGORY_ID;
                    subCategoryView.CATEGORY_NAME            = subCategory.TOURIS_TM_CATEGORY.CATEGORY_NAME;
                    subCategoryView.COUNTRY_ID               = subCategory.TOURIS_TM_VILLAGE.TOURIS_TM_DISTRICT.TOURIS_TM_CITY.TOURIS_TM_PROVINCE.TOURIS_TM_COUNTRY.ID;
                    subCategoryView.COUNTRY_NAME             = subCategory.TOURIS_TM_VILLAGE.TOURIS_TM_DISTRICT.TOURIS_TM_CITY.TOURIS_TM_PROVINCE.TOURIS_TM_COUNTRY.COUNTRY_NAME;
                    subCategoryView.PROVINCE_ID              = subCategory.TOURIS_TM_VILLAGE.TOURIS_TM_DISTRICT.TOURIS_TM_CITY.TOURIS_TM_PROVINCE.ID;
                    subCategoryView.PROVINCE_NAME            = subCategory.TOURIS_TM_VILLAGE.TOURIS_TM_DISTRICT.TOURIS_TM_CITY.TOURIS_TM_PROVINCE.PROVINCE_NAME;
                    subCategoryView.CITY_ID                  = subCategory.TOURIS_TM_VILLAGE.TOURIS_TM_DISTRICT.TOURIS_TM_CITY.ID;
                    subCategoryView.CITY_NAME                = subCategory.TOURIS_TM_VILLAGE.TOURIS_TM_DISTRICT.TOURIS_TM_CITY.CITY_NAME;
                    subCategoryView.DISTRICT_ID              = subCategory.TOURIS_TM_VILLAGE.TOURIS_TM_DISTRICT.ID;
                    subCategoryView.DISTRICT_NAME            = subCategory.TOURIS_TM_VILLAGE.TOURIS_TM_DISTRICT.DISTRICT_NAME;
                    subCategoryView.VILLAGE_NAME             = subCategory.TOURIS_TM_VILLAGE.VILLAGE_NAME;
                    subCategoryView.VILLAGE_ID               = subCategory.VILLAGE_ID;
                    subCategoryView.SUB_CATEGORY_NAME        = subCategory.SUB_CATEGORY_NAME;
                    subCategoryView.SUB_CATEGORY_DESCRIPTION = subCategory.SUB_CATEGORY_DESCRIPTION;
                    subCategoryView.ADDRESS                  = subCategory.ADDRESS;
                    subCategoryView.START_TIME               = subCategory.START_TIME;
                    subCategoryView.END_TIME                 = subCategory.END_TIME;
                    subCategoryView.PHOTO_PATH               = subCategory.PHOTO_PATH;
                    subCategoryView.LATITUDE                 = subCategory.LATITUDE;
                    subCategoryView.LONGITUDE                = subCategory.LONGITUDE;
                    subCategoryView.CREATED_BY               = subCategory.CREATED_BY;
                    subCategoryView.CREATED_TIME             = subCategory.CREATED_TIME;
                    subCategoryView.LAST_MODIFIED_BY         = subCategory.LAST_MODIFIED_BY;
                    subCategoryView.LAST_MODIFIED_TIME       = subCategory.LAST_MODIFIED_TIME;
                    rs.SetSuccessStatus();
                }
                resObj = JObject.FromObject(res.ResGetDataTable(new object[] { subCategoryView }, null));

                return(Content(HttpStatusCode.OK, resObj));
            }
            catch (Exception ex)
            {
                rs.SetErrorStatus(ex.Message);
                resObj = JObject.FromObject(res.ResGetDataTable(new object[] { rs }, new Exception(eFunc.fg.DataNf)));
                return(Content(HttpStatusCode.BadGateway, resObj));
            }
        }