//=======================================================================
            //=======================================================================

            /// <summary>
            /// Import a AutomobileWebEntity from the specified JSON string.
            /// </summary>
            /// <param name="a_sJSONObject"></param>
            /// <returns>AutomobileWebEntity</returns>
            public static AutomobileWebEntity Import_FromJSON(string a_sJSONObject)
            {
                if (m_xAutomobileWebEntity == null)
                {
                    m_xAutomobileWebEntity = new AutomobileWebEntity();
                }

                return(m_xAutomobileWebEntity.Import_FromJSON(a_sJSONObject));
            }
            //=======================================================================
            //=======================================================================

            /// <summary>
            /// Loads a set of Automobiles using the specified Uri and DataRequest.
            /// </summary>
            /// <param name="a_xURI">The database Uri used to perform the action.</param>
            /// <param name="a_xDataRequest">DataRequest that specifies the set of Automobiles to be retrieved; including paging information.</param>
            /// <param name="a_xDataResult">A DataResult containing the TotalCount, FilterCount, PageSize, PageCount, PageNumber, and DatabaseDateTime for the request.</param>
            /// <returns>IEnumerable<AutomobileWebEntity></returns>
            public static IEnumerable <AutomobileWebEntity> Load(Uri a_xURI, DataRequest a_xDataRequest, out DataResult a_xDataResult)
            {
                if (m_xAutomobileWebEntity == null)
                {
                    m_xAutomobileWebEntity = new AutomobileWebEntity();
                }

                return(m_xAutomobileWebEntity.Load(a_xURI, a_xDataRequest, out a_xDataResult));
            }
            //=======================================================================
            //=======================================================================

            /// <summary>
            /// Delete a Automobile using the specified Uri and AutomobileGUID.
            /// </summary>
            /// <param name="a_xURI">The database Uri used to perform the action.</param>
            /// <param name="a_xAutomobileGUID">The unique identifies of the Automobile to be retrieved.</param>
            /// <returns>AutomobileWebEntity</returns>
            public static AutomobileWebEntity Delete(Uri a_xURI, GUID a_xAutomobileGUID)
            {
                if (m_xAutomobileWebEntity == null)
                {
                    m_xAutomobileWebEntity = new AutomobileWebEntity();
                }

                return(m_xAutomobileWebEntity.Delete(a_xURI, a_xAutomobileGUID));
            }
            //=======================================================================
            //=======================================================================

            /// <summary>
            /// Update this Automobile using the specified Uri.
            /// </summary>
            /// <param name="a_xURI">The database  Uri used to perform the action.</param>
            /// <returns>AutomobileWebEntity</returns>
            public static AutomobileWebEntity Update(Uri a_xURI)
            {
                if (m_xAutomobileWebEntity == null)
                {
                    m_xAutomobileWebEntity = new AutomobileWebEntity();
                }

                return(m_xAutomobileWebEntity.Update(a_xURI));
            }
            //=======================================================================
            //=======================================================================

            /// <summary>
            /// Loads a set of Automobiles using the specified Uri and DataRequest.
            /// </summary>
            /// <param name="a_xURI">The database Uri used to perform the action.</param>
            /// <returns>AutomobileWebEntity</returns>
            public static IEnumerable <AutomobileWebEntity> Load(Uri a_xURI)
            {
                IEnumerable <AutomobileWebEntity> xReturnValue = null;

                if (m_xAutomobileWebEntity == null)
                {
                    m_xAutomobileWebEntity = new AutomobileWebEntity();
                }

                xReturnValue = m_xAutomobileWebEntity.Load(a_xURI);

                return(xReturnValue);
            }
        //---------------------------------------------------------------------------------------------
        //---------------------------------------------------------------------------------------------

        public AutomobileWebEntity WebAPI_Read(Uri a_xURI, GUID a_xAutomobileGUID)
        {
            AutomobileWebEntity xAutomobileWebEntity = null;

            HttpClient          xHTTPClient          = new HttpClient();
            Uri                 xURI                 = new Uri(a_xURI, $"/api/Automobile/Read/{a_xAutomobileGUID.GUIDString}");
            HttpResponseMessage xHTTPResponseMessage = xHTTPClient.GetAsync(xURI).Result;

            if (xHTTPResponseMessage.IsSuccessStatusCode)
            {
                string sResult = xHTTPResponseMessage.Content.ReadAsStringAsync().Result;
                xAutomobileWebEntity = JsonConvert.DeserializeObject <AutomobileWebEntity>(sResult);
            }

            return(xAutomobileWebEntity);
        }
        //---------------------------------------------------------------------------------------------
        //---------------------------------------------------------------------------------------------

        public AutomobileWebEntity WebAPI_Read(Uri a_xURI)
        {
            AutomobileWebEntity xReturnValue = WebAPI_Read(a_xURI, AutomobileGUID);

            return(xReturnValue);
        }