Ejemplo n.º 1
0
        public void DoGenerateDbContext(DTE2 Dte, ITextTemplating textTemplating, string templatePath, string DestinationNameSpace, string DestinationClassName)
        {
            this.GenerateText  = "";
            this.GenerateError = "";
            OnPropertyChanged("GenerateText");
            OnPropertyChanged("GenerateError");
            ITextTemplatingSessionHost textTemplatingSessionHost = (ITextTemplatingSessionHost)textTemplating;

            textTemplatingSessionHost.Session = textTemplatingSessionHost.CreateSession();
            TPCallback tpCallback = new TPCallback();

            textTemplatingSessionHost.Session["DestinationNameSpace"] = DestinationNameSpace;
            textTemplatingSessionHost.Session["DestinationClassName"] = DestinationClassName;

            if (string.IsNullOrEmpty(GenText))
            {
                this.GenerateText = textTemplating.ProcessTemplate(templatePath, File.ReadAllText(templatePath), tpCallback);
            }
            else
            {
                this.GenerateText = textTemplating.ProcessTemplate(templatePath, GenText, tpCallback);
            }
            FileExtension = tpCallback.FileExtension;
            if (tpCallback.ProcessingErrors != null)
            {
                foreach (TPError tpError in tpCallback.ProcessingErrors)
                {
                    this.GenerateError = tpError.ToString() + "\n";
                }
            }
            OnPropertyChanged("GenerateText");
            OnPropertyChanged("GenerateError");
            IsReady.DoNotify(this, string.IsNullOrEmpty(this.GenerateError));
        }
Ejemplo n.º 2
0
        public void DoGenerateViewModel(DTE2 Dte, ITextTemplating textTemplating, SelectedItem DestinationSelectedItem, string T4TempatePath, ModelView modelView)
        {
            this.GenerateText  = "";
            this.GenerateError = "";


            GeneratedModelView = new ModelViewSerializable();
            modelView.ModelViewAssingTo(GeneratedModelView);


            ITextTemplatingSessionHost textTemplatingSessionHost = (ITextTemplatingSessionHost)textTemplating;

            textTemplatingSessionHost.Session = textTemplatingSessionHost.CreateSession();
            TPCallback tpCallback = new TPCallback();

            textTemplatingSessionHost.Session["Model"] = GeneratedModelView;
            if (string.IsNullOrEmpty(GenText))
            {
                this.GenerateText = textTemplating.ProcessTemplate(T4TempatePath, File.ReadAllText(T4TempatePath), tpCallback);
            }
            else
            {
                this.GenerateText = textTemplating.ProcessTemplate(T4TempatePath, GenText, tpCallback);
            }
            FileExtension = tpCallback.FileExtension;
            if (tpCallback.ProcessingErrors != null)
            {
                foreach (TPError tpError in tpCallback.ProcessingErrors)
                {
                    this.GenerateError = tpError.ToString() + "\n";
                }
            }
            IsReady.DoNotify(this, string.IsNullOrEmpty(this.GenerateError));
        }
Ejemplo n.º 3
0
        public void OnSelectedItemChanged()
        {
            bool ready = SelectedTreeViewItem != null;

            if (ready)
            {
                ready = SelectedTreeViewItem is SerializableViewModel;
            }
            else
            {
                SerializableViewModelVisibility           = Visibility.Collapsed;
                SerializableViewModelPropertyVisibility   = Visibility.Collapsed;
                SerializableViewModelForeignKeyVisibility = Visibility.Collapsed;
                HintVisibility = Visibility.Visible;
                VisibilityChangedNotification();
            }
            IsReady.DoNotify(this, ready);
            if (SelectedTreeViewItem == null)
            {
                return;
            }
            if (ready)
            {
                HintVisibility = Visibility.Collapsed;
                SerializableViewModelPropertyVisibility   = Visibility.Collapsed;
                SerializableViewModelForeignKeyVisibility = Visibility.Collapsed;
                SerializableViewModelVisibility           = Visibility.Visible;
            }
            else
            {
                if (SelectedTreeViewItem is SerializableViewModelProperty)
                {
                    HintVisibility = Visibility.Collapsed;
                    SerializableViewModelVisibility           = Visibility.Collapsed;
                    SerializableViewModelForeignKeyVisibility = Visibility.Collapsed;
                    SerializableViewModelPropertyVisibility   = Visibility.Visible;
                }
                else
                {
                    if (SelectedTreeViewItem is SerializableViewModelForeignKey)
                    {
                        HintVisibility = Visibility.Collapsed;
                        SerializableViewModelVisibility           = Visibility.Collapsed;
                        SerializableViewModelPropertyVisibility   = Visibility.Collapsed;
                        SerializableViewModelForeignKeyVisibility = Visibility.Visible;
                    }
                    else
                    {
                        SerializableViewModelVisibility           = Visibility.Collapsed;
                        SerializableViewModelPropertyVisibility   = Visibility.Collapsed;
                        SerializableViewModelForeignKeyVisibility = Visibility.Collapsed;
                        HintVisibility = Visibility.Visible;
                    }
                }
            }
            VisibilityChangedNotification();
        }
Ejemplo n.º 4
0
        public void CheckIsReady()
        {
            bool rslt = (this.SelectedFeature != null) && (DbContext != null) && (AllowedFileTypes != null) && (FeatureItemsList != null);

            if (rslt)
            {
                rslt = (AllowedFileTypes.Items != null);
            }
            if (rslt)
            {
                rslt = (AllowedFileTypes.Items.Count > 0);
            }
            IsReady.DoNotify(this, rslt);
        }
Ejemplo n.º 5
0
        public void CheckIsReady()
        {
            bool ready =
                _IsWebApiSelectAllMethod ||
                _IsWebApiSelectManyWithPaginationMethod ||
                _IsWebApiSelectOneByPrimarykeyMethod ||
                _IsWebApiAddItemMethod ||
                _IsWebApiUpdateItemMethod ||
                _IsWebApiDeleteItemMethod;

            if (ready)
            {
                ready = !string.IsNullOrEmpty(DestinationWebApiServiceName);
            }
            IsReady.DoNotify(this, ready);
        }
Ejemplo n.º 6
0
        public void DoGenerateFeature(DTE2 Dte, ITextTemplating textTemplating, string T4TempatePath, DbContextSerializable SerializableDbContext, FeatureContextSerializable SerializableFeatureContext, FeatureSerializable feature, AllowedFileTypesSerializable AllowedFileTypes, string defaultProjectNameSpace = null)
        {
            this.GenerateText  = "";
            this.GenerateError = "";
            IsReady.DoNotify(this, false);
            if ((feature == null) || (SerializableDbContext == null) || (SerializableFeatureContext == null))
            {
                return;
            }
            GeneratedFeature = feature;

            ITextTemplatingSessionHost textTemplatingSessionHost = (ITextTemplatingSessionHost)textTemplating;

            textTemplatingSessionHost.Session = textTemplatingSessionHost.CreateSession();
            TPCallback tpCallback = new TPCallback();

            textTemplatingSessionHost.Session["AllowedFileTypes"]        = AllowedFileTypes;
            textTemplatingSessionHost.Session["Feature"]                 = GeneratedFeature;
            textTemplatingSessionHost.Session["FeatureContext"]          = SerializableFeatureContext;
            textTemplatingSessionHost.Session["Context"]                 = SerializableDbContext;
            textTemplatingSessionHost.Session["DefaultProjectNameSpace"] = string.IsNullOrEmpty(defaultProjectNameSpace) ? "" : defaultProjectNameSpace;

            if (string.IsNullOrEmpty(GenText))
            {
                this.GenerateText = textTemplating.ProcessTemplate(T4TempatePath, File.ReadAllText(T4TempatePath), tpCallback);
            }
            else
            {
                this.GenerateText = textTemplating.ProcessTemplate(T4TempatePath, GenText, tpCallback);
            }
            FileExtension = tpCallback.FileExtension;
            if (tpCallback.ProcessingErrors != null)
            {
                foreach (TPError tpError in tpCallback.ProcessingErrors)
                {
                    this.GenerateError += tpError.ToString() + "\n";
                }
            }
            IsReady.DoNotify(this, string.IsNullOrEmpty(this.GenerateError));
        }
Ejemplo n.º 7
0
 public void CheckIsReady()
 {
     IsReady.DoNotify(this, (SelectedDbContext != null) && (SelectedEntity != null) && (SelectedForeignKey != null));
 }
Ejemplo n.º 8
0
 public virtual void CheckIsReady()
 {
     IsReady.DoNotify(this, !string.IsNullOrEmpty(SelectedTemplate));
 }
Ejemplo n.º 9
0
 public void CheckIsReady()
 {
     IsReady.DoNotify(this, (!string.IsNullOrEmpty(this.T4TempateText)) && (!string.IsNullOrEmpty(T4TempatePath)));
 }
Ejemplo n.º 10
0
 public void CheckIsReady()
 {
     IsReady.DoNotify(this, (!string.IsNullOrEmpty(this.T4SelectedFolder)) && (!string.IsNullOrEmpty(FileName)));
 }
Ejemplo n.º 11
0
 public virtual void CheckIsReady()
 {
     IsReady.DoNotify(this, false);
 }
 public override void CheckIsReady()
 {
     IsReady.DoNotify(this, !((!HasPrimKey) || string.IsNullOrEmpty(SelectedClassName) || (SelectedCodeElement == null) || string.IsNullOrEmpty(SelectedProppertyNameCaption)));
 }
 public override void CheckIsReady()
 {
     IsReady.DoNotify(this, !(string.IsNullOrEmpty(SelectedClassName) || (SelectedCodeElement == null) || (ActionUserControl != null)));
 }
Ejemplo n.º 14
0
        public void DoAnalise(DTE2 Dte)
        {
            Microsoft.VisualStudio.Shell.ThreadHelper.ThrowIfNotOnUIThread();
            if (Dte == null)
            {
                ErrorText = DteNotDefinedError;
                IsReady.DoNotify(this, false);
                return;
            }

            SelectedItems selItems = Dte.SelectedItems;

            if (selItems == null)
            {
                ErrorText = NoDestinationError;
                IsReady.DoNotify(this, false);
                return;
            }
            if (selItems.Count < 1)
            {
                ErrorText = NoDestinationError;
                IsReady.DoNotify(this, false);
                return;
            }
            if (selItems.MultiSelect)
            {
                ErrorText = OneItemSelectedError;
                IsReady.DoNotify(this, false);
                return;
            }

            SelectedItem selItem = selItems.Item(1); // Number 1 is a first item

            if (selItem.Project != null)
            {
                // the project is selected as a root
                InvitationHint = InvitationHintStr;
                DefineDestinationNameSpace(selItem);
                IsReady.DoNotify(this, true);
                return;
            }
            if (selItem.ProjectItem == null)
            {
                ErrorText = NoDestinationError;
                IsReady.DoNotify(this, false);
                return;
            }
            Guid ItemGuid;

            if (!Guid.TryParse(selItem.ProjectItem.Kind, out ItemGuid))
            {
                ErrorText = ItemTypeError;
                IsReady.DoNotify(this, false);
                return;
            }
            if (!VSConstants.ItemTypeGuid.PhysicalFolder_guid.Equals(ItemGuid))
            {
                ErrorText = ItemTypeError;
                IsReady.DoNotify(this, false);
                return;
            }
            InvitationHint = InvitationHintStr;
            DefineDestinationNameSpace(selItem);
            IsReady.DoNotify(this, true);
        }
 public void CheckIsReady()
 {
     IsReady.DoNotify(this, (SelectedModel != null) || (!IsSelectExisting));
 }