Beispiel #1
0
        public DatatableBag ReadCanvasListForLite(string FormId, int UserId)
        {
            DataSet      ds  = cm.ReadCanvasListForLite(FormId, UserId);
            DatatableBag dtb = new DatatableBag();

            return(dtb.ConvertToDatatableBag(ds.Tables[0]));
        }
Beispiel #2
0
        /// <summary>
        /// Reads All the users in my org
        /// </summary>
        /// <param name="orgId"></param>
        /// <returns></returns>
        public DatatableBag ReadAllUsersInMyOrg(int orgId)
        {
            DataSet      ds  = cm.ReadAllUsersInMyOrg(orgId);
            DatatableBag dtb = new DatatableBag();

            return(dtb.ConvertToDatatableBag(ds.Tables[0]));
        }
Beispiel #3
0
        /// <summary>
        /// Loads Canvas List for User
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        public DatatableBag LoadCanvasListForUser(int UserId)
        {
            DataSet      ds  = cm.LoadCanvasListForUser(UserId);
            DatatableBag dtb = new DatatableBag();

            return(dtb.ConvertToDatatableBag(ds.Tables[0]));
        }
Beispiel #4
0
        // POST api/<controller>
        public HttpResponseMessage Post([FromBody] JObject value)
        {
            UserDomainService   UserDomainService   = new Ewav.Web.Services.UserDomainService();
            CanvasDomainService CanvasDomainService = new Ewav.Web.Services.CanvasDomainService.CanvasDomainService();
            ControllerCommon    Common       = new Controllers.ControllerCommon();
            DatatableBag        dtb          = null;
            UserDTO             possibleUser = new UserDTO();

            possibleUser.UserName = value["id"].ToString();

            var    pwd = value["password"].ToString();
            string KeyForUserPasswordSalt = System.Configuration.ConfigurationManager.AppSettings["KeyForUserPasswordSalt"];

            Ewav.PasswordHasher ph = new Ewav.PasswordHasher(KeyForUserPasswordSalt);
            string salt            = ph.CreateSalt(possibleUser.UserName);

            possibleUser.PasswordHash = ph.HashPassword(salt, pwd);

            UserDTO returnedUser = UserDomainService.GetUserForAuthentication(possibleUser);

            if (returnedUser.UserID != -1)
            {
                UserDTO LoadedUser = UserDomainService.LoadUser(returnedUser.UserName);
                dtb = CanvasDomainService.LoadCanvasListForUser(LoadedUser.UserID);
            }

            List <CanvasDto> CanvasList = new List <CanvasDto>();

            for (int i = 0; i < dtb.RecordList.Count; i++)
            {
                CanvasList.Add(
                    new CanvasDto()
                {
                    CanvasId          = Convert.ToInt32(Common.GetValueAtRow(dtb, "CanvasID", dtb.RecordList[i])),
                    CanvasName        = Common.GetValueAtRow(dtb, "CanvasName", dtb.RecordList[i]),
                    UserId            = Convert.ToInt32(Common.GetValueAtRow(dtb, "UserID", dtb.RecordList[i])),
                    CanvasDescription = Common.GetValueAtRow(dtb, "CanvasDescription", dtb.RecordList[i]),
                    CreatedDate       = Convert.ToDateTime(Common.GetValueAtRow(dtb, "CreatedDate", dtb.RecordList[i])),
                    ModifiedDate      = Convert.ToDateTime(Common.GetValueAtRow(dtb, "ModifiedDate", dtb.RecordList[i])),
                    DatasourceID      = Convert.ToInt32(Common.GetValueAtRow(dtb, "DatasourceID", dtb.RecordList[i])),
                    Status            = Common.GetValueAtRow(dtb, "Status", dtb.RecordList[i]),
                    Datasource        = Common.GetValueAtRow(dtb, "DatasourceName", dtb.RecordList[i])
                                        //XmlData = new System.Xml.Linq.XElement()
                });
            }

            HttpResponseMessage ReturnedObj = new HttpResponseMessage()
            {
                Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(CanvasList))
            };


            ReturnedObj.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");


            return(ReturnedObj);
        }
Beispiel #5
0
        public static List <string> GetColumnNamesAsList(this DatatableBag datatableBag)
        {
            List <string> list = new List <string>();

            foreach (MyString s in datatableBag.ColumnNameList)
            {
                list.Add(s.VarName);
            }
            return(list);
        }
Beispiel #6
0
        // POST api/<controller>
        public HttpResponseMessage Post([FromBody]      JObject value)
        {
            CombinedFrequencyDomainService CFDS        = new CombinedFrequencyDomainService();
            HttpResponseMessage            ReturnedObj = null;
            GadgetParameters     GadgetParameters      = null;
            ControllerCommon     CommonClass           = new ControllerCommon();
            List <EwavRule_Base> Rules = new List <EwavRule_Base>();

            JObject gadgetJSON = (JObject)value["gadget"];


            CFDS = new CombinedFrequencyDomainService();
            EwavCombinedFrequencyGadgetParameters CombinedParameters = new EwavCombinedFrequencyGadgetParameters();

            CombinedParameters.CombineMode     = (CombineModeTypes)Enum.Parse(typeof(CombineModeTypes), gadgetJSON["combinedmode"].ToString());
            CombinedParameters.ShowDenominator = Convert.ToBoolean(gadgetJSON["showdenominator"].ToString());
            CombinedParameters.SortHighToLow   = Convert.ToBoolean(gadgetJSON["sort"].ToString());
            CombinedParameters.TrueValue       = (gadgetJSON["truevalue"].ToString().Trim().Length == 0 ? null : value["truevalue"].ToString());


            GadgetParameters = new GadgetParameters();

            GadgetParameters.DatasourceName    = gadgetJSON["@DatasourceName"].ToString();
            GadgetParameters.MainVariableName  = gadgetJSON["mainVariable"].ToString();
            GadgetParameters.InputVariableList = new Dictionary <string, string>();
            GadgetParameters.InputVariableList.Add("tableName", gadgetJSON["@DatasourceName"].ToString());

            GadgetParameters.TableName = CommonClass.GetDatabaseObject(GadgetParameters.DatasourceName);

            string groupVar = gadgetJSON["mainVariable"].ToString();

            List <EwavDataFilterCondition> dashboardFilters = new List <EwavDataFilterCondition>();


            Rules = CommonClass.ReadRules(value);

            dashboardFilters = CommonClass.GetFilters(value);


            GadgetParameters.GadgetFilters = CommonClass.GetFilters(gadgetJSON, true);



            DatatableBag dtBag = CFDS.GenerateCombinedFrequency(CombinedParameters, groupVar, GadgetParameters, dashboardFilters, Rules);

            ReturnedObj = new HttpResponseMessage()
            {
                Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(dtBag))
            };

            ReturnedObj.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");


            return(ReturnedObj);
        }
Beispiel #7
0
        /// <summary>
        /// Exports the Data in to DatatableBag
        /// </summary>
        /// <param name="dsName"></param>
        /// <param name="tableName"></param>
        /// <param name="ewavDataFilters"></param>
        /// <param name="rules"></param>
        /// <returns></returns>
        public DatatableBag ExportData(string dsName, string tableName,
                                       IEnumerable <EwavDataFilterCondition> ewavDataFilters, List <EwavRule_Base> rules)
        {
            DatatableBag dtb = new DatatableBag();

            EpiDashboard.GadgetParameters gp = new EpiDashboard.GadgetParameters();
            gp.DatasourceName = dsName;
            gp.TableName      = tableName;
            EpiDashboard.DashboardHelper dbHelper = new EpiDashboard.DashboardHelper(gp, ewavDataFilters, rules);
            dbHelper.PopulateDataSet();
            DataView dv = dbHelper.DataSet.Tables[0].DefaultView;

            ///Write code here
            return(dtb);
        }
Beispiel #8
0
        void freqTableResults_Completed(object sender, EventArgs e)
        {
            InvokeOperation <DatatableBag> result =
                (InvokeOperation <DatatableBag>)sender;
            Exception ex = null;

            if (result.HasError)
            {
                result.MarkErrorAsHandled();
                ex = result.Error;
            }
            DatatableBag returnedData = ((InvokeOperation <DatatableBag>)sender).Value;

            _freqCompleted(returnedData, ex);
        }
Beispiel #9
0
        public DatatableBag GenerateCombinedFrequency(EwavCombinedFrequencyGadgetParameters combinedParameters, string groupVar, GadgetParameters gadgetParameters,
                                                      IEnumerable <EwavDataFilterCondition> ewavDataFilters, List <EwavRule_Base> rules, string filterString = "")
        {
            if (gadgetParameters.UseAdvancedDataFilter)
            {
                dh = new DashboardHelper(gadgetParameters, filterString, rules);
                gadgetParameters.UseAdvancedDataFilter  = true;
                gadgetParameters.AdvancedDataFilterText = filterString;
            }
            else
            {
                dh = new DashboardHelper(gadgetParameters, ewavDataFilters, rules);
            }

            //DataTable dt = dh.GenerateCombinedBooleanFrequencyTable(groupVar, sortHighToLow, gadgetParameters, rules);
            bool      booleanResults = false;
            int       fields         = -1;
            int       denominator    = -1;
            DataTable dt             = dh.GenerateCombinedFrequencyTable(combinedParameters, groupVar, ref booleanResults, ref fields, ref denominator, gadgetParameters, rules);

            if (dt != null)
            {
                DatatableBag dtBag = new DatatableBag(dt, "");

                List <DictionaryDTO> DictionaryObject = new List <DictionaryDTO>();

                DictionaryObject.Add(new DictionaryDTO()
                {
                    Key = new MyString("booleanResults"), Value = new MyString(booleanResults.ToString())
                });
                DictionaryObject.Add(new DictionaryDTO()
                {
                    Key = new MyString("fields"), Value = new MyString(fields.ToString())
                });
                DictionaryObject.Add(new DictionaryDTO()
                {
                    Key = new MyString("denominator"), Value = new MyString(denominator.ToString())
                });
                dtBag.ExtraInfo = DictionaryObject;

                return(dtBag);
            }
            else
            {
                throw new Exception("No Records found.");
            }
        }
Beispiel #10
0
        //   public static string GetValue(this      List<MyString> columnNameList, List<FieldsList> recordList)
        public static string GetValue(this DatatableBag datatableBag, string colName)
        {
            string thisColumn;

            int columnNum = 0;

            for (columnNum = 0; columnNum < datatableBag.ColumnNameList.Count; columnNum++)
            {
                thisColumn = datatableBag.ColumnNameList[columnNum].VarName;

                if (thisColumn == colName)
                {
                    break;
                }
            }

            return(datatableBag.RecordList[0].Fields[columnNum].VarName);                  //     recordListArray[0 ].Field.
        }
Beispiel #11
0
        void applicationViewModel_CanvasListLoadedEvent(object o)
        {
            DatatableBag results = (DatatableBag)o;

            if (applicationViewModel.CanvasDtoListForLoggedUser.Count == 0)
            {
                spMsg.Visibility = System.Windows.Visibility.Visible;
                //   tbSaveError.Text = "You do not have any saved dashboards.";
            }
            else
            {
                spMsg.Visibility           = System.Windows.Visibility.Collapsed;
                cmbSavedDash.ItemsSource   = null;
                cmbSavedDash.ItemsSource   = new DashboardInfoCollection(applicationViewModel.CanvasDtoListForLoggedUser);
                cmbSavedDash.SelectedIndex = -1;
            }
            waitCursor.Visibility = System.Windows.Visibility.Collapsed;
        }
Beispiel #12
0
 /// <summary>
 /// Applications the view model_ canvas list loaded event.
 /// </summary>
 /// <param name="o">The o.</param>
 void applicationViewModel_CanvasListLoadedEvent(object o)
 {
     results = (DatatableBag)o;
     if (applicationViewModel.CanvasDtoListForLoggedUser.Count == 0)
     {
         spMsg.Visibility = System.Windows.Visibility.Visible;
         tbSaveError.Text = "You do not have any saved dashboards.";
         //btnOpenDB.IsEnabled = false;
     }
     else
     {
         spMsg.Visibility = System.Windows.Visibility.Collapsed;
         cb1.ItemsSource  = null;
         cb1.ItemsSource  = new DashboardInfoCollection(applicationViewModel.CanvasDtoListForLoggedUser);
         //btnOpenDB.IsEnabled = true;
     }
     waitCursor.Visibility = System.Windows.Visibility.Collapsed;
 }
Beispiel #13
0
        public static void AddField(this DatatableBag datatableBag, string fieldName)
        {
            // Add a new column
            MyString newColName = new MyString();

            newColName.VarName = fieldName;
            //  datatableBag.ColumnNameList.Add(newColName);
            datatableBag.ColumnNameList.Insert(int.Parse(fieldName), newColName);

            // Add a col value to each record
            foreach (FieldsList row in datatableBag.RecordList)
            {
                //  FieldsList newCol = new FieldsList();
                MyString newColValue = new MyString();
                newColValue.VarName = "0";
                row.Fields.Add(newColValue);
                row.Fields.Insert(int.Parse(fieldName), newColValue);
            }
        }
Beispiel #14
0
        private void UpdateUserList(bool AllSelected)
        {
            DatatableBag dtb = applicationViewModel.AllUsersInMyOrg;

            userList = new List <UserListInfo>();
            for (int i = 0; i < dtb.RecordList.Count; i++)
            {
                if (dtb.GetValueAtRow("USERNAME", dtb.RecordList[i]) != applicationViewModel.LoggedInUser.UserDto.UserName)
                {
                    userList.Add(new UserListInfo
                                     (AllSelected,
                                     dtb.GetValueAtRow("FIRSTNAME", dtb.RecordList[i]),
                                     dtb.GetValueAtRow("LASTNAME", dtb.RecordList[i]),
                                     Convert.ToInt32(dtb.GetValueAtRow("USERID", dtb.RecordList[i]))
                                     ));
                }
            }
            BindGrid();
        }
Beispiel #15
0
        public static bool DatatableBagHasColumnName(this DatatableBag datatableBag, string columnName)
        {
            bool f;
            int  columnNum = 0;

            for (columnNum = 0; columnNum < datatableBag.ColumnNameList.Count; columnNum++)
            {
                string thisColumn = datatableBag.ColumnNameList[columnNum].VarName;

                if (thisColumn == columnName)
                {
                    f = true;
                }
            }

            f = false;

            return(f);
        }
Beispiel #16
0
        /// <summary>
        ///  Get the value of colName at the supplied row
        /// </summary>
        /// <param name="datatableBag"></param>
        /// <param name="colName">The name of the column </param>
        /// <param name="row">The FieldsList which is a List<> of record values  </param>
        /// <returns></returns>
        public static string GetValueAtRow(this DatatableBag datatableBag, string colName, FieldsList row)
        {
            string thisColumn;

            int columnNum = 0;
            int fcol      = 0;

            for (columnNum = 0; columnNum < datatableBag.ColumnNameList.Count; columnNum++)
            {
                thisColumn = datatableBag.ColumnNameList[columnNum].VarName;

                if (thisColumn.ToLower() == colName.ToLower())
                {
                    fcol = columnNum;
                    break;
                }
            }

            return(row.Fields[fcol].VarName);
        }
Beispiel #17
0
 /// <summary>
 /// Completion for frequency Table
 /// </summary>
 /// <param name="result"></param>
 /// <param name="e"></param>
 private void GetCombinedFrequencyCompleted(DatatableBag result, Exception e)
 {
     if (e != null)
     {
         NotificationEventArgs <Exception> notification = new NotificationEventArgs <Exception>("", e);
         this.Notify(ErrorNotice, notification);
     }
     else
     {
         NotificationEventArgs <Exception> notification = new NotificationEventArgs <Exception>("", e);
         this.FrequencyTable = result;
         //if (frequencyTable.Count < applicationViewModel.EwavSelectedDatasource.TotalRecords)
         //{
         if (FrequencyTable.FieldsList.Fields.Count == 0)
         {
             this.Notify(ErrorNotice, new NotificationEventArgs <Exception>("No Data Selected", e));// new NotificationEventArgs<Exception>());
         }
         else
         {
             this.Notify(FrequencyTableLoadedEvent, new NotificationEventArgs <Exception>());
         }
     }
 }
Beispiel #18
0
        private void GetEpiCurveResultsCompleted(DatatableBag result, Exception e)
        {
            if (e != null)
            {
                NotificationEventArgs <Exception> notification = new NotificationEventArgs <Exception>("", e);
                this.Notify(ErrorNotice, notification);
            }
            else
            {
                this.DataTableBag = result;
                if (DataTableBag == null || DataTableBag.ColumnNameList.Count == 0)
                {
                    Exception exp = new Exception(SharedStrings.NO_RECORDS_SELECTED.ToString());

                    this.Notify(ErrorNotice, new NotificationEventArgs <Exception>("", exp));

                    //Notify(ErrorNotice, new NotificationEventArgs<Exception>(SharedStrings.NO_RECORDS_SELECTED));
                }
                else
                {
                    Notify(EpiCurveTableLoadedEvent, new NotificationEventArgs <Exception>());
                }
            }
        }
Beispiel #19
0
        // POST api/<controller>
        public HttpResponseMessage Post([FromBody]      JObject value)
        {
            EpiCurveDomainService EpiCurveDomainService = new EpiCurveDomainService();

            Google.DataTable.Net.Wrapper.DataTable dt = null;
            HttpResponseMessage  ReturnedObj          = null;
            GadgetParameters     GadgetParameters     = new GadgetParameters();
            List <EwavRule_Base> Rules       = new List <EwavRule_Base>();
            ControllerCommon     CommonClass = new ControllerCommon();

            JObject chartJSON = (JObject)value["chart"];

            List <EwavDataFilterCondition> dashboardFilters = new List <EwavDataFilterCondition>();
            bool byEpiWeek = false;

            GadgetParameters.MainVariableName     = string.Empty;
            GadgetParameters.WeightVariableName   = string.Empty;
            GadgetParameters.StrataVariableNames  = new List <string>();
            GadgetParameters.CrosstabVariableName = string.Empty;
            GadgetParameters.InputVariableList    = new Dictionary <string, string>();
            GadgetParameters.ShouldSortHighToLow  = false;



            GadgetParameters.DatasourceName = chartJSON["@DatasourceName"].ToString();

            string strataVariable = string.Empty;

            GadgetParameters.MainVariableName = chartJSON["dateVariable"].ToString();


            GadgetParameters.InputVariableList = new Dictionary <string, string>();
            // tablename really menas DatasourName
            GadgetParameters.InputVariableList.Add("tableName", chartJSON["@DatasourceName"].ToString());



            GadgetParameters.ShouldUseAllPossibleValues = false;



            GadgetParameters.InputVariableList.Add("xaxisstart", chartJSON["xAxisStartValue"].ToString());

            GadgetParameters.InputVariableList.Add("xaxisend", chartJSON["xAxisEndValue"].ToString());

            GadgetParameters.InputVariableList.Add("isdatecolumnnumeric", "false");
            GadgetParameters.InputVariableList.Add("dateinterval", chartJSON["dateInterval"].ToString());

            GadgetParameters.CrosstabVariableName = chartJSON["caseStatusVariable"].ToString();

            GadgetParameters.TableName = CommonClass.GetDatabaseObject(GadgetParameters.DatasourceName);

            dashboardFilters = CommonClass.GetFilters(value);

            GadgetParameters.GadgetFilters = CommonClass.GetFilters(chartJSON, true);

            Rules = CommonClass.ReadRules(value);

            if (GadgetParameters.InputVariableList.ContainsKey("isdatecolumnnumeric"))
            {
                byEpiWeek = bool.Parse(GadgetParameters.InputVariableList["isdatecolumnnumeric"]);
            }


            DatatableBag data = EpiCurveDomainService.GetEpiCurveData(GadgetParameters, dashboardFilters, Rules, CommonClass.AdvancedDataFilterString, byEpiWeek, chartJSON["dateVariable"].ToString(), chartJSON["caseStatusVariable"].ToString());



            dt = new Google.DataTable.Net.Wrapper.DataTable();



            dt.AddColumn(new Column(ColumnType.String, "FreqVariable", "FreqVariable"));

            for (int i = 1; i < data.ColumnNameList.Count; i++)
            {
                dt.AddColumn(new Column(ColumnType.Number, "FrequencyColumn" + i, data.ColumnNameList[i].VarName.ToString()));
            }


            foreach (var item in data.RecordList)
            {
                //if (item.Fields[1].VarName.ToString().Length > 0)
                //{
                Row r = dt.NewRow();

                for (int i = 0; i < data.ColumnNameList.Count; i++)
                {
                    string dateValue = item.Fields[i].VarName.ToString();

                    DateTime result = DateTime.Now;

                    if (DateTime.TryParse(dateValue, out result))
                    {
                        switch (chartJSON["dateInterval"].ToString().ToLower())
                        {
                        case "hours":
                            dateValue = result.ToString("g");
                            break;

                        case "months":
                            dateValue = result.ToString("MMM yyyy");
                            break;

                        case "years":
                            dateValue = result.ToString("yyyy");
                            break;

                        default:        //"days"
                            dateValue = result.ToShortDateString();
                            break;
                        }
                    }


                    r.AddCell(new Cell(dateValue));
                }
                //);

                dt.AddRow(r);
                //}
            }

            ReturnedObj = new HttpResponseMessage()
            {
                Content = new StringContent(dt.GetJson())
            };



            ReturnedObj.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");


            return(ReturnedObj);
        }
Beispiel #20
0
        /// <summary>
        /// This post method returns all the canvases for a user in a given datasource.
        /// </summary>
        /// <param name="value"></param>
        /// <returns></returns>
        public HttpResponseMessage Post([FromBody] JObject value)
        {
            UserDomainService             UserDomainService             = new Ewav.Web.Services.UserDomainService();
            AdminDatasourcesDomainService AdminDatasourcesDomainService = new AdminDatasourcesDomainService();
            CanvasDomainService           CanvasDomainService           = new Ewav.Web.Services.CanvasDomainService.CanvasDomainService();
            ControllerCommon Common       = new Controllers.ControllerCommon();
            DatatableBag     dtb          = null;
            UserDTO          possibleUser = new UserDTO();

            possibleUser.UserName = value["id"].ToString();



            UserDTO returnedUser = UserDomainService.GetUserForAuthentication(possibleUser);

            if (returnedUser.UserID != -1)
            {
                returnedUser = UserDomainService.LoadUser(returnedUser.UserName);
                //dtb = CanvasDomainService.LoadCanvasListForUser(LoadedUser.UserID);
            }

            //Guid DSGuid, UserGuid;

            //Guid.TryParse(value["datasourceid"].ToString(), out DSGuid);
            //Guid.TryParse(value["userid"].ToString(), out UserGuid);

            dtb = CanvasDomainService.ReadCanvasListForLite(value["datasourceid"].ToString(), returnedUser.UserID);


            //int ewavdatasourceid  = AdminDatasourcesDomainService.ReadEwavDatasource(DSGuid);

            List <CanvasDto> CanvasList = new List <CanvasDto>();
            Guid             TempCanvasGuid;

            for (int i = 0; i < dtb.RecordList.Count; i++)
            {
                Guid.TryParse(Common.GetValueAtRow(dtb, "CanvasGUID", dtb.RecordList[i]), out TempCanvasGuid);
                CanvasList.Add(
                    new CanvasDto()
                {
                    CanvasId          = Convert.ToInt32(Common.GetValueAtRow(dtb, "CanvasID", dtb.RecordList[i])),
                    CanvasName        = Common.GetValueAtRow(dtb, "CanvasName", dtb.RecordList[i]),
                    UserId            = Convert.ToInt32(Common.GetValueAtRow(dtb, "UserID", dtb.RecordList[i])),
                    CanvasDescription = Common.GetValueAtRow(dtb, "CanvasDescription", dtb.RecordList[i]),
                    CreatedDate       = Convert.ToDateTime(Common.GetValueAtRow(dtb, "CreatedDate", dtb.RecordList[i])),
                    ModifiedDate      = Convert.ToDateTime(Common.GetValueAtRow(dtb, "ModifiedDate", dtb.RecordList[i])),
                    DatasourceID      = Convert.ToInt32(Common.GetValueAtRow(dtb, "DatasourceID", dtb.RecordList[i])),
                    Status            = Common.GetValueAtRow(dtb, "Status", dtb.RecordList[i]),
                    Datasource        = Common.GetValueAtRow(dtb, "DatasourceName", dtb.RecordList[i]),
                    CanvasGUID        = TempCanvasGuid

                                        //XmlData = new System.Xml.Linq.XElement()
                });
            }

            // CanvasList = CanvasList.Where(canvas => canvas.DatasourceID == ewavdatasourceid).ToList();



            HttpResponseMessage ReturnedObj = new HttpResponseMessage()
            {
                Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(CanvasList))
            };


            ReturnedObj.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");


            return(ReturnedObj);
        }