Beispiel #1
0
        public override void GenerateModel(ModelBuilderSettings settings)
        {
            var generatingModelWatch = Stopwatch.StartNew();

            // Clear out the ModelGenErrorCache before ModelGen begins


            var errors = new List <EdmSchemaError>();

            try
            {
                var storeModelNamespace = GetStoreNamespace(settings);
                Model = GenerateModels(storeModelNamespace, settings, errors);
                ProcessModel(Model, storeModelNamespace, settings, errors);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Data);
                throw;
            }
            finally
            {
                generatingModelWatch.Stop();
            }
        }
 private static string GetStoreNamespace(ModelBuilderSettings settings)
 {
     return
         (string.IsNullOrEmpty(settings.StorageNamespace)
             ? String.Format(
              CultureInfo.CurrentCulture,
              "{0}.Store",
              settings.ModelNamespace)
             : settings.StorageNamespace);
 }
Beispiel #3
0
        public ModelGenerator(ModelBuilderSettings settings, string storeModelNamespace)
        {
            Debug.Assert(settings != null, "settings != null");
            Debug.Assert(
                !string.IsNullOrWhiteSpace(storeModelNamespace),
                "namespace must not be null or empty string.");

            _settings            = settings;
            _storeModelNamespace = storeModelNamespace;
        }
        public virtual void GenerateModel(ModelBuilderSettings settings)
        {
            var generatingModelWatch = Stopwatch.StartNew();

            var errors = new List <EdmSchemaError>();

            try
            {
                var storeModelNamespace = GetStoreNamespace(settings);
                Model = GenerateModels(storeModelNamespace, settings, errors);

                ProcessModel(Model, storeModelNamespace, settings, errors);
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                generatingModelWatch.Stop();
            }
        }
 protected abstract void ProcessModel(
     DbModel model, string storeModelNamespace, ModelBuilderSettings settings,
     List <EdmSchemaError> errors);
 // internal virtual to allow mocking
 internal virtual DbModel GenerateModels(string storeModelNamespace, ModelBuilderSettings settings, List <EdmSchemaError> errors)
 {
     return(new ModelGenerator(settings, storeModelNamespace).GenerateModel(errors));
 }
Beispiel #7
0
 protected override void ProcessModel(DbModel model, string storeModelNamespace, ModelBuilderSettings settings,
                                      List <EdmSchemaError> errors)
 {
     ValidateModel(model, errors);
 }