private IEdmModel GetModel()
        {
            HttpConfiguration configuration = Request.GetConfiguration();

            if (configuration == null)
            {
                throw Error.InvalidOperation(SRResources.RequestMustContainConfiguration);
            }

            MediaTypeFormatter firstODataFormatter = configuration.Formatters.Where(
                f => f != null && f.IsODataFormatter()).FirstOrDefault();

            if (firstODataFormatter == null)
            {
                throw Error.InvalidOperation(SRResources.NoODataFormatterForMetadata);
            }

            IEdmModel model = firstODataFormatter.GetODataModel();

            Contract.Assert(model != null);
            model.SetEdmxVersion(_defaultEdmxVersion);
            model.SetDataServiceVersion(_defaultDataServiceVersion);
            return(model);
        }