コード例 #1
0
        private void _backgroundWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            string sqlScript  = "";
            string dropScript = "";

            StringBuilder    resultScript = new StringBuilder(string.Empty);
            StringCollection coll         = null;
            ScriptingOptions options      = new ScriptingOptions();

            IsLoading = true;


            //First script the DROP
            options.ScriptDrops        = true;
            options.IncludeHeaders     = true;
            options.IncludeIfNotExists = true;
            coll = SelectedTrigger.Script(options);

            resultScript = new StringBuilder(string.Empty);

            foreach (string str in coll)
            {
                resultScript.Append(str);
                resultScript.Append(Environment.NewLine);
            }

            dropScript  = resultScript.ToString();
            dropScript += "GO";

            //Script the CREATE statement
            resultScript = new StringBuilder(string.Empty);

            coll = SelectedTrigger.Script();

            foreach (string str in coll)
            {
                string tmpString = str;
                tmpString = tmpString.Replace("SET ANSI_NULLS ON", string.Empty);
                tmpString = tmpString.Replace("SET QUOTED_IDENTIFIER ON", string.Empty);

                resultScript.Append(tmpString);
                resultScript.Append(Environment.NewLine);
            }

            sqlScript += dropScript;
            sqlScript += resultScript.ToString();
            sqlScript += "GO";
            sqlScript += Environment.NewLine;
            sqlScript += Environment.NewLine;


            e.Result = sqlScript;
        }
コード例 #2
0
        private async void SaveTrigger(object param)
        {
            if (SelectedTrigger != null && SelectedTemplate != null)
            {
                SelectedTrigger.TemplateId = SelectedTemplate.Id;
                SelectedTrigger.Model      = await triggerAccess.SetSensorTrigger(SelectedTrigger.Model);

                Sensor.SetTrigger(SelectedTrigger.Id, SelectedTrigger.Value, SelectedTrigger.Comparer == SensorTriggerComparer.Above ? 1 : -1);

                ShellPage.Current.AddNotificatoin(
                    NotificationType.Information,
                    "Trigger Saved",
                    SelectedTrigger.ToString());
            }
        }
コード例 #3
0
        private async void DeleteTrigger(object param)
        {
            if (SelectedTrigger != null)
            {
                SelectedTrigger.Model = await triggerAccess.DeleteSensorTrigger(SelectedTrigger.Model);

                Sensor.RemoveTrigger(new Sensor.Trigger {
                    id = SelectedTrigger.Id
                });

                ShellPage.Current.AddNotificatoin(NotificationType.Information, "Trigger Deleted", SelectedTrigger.ToString());

                Triggers.Remove(SelectedTrigger);
                SelectedTrigger = Triggers.LastOrDefault();
            }
        }