Esempio n. 1
0
        public void Inserting_Defaults_Correctly_Handles_Single_Quotes()
        {
            var expectedValue = "Hello, 'World'.";
            var schemaName    = "dbo";
            var tableName     = "testtable";

            DropAndCreateTestTable(schemaName, tableName, "[col1manual] int, [col2withdefault] varchar(200)");
            var columns = new string[] { "col1manual" };
            var data    = new object[]
            {
                new object[] { 1 }
            };
            var defaults = new ColumnDefaults();

            defaults.AddDefault(new KeyValuePair <string, object>("col2withdefault", expectedValue));


            tester.InsertData(schemaName, tableName, columns, data, defaults);


            var results     = tester.ExecuteStatementWithResult(string.Format("select * from {0}.{1};", schemaName, tableName));
            var actualValue = results.Tables[0].Rows[0]["col2withdefault"];

            Assert.AreEqual(expectedValue, actualValue);
        }
Esempio n. 2
0
        public void I_Can_Insert_Several_Rows_With_Defaults_And_No_Other_Data()
        {
            var expectedCount = 5;
            var schemaName    = "dbo";
            var tableName     = "testtable";

            DropAndCreateTestTable(schemaName, tableName, "[col1manual] int, [col2withdefault] varchar(200)");
            var columns = new string[0];
            var data    = new object[]
            {
                null,
                null,
                null,
                null,
                null
            };
            var defaults = new ColumnDefaults();

            defaults.AddDefault(new KeyValuePair <string, object>("col2withdefault", "defaultvalue"));


            tester.InsertData(schemaName, tableName, columns, data, defaults);


            var results     = tester.ExecuteStatementWithResult(string.Format("select * from {0}.{1};", schemaName, tableName));
            var actualCount = results.Tables[0].Rows.Count;

            Assert.AreEqual(expectedCount, actualCount);
        }
Esempio n. 3
0
        public void Data_Specified_For_A_Column_Overrides_The_Default_Data()
        {
            var expectedValue = "Hello, World.";
            var schemaName    = "dbo";
            var tableName     = "testtable";

            DropAndCreateTestTable(schemaName, tableName, "[col1manual] int, [col2withdefault] varchar(200)");
            var columns = new string[] { "col1manual", "col2withdefault" };
            var data    = new object[]
            {
                new object[] { 1, expectedValue }
            };
            var defaults = new ColumnDefaults();

            defaults.AddDefault(new KeyValuePair <string, object>("col2withdefault", "Column's default value"));


            tester.InsertData(schemaName, tableName, columns, data, defaults);


            var results     = tester.ExecuteStatementWithResult(string.Format("select * from {0}.{1};", schemaName, tableName));
            var actualValue = results.Tables[0].Rows[0]["col2withdefault"];

            Assert.AreEqual(expectedValue, actualValue);
        }
Esempio n. 4
0
 public static void RegsterGrids()
 {
     ColumnDefaults colDefaults = new ColumnDefaults()
     {
         EnableSorting = true
     };
 }
Esempio n. 5
0
        private static void RegisterGrid(GridDefaults gridDefaults, ColumnDefaults colDefauls, string gridName)
        {
            MVCGridDefinitionTable.Add(GRID_NAME, new MVCGridBuilder <ProductItemModel>(gridDefaults, colDefauls)
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .AddColumns(cols =>
            {
                BuildColumns(cols);
            })
                                       .WithSorting(true, "Name", SortDirection.Asc)
                                       .WithFiltering(true)
                                       .WithAdditionalQueryOptionNames(FILTER_NAME, FILTER_DESC)
                                       .WithRetrieveDataMethod((context) =>
            {
                var service = DependencyResolver.Current.GetService <IProductsService>();
                var result  = service.GetProducts();
                var options = context.QueryOptions;
                var query   = result.Items.AsQueryable();
                var name    = options.GetAdditionalQueryOptionString(FILTER_NAME);
                var desc    = options.GetAdditionalQueryOptionString(FILTER_DESC);

                query = FilterData(options, query, name, desc);

                return(new QueryResult <ProductItemModel>()
                {
                    Items = query.ToList(),
                    TotalRecords = result.Items.Count()
                });
            })
                                       );
        }
        public void InsertDataWithNullsWikiExample()
        {
            // Setup the Database Tester object using the MS SQL implementation
            var connectionstring = @"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=tempdb;Integrated Security=SSPI;";

            VulcanAnalytics.DBTester.DatabaseTester tester = new VulcanAnalytics.DBTester.MsSqlDatabaseTester(connectionstring);

            // Create a table to insert data into
            tester.ExecuteStatementWithoutResult("drop table if exists [dbo].[TestPerson];");
            tester.ExecuteStatementWithoutResult("create table [dbo].[TestPerson]([TestId] int, [Name] varchar(255), [ModifiedDate] datetime, [ModifiedBy] sysname);");

            // Set the defaults for the insert
            var defaults = new ColumnDefaults();

            defaults.AddDefault(new KeyValuePair <string, object>("ModifiedBy", "DarrenComeau"));

            // Parameters for InsertData method
            var schemaName = "dbo";
            var tableName  = "TestPerson";
            var columns    = new string[] { "TestId", "Name", "ModifiedDate" };
            var data       = new object[]
            {
                new Object[] { 1, "Joe", "2018-09-28T12:49:13.576" },
                new Object[] { 2, null, "2018-10-01T18:31:29.256" }
            };

            // Call the Insertdata method to insert the rows
            tester.InsertData(schemaName, tableName, columns, data, defaults);
        }
        public void ColumnDefaults_When_Assigned_Is_Not_Empty()
        {
            var columnDefaults = new ColumnDefaults();

            columnDefaults.AddDefault(new KeyValuePair <string, object>("Hello", "World"));

            Assert.IsFalse(columnDefaults.IsEmpty);
        }
        public void I_Cannot_Add_Duplicate_Column_Value_Pair()
        {
            var columnDefaults = new ColumnDefaults();

            var columnDefault = new KeyValuePair <string, object>("Hello", "World");

            columnDefaults.AddDefault(columnDefault);

            columnDefaults.AddDefault(columnDefault);
        }
Esempio n. 9
0
        private static ColumnDefaults GetColDefauls()
        {
            ColumnDefaults colDefauls = new ColumnDefaults()
            {
                EnableSorting         = true,
                AllowChangeVisibility = false,
            };

            return(colDefauls);
        }
        public void I_Can_Add_And_Retrieve_A_Column_Value_Pair()
        {
            var columnDefaults = new ColumnDefaults();

            var columnDefault = new KeyValuePair <string, object>("Hello", "World");

            columnDefaults.AddDefault(columnDefault);

            foreach (var defaultColumn in columnDefaults)
            {
                Assert.AreEqual(columnDefault, defaultColumn);
            }
        }
Esempio n. 11
0
        public void I_Receive_An_Error_When_No_Rows_Supplied_Even_With_Defaults()
        {
            var schemaName = "dbo";
            var tableName  = "testtable";

            DropAndCreateTestTable(schemaName, tableName, "[col1manual] int, [col2withdefault] varchar(200)");
            var columns  = new string[] { "col1manual" };
            var data     = new object[0];
            var defaults = new ColumnDefaults();

            defaults.AddDefault(new KeyValuePair <string, object>("col2withdefault", "defaultvalue"));

            tester.InsertData(schemaName, tableName, columns, data, defaults);
        }
Esempio n. 12
0
        public static void GetGridDefinition()
        {
            var colDefaults = new ColumnDefaults()
            {
                EnableSorting = true
            };

            MVCGridDefinitionTable.Add(USERS_LIST, new MVCGridBuilder <UserDTO>(colDefaults)
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .WithSorting(sorting: true, defaultSortColumn: nameof(UserDTO.FirstName), defaultSortDirection: SortDirection.Dsc)
                                       .WithPaging(paging: true, itemsPerPage: 15, allowChangePageSize: true, maxItemsPerPage: 100)
                                       .WithAdditionalQueryOptionNames("search")
                                       .AddColumns(cols =>
            {
                cols.Add("Username").WithHeaderText("User Name").WithVisibility(true, true).WithValueExpression(p => p.FirstName).WithSorting(false);
                cols.Add("FirstName").WithHeaderText("First Name").WithVisibility(true, true).WithValueExpression(p => p.LastName).WithSorting(false);
                cols.Add("CellNumber").WithHeaderText("Cell Number").WithVisibility(true, true).WithValueExpression(p => p.Cellphone).WithSorting(false);
                cols.Add("Actions").WithHtmlEncoding(false)
                .WithSorting(false)
                .WithHeaderText("Actions")
                .WithValueExpression(x =>
                {
                    return($"<a id='{Security.Encrypt(x.UserId)}' class='btn btn-success btn-sm' style='color: #fff;' onclick='EditUser(this)'> <i class='fa fa-edit' aria-hidden='true'></i>&nbsp;Edit</a>&nbsp;" +
                           $"<a id='{Security.Encrypt(x.UserId)}' class='btn btn-danger btn-sm ' style='color: #fff;' onclick='DeleteUser(this)'><i class='fa fa-trash' aria-hidden='true'></i>&nbsp; Delete</a>");
                });
            })
                                       .WithAdditionalSetting(MVCGrid.Rendering.BootstrapRenderingEngine.SettingNameTableClass, "table table-striped table-bordered table-hover table-sm") // Example of changing table css class
                                       .WithRetrieveDataMethod((context) =>
            {
                var options           = context.QueryOptions;
                var globalSearch      = options.GetAdditionalQueryOptionString("search");
                var sortColumn        = options.GetSortColumnData <string>();
                var userServiceClient = new UserServiceClient();
                var usersList         = userServiceClient.GetUsers().ToList();
                if (options.GetLimitOffset().HasValue)
                {
                    usersList = usersList.Skip(options.GetLimitOffset().Value).Take(options.GetLimitRowcount().Value).ToList();
                }
                return(new QueryResult <UserDTO>()
                {
                    Items = usersList,
                    TotalRecords = usersList.Count,
                });
            })
                                       );
        }
Esempio n. 13
0
        public static void RegisterGrids()
        {
            ColumnDefaults colDefauls = new ColumnDefaults()
            {
                EnableSorting = true
            };

            MVCGridDefinitionTable.Add("AuthorSearch", new MVCGridBuilder <Author>(colDefauls)
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .AddColumns(cols =>
            {
                cols.Add("Delete").WithHtmlEncoding(false)
                .WithSorting(false)
                .WithHeaderText(" ")
                .WithValueExpression(p => p.AuthorId.ToString())
                .WithValueTemplate("<a class='authorSelectLink' value='{Value}' ><i class='glyphicon glyphicon-arrow-left'></i><span class='sr-only'>Details</span></span> </a>");
                cols.Add("AuthorFirstName").WithHeaderText("Name")
                .WithValueExpression(p => p.AuthorFirstName);
                cols.Add("AuthorMiddleName").WithHeaderText("Mid. name")
                .WithValueExpression(p => p.AuthorMiddleName);
                cols.Add("AuthorLastName").WithHeaderText("Last name")
                .WithValueExpression(p => p.AuthorLastName);
            })
                                       .WithAdditionalQueryOptionNames("Search")
                                       .WithAdditionalSetting("RenderLoadingDiv", false)
                                       .WithSorting(true, "AuthorLastName")
                                       .WithPaging(true, 5)
                                       .WithRetrieveDataMethod((context) =>
            {
                var options = context.QueryOptions;

                int totalRecords;

                var repo            = new UnitOfWork(new DAL.HLibDBContext());
                string globalSearch = options.GetAdditionalQueryOptionString("Search");

                var items = repo.AuthorsRP.GetData(out totalRecords, globalSearch, options.SortColumnName, options.SortDirection == SortDirection.Dsc, options.GetLimitOffset(), options.GetLimitRowcount());
                return(new QueryResult <Author>()
                {
                    Items = items,
                    TotalRecords = totalRecords
                });
            })
                                       );
        }
Esempio n. 14
0
        public static SignalRMVCGridBuilder Test2()
        {
            ColumnDefaults colDefauls = new ColumnDefaults()
            {
                EnableSorting = true
            };

            return(new SignalRMVCGridBuilder("TestGrid2", SignalRGridType.Individual, colDefauls)
                   .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                   .WithSorting(sorting: true, defaultSortColumn: "Id", defaultSortDirection: SortDirection.Dsc)
                   .WithPaging(paging: true, itemsPerPage: 10, allowChangePageSize: true, maxItemsPerPage: 100)
                   .AddColumns(cols =>
            {
                cols.Add("Id").WithValueExpression((p, c) => p.Id.ToString())
                .WithAllowChangeVisibility(true);
                cols.Add("FirstName").WithHeaderText("First Name")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.FirstName);
                cols.Add("LastName").WithHeaderText("Last Name")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.LastName);
                cols.Add("FullName").WithHeaderText("Full Name")
                .WithValueTemplate("{Model.FirstName} {Model.LastName}")
                .WithVisibility(visible: false, allowChangeVisibility: true)
                .WithSorting(false);
                cols.Add("StartDate").WithHeaderText("Start Date")
                .WithVisibility(visible: true, allowChangeVisibility: true)
                .WithValueExpression(p => p.StartDate == null ? p.StartDate.ToShortDateString() : "");
                cols.Add("Status")
                .WithSortColumnData("Active")
                .WithVisibility(visible: true, allowChangeVisibility: true)
                .WithHeaderText("Status")
                .WithValueExpression(p => p.Active ? "Active" : "Inactive")
                .WithCellCssClassExpression(p => p.Active ? "success" : "danger");
                cols.Add("Gender").WithValueExpression((p, c) => p.Gender)
                .WithAllowChangeVisibility(true);
                cols.Add("Email")
                .WithVisibility(visible: false, allowChangeVisibility: true)
                .WithValueExpression(p => p.Email);
            })
                   .ToSignalRGrid());
        }
Esempio n. 15
0
        public void I_Receive_An_Error_When_No_Defaults_And_No_Other_Data_Supplied()
        {
            var schemaName = "dbo";
            var tableName  = "testtable";

            DropAndCreateTestTable(schemaName, tableName, "[col1manual] int, [col2withdefault] varchar(200)");
            var columns = new string[0];
            var data    = new object[]
            {
                null,
                null,
                null,
                null,
                null
            };
            var defaults = new ColumnDefaults();


            tester.InsertData(schemaName, tableName, columns, data, defaults);
        }
        public void I_Can_Loop_Over_All_Defaults()
        {
            var expectedCount  = 4;
            var columnDefaults = new ColumnDefaults();
            var i = 0;

            while (i < expectedCount)
            {
                var keyString = string.Format("Hello {0}", i);
                columnDefaults.AddDefault(new KeyValuePair <string, object>(keyString, "World"));
                i++;
            }


            var actualCount = 0;

            foreach (var columnDefault in columnDefaults)
            {
                actualCount++;
            }


            Assert.AreEqual(expectedCount, actualCount);
        }
Esempio n. 17
0
        public static MVCGridBuilder <Person> Test()
        {
            ColumnDefaults colDefauls = new ColumnDefaults()
            {
                EnableSorting = true
            };

            return(new MVCGridBuilder <Person>(colDefauls)
                   .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                   .WithSorting(sorting: true, defaultSortColumn: "Id", defaultSortDirection: SortDirection.Dsc)
                   .WithPaging(paging: true, itemsPerPage: 10, allowChangePageSize: true, maxItemsPerPage: 100)
                   .AddColumns(cols =>
            {
                cols.Add("Id").WithValueExpression((p, c) => p.Id.ToString())
                .WithAllowChangeVisibility(true);
                cols.Add("FirstName").WithHeaderText("First Name")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.FirstName);
                cols.Add("LastName").WithHeaderText("Last Name")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.LastName);
                cols.Add("FullName").WithHeaderText("Full Name")
                .WithValueTemplate("{Model.FirstName} {Model.LastName}")
                .WithVisibility(visible: false, allowChangeVisibility: true)
                .WithSorting(false);
                cols.Add("StartDate").WithHeaderText("Start Date")
                .WithVisibility(visible: true, allowChangeVisibility: true)
                .WithValueExpression(p => p.StartDate == null ? p.StartDate.ToShortDateString() : "");
                cols.Add("Status")
                .WithSortColumnData("Active")
                .WithVisibility(visible: true, allowChangeVisibility: true)
                .WithHeaderText("Status")
                .WithValueExpression(p => p.Active ? "Active" : "Inactive")
                .WithCellCssClassExpression(p => p.Active ? "success" : "danger");
                cols.Add("Gender").WithValueExpression((p, c) => p.Gender)
                .WithAllowChangeVisibility(true);
                cols.Add("Email")
                .WithVisibility(visible: false, allowChangeVisibility: true)
                .WithValueExpression(p => p.Email);
            })
                   .WithRetrieveDataMethod((context) =>
            {
                QueryOptions queryOptions = context.QueryOptions;
                int pageIndex = queryOptions.PageIndex.Value;
                int pageSize = queryOptions.ItemsPerPage.Value;
                int totalCount = 120;
                List <Person> persons = new List <Person>();
                for (int x = 0; totalCount > x; x++)
                {
                    Person person = new Person()
                    {
                        Id = x,
                        FirstName = "Alpha",
                        LastName = "Shabazz",
                        Active = true,
                        Email = "*****@*****.**",
                        Employee = true,
                        Gender = "Male",
                        StartDate = DateTime.Now,
                    };
                    persons.Add(person);
                }
                persons = persons.Skip(pageIndex * pageSize).Take(pageSize).ToList();

                return new QueryResult <Person>()
                {
                    Items = persons,
                    TotalRecords = totalCount
                };
            }));
        }
        public static void RegisterGrids()
        {
            // Default column settings
            ColumnDefaults colDefaults = new ColumnDefaults()
            {
                EnableSorting = true
            };

            // Grid Definitions

            MVCGridDefinitionTable.Add("UserInputs60Hz", new MVCGridBuilder <UserInputs60Hz>(colDefaults)
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .WithSorting(sorting: true, defaultSortColumn: "Id", defaultSortDirection: SortDirection.Dsc)
                                       .WithPaging(paging: true, itemsPerPage: 10, allowChangePageSize: true, maxItemsPerPage: 100)
                                       .WithAdditionalQueryOptionNames("search")
                                       .AddColumns(cols =>
            {
                cols.Add("Id").WithHeaderText("Id")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.Id.ToString());
                cols.Add("TransSize").WithHeaderText("TransSize")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.TransSize.ToString());
                cols.Add("Impedance").WithHeaderText("Impedance")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.Impedance.ToString());
                cols.Add("SCC").WithHeaderText("SCC")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.SCC.ToString());
                cols.Add("FaultClearing").WithHeaderText("Fault Clearing")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.FaultClearing.ToString());
                cols.Add("Voltage").WithHeaderText("Voltage")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.Voltage.ToString());
                cols.Add("FreeAir").WithHeaderText("Free Air")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.FreeAir.ToString());
                cols.Add("IPAddress").WithHeaderText("IP Address")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.IPAddress);
                cols.Add("date").WithHeaderText("Date Added")
                .WithVisibility(visible: true, allowChangeVisibility: true)
                .WithValueExpression(p => p.date.HasValue ? p.date.Value.ToShortDateString() : "");
            })
                                       .WithRetrieveDataMethod((context) =>
            {
                var options = context.QueryOptions;
                int totalRecords;
                string globalSearch = options.GetAdditionalQueryOptionString("search");
                string sortColumn   = options.GetSortColumnData <string>();
                var repo            = DependencyResolver.Current.GetService <UserInputs60HzRepository>();
                var items           = repo.GetData(out totalRecords, globalSearch, options.GetLimitOffset(), options.GetLimitRowcount(),
                                                   sortColumn, options.SortDirection == SortDirection.Dsc);
                return(new QueryResult <UserInputs60Hz>()
                {
                    Items = items,
                    TotalRecords = totalRecords
                });
            })
                                       );

            MVCGridDefinitionTable.Add("UserInputsDC", new MVCGridBuilder <UserInputsDC>(colDefaults)
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .WithSorting(sorting: true, defaultSortColumn: "Id", defaultSortDirection: SortDirection.Dsc)
                                       .WithPaging(paging: true, itemsPerPage: 10, allowChangePageSize: true, maxItemsPerPage: 100)
                                       .WithQueryStringPrefix("grid2")
                                       .WithAdditionalQueryOptionNames("search")
                                       .AddColumns(cols =>
            {
                cols.Add("Id").WithHeaderText("Id")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.Id.ToString());
                cols.Add("PotMaxExp").WithHeaderText("PotMaxExp")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.PotMaxExp.ToString());
                cols.Add("AvailSCC").WithHeaderText("Available SCC")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.AvailSCC.ToString());
                cols.Add("Duration").WithHeaderText("Duration")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.Duration.ToString());
                cols.Add("IPAddress").WithHeaderText("IP Address")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.IPAddress.ToString());
                cols.Add("date").WithHeaderText("Date Added")
                .WithVisibility(visible: true, allowChangeVisibility: true)
                .WithValueExpression(p => p.date.HasValue ? p.date.Value.ToShortDateString() : "");
            })
                                       .WithRetrieveDataMethod((context) =>
            {
                var options = context.QueryOptions;
                int totalRecords;
                string globalSearch = options.GetAdditionalQueryOptionString("search");
                string sortColumn   = options.GetSortColumnData <string>();
                var repo            = DependencyResolver.Current.GetService <UserInputsDCRepository>();
                var items           = repo.GetData(out totalRecords, globalSearch, options.GetLimitOffset(), options.GetLimitRowcount(),
                                                   sortColumn, options.SortDirection == SortDirection.Dsc);
                return(new QueryResult <UserInputsDC>()
                {
                    Items = items,
                    TotalRecords = totalRecords
                });
            })
                                       );

            MVCGridDefinitionTable.Add("UserIP", new MVCGridBuilder <UserIP>(colDefaults)
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .WithSorting(sorting: true, defaultSortColumn: "Id", defaultSortDirection: SortDirection.Dsc)
                                       .WithPaging(paging: true, itemsPerPage: 10, allowChangePageSize: true, maxItemsPerPage: 100)
                                       .WithAdditionalQueryOptionNames("search")
                                       .AddColumns(cols =>
            {
                cols.Add("IPAddress").WithHeaderText("IP Address")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.IPAddress.ToString());
                cols.Add("DateAdded").WithHeaderText("Date Added")
                .WithVisibility(visible: true, allowChangeVisibility: true)
                .WithValueExpression(p => p.DateAdded.HasValue ? p.DateAdded.Value.ToShortDateString() : "");
            })
                                       .WithRetrieveDataMethod((context) =>
            {
                var options = context.QueryOptions;
                int totalRecords;
                string globalSearch = options.GetAdditionalQueryOptionString("search");
                string sortColumn   = options.GetSortColumnData <string>();
                var repo            = DependencyResolver.Current.GetService <UserIPRepository>();
                var items           = repo.GetData(out totalRecords, globalSearch, options.GetLimitOffset(), options.GetLimitRowcount(),
                                                   sortColumn, options.SortDirection == SortDirection.Dsc);
                return(new QueryResult <UserIP>()
                {
                    Items = items,
                    TotalRecords = totalRecords
                });
            })
                                       );
        }
Esempio n. 19
0
 public SignalRMVCGridBuilder(string gridName, SignalRGridType signalRGridType, ColumnDefaults columnDefaults) : base(null, columnDefaults)
 {
     InitializeSignalR(gridName, signalRGridType);
 }
Esempio n. 20
0
        public static void RegisterGrids()
        {
            try
            {
                ColumnDefaults colDefauls = new ColumnDefaults()
                {
                    EnableSorting = true
                };

                MVCGridDefinitionTable.Add("PresidentsGrid", new MVCGridBuilder <PresidentModel>(colDefauls)
                                           .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                           .AddColumns(cols =>
                {
                    cols.Add("Id").WithSorting(false)
                    .WithHeaderText("Id").WithValueExpression(i => i.id.ToString());
                    cols.Add("Name").WithHeaderText("President")
                    .WithValueExpression(i => i.Name);
                    cols.Add("Birthday").WithSorting(false)
                    .WithHeaderText("Birth Day").WithValueExpression(i => i.Birthday);
                    cols.Add("Birthplace").WithSorting(false)
                    .WithHeaderText("Birth Place").WithValueExpression(i => i.Birthplace);
                    cols.Add("Deathday").WithSorting(false)
                    .WithHeaderText("Death Day").WithValueExpression(i => i.Deathday);
                    cols.Add("Deathplace").WithSorting(false)
                    .WithHeaderText("Death Place").WithValueExpression(i => i.Deathplace);
                })
                                           .WithSorting(true, "Name")
                                           .WithRetrieveDataMethod((context) =>
                {
                    List <PresidentModel> presidents = HomeController.GetAllPresident();

                    var options = context.QueryOptions;
                    var result  = new QueryResult <PresidentModel>();

                    if (!String.IsNullOrWhiteSpace(options.SortColumnName))
                    {
                        if (options.SortDirection.ToString() == "Asc")
                        {
                            presidents = presidents.OrderBy(x => x.Name).ToList();
                        }
                        else if (options.SortDirection.ToString() == "Dsc")
                        {
                            presidents = presidents.OrderByDescending(x => x.Name).ToList();
                        }

                        result.Items = presidents;
                    }
                    else
                    {
                        result.Items = presidents;
                    }

                    result.TotalRecords = presidents.Count;

                    return(result);
                })
                                           );
            }
            catch (Exception ex)
            {
            }
        }
Esempio n. 21
0
        public static void RegisterGrids()
        {
            GridDefaults gridDefaults = new GridDefaults()
            {
                Paging           = true,
                ItemsPerPage     = 20,
                Sorting          = true,
                NoResultsMessage = "Sorry, no results were found"
            };
            ColumnDefaults colDefaults = new ColumnDefaults()
            {
                EnableSorting = true
            };

            MVCGridDefinitionTable.Add("StudentGrid", new MVCGridBuilder <tblStudent>(colDefaults)
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .AddColumns(cols =>
            {
                // Add your columns here
                cols.Add("StudID").WithValueExpression(p => p.StudID.ToString());
                cols.Add("StudCode").WithValueExpression(p => p.StudCode.ToString());
                cols.Add("FullName").WithHeaderText("FullName")
                .WithValueExpression(p => p.FullName);
            })
                                       .WithSorting(true, "StudCode")
                                       .WithPaging(true, 10)
                                       .WithRetrieveDataMethod((context) =>
            {
                var result = new QueryResult <tblStudent>();
                using (var db = new SchoolTimeContext())
                {
                    result.Items = db.tblStudents.ToList();
                }
                return(result);
            })
                                       );

            MVCGridDefinitionTable.Add("SujectsGrid", new MVCGridBuilder <tblSuject>()
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .AddColumns(cols =>
            {
                // Add your columns here
                cols.Add("SujectID").WithValueExpression(p => p.SujectID.ToString());
                cols.Add("SujectCode").WithValueExpression(p => p.SujectCode.ToString());
                cols.Add("SujectName").WithValueExpression(p => p.SujectName.ToString());
            })
                                       .WithRetrieveDataMethod((context) =>
            {
                var result = new QueryResult <tblSuject>();
                using (var db = new SchoolTimeContext())
                {
                    result.Items = db.tblSujects.ToList();
                }
                return(result);
            })
                                       );

            MVCGridDefinitionTable.Add("TeacherGrid", new MVCGridBuilder <tblTeacher>()
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .AddColumns(cols =>
            {
                // Add your columns here
                cols.Add("teachID").WithValueExpression(p => p.teachID.ToString());
                cols.Add("teachCode").WithValueExpression(p => p.teachCode.ToString());
                cols.Add("FullName").WithValueExpression(p => p.FullName.ToString());
            })
                                       .WithRetrieveDataMethod((context) =>
            {
                var result = new QueryResult <tblTeacher>();
                using (var db = new SchoolTimeContext())
                {
                    result.Items = db.tblTeachers.ToList();
                }
                return(result);
            })
                                       );
        }
        public void New_ColumnDefaults_Are_Empty()
        {
            var columnDefaults = new ColumnDefaults();

            Assert.IsTrue(columnDefaults.IsEmpty);
        }
Esempio n. 23
0
        public static void RegisterGrids()
        {
            ColumnDefaults colDefaults = new ColumnDefaults()
            {
                EnableSorting = true
            };

            //          MVCGridDefinitionTable.Add("Vehicles", new MVCGridBuilder<Vehicle>(colDefaults)
            //              .WithAuthorizationType(AuthorizationType.AllowAnonymous)
            //              .AddColumns(cols =>
            //              {
            //                  cols.Add("Id").WithSorting(false)
            //                      .WithValueExpression(p => p.Id.ToString());
            //                  cols.Add("Vin").WithHeaderText("Vin")
            //                      .WithValueExpression(p => p.Vin);
            //                  cols.Add("Make").WithHeaderText("Make")
            //                      .WithValueExpression(p => p.Make);
            //                  cols.Add("Model").WithHeaderText("Model")
            //                      .WithValueExpression(p => p.Model);
            //                  cols.Add("Year").WithHeaderText("Year")
            //                      .WithValueExpression(p => p.Year);
            //                  cols.Add("CurrentMileage").WithHeaderText("Current Mileage")
            //                      .WithValueExpression(p => p.CurrentMileage);
            //              })
            ////              .WithSorting(true, "Make")
            //              .WithPaging(true, 2)
            //              .WithRetrieveDataMethod((context) =>
            //              {
            //                  var options = context.QueryOptions;
            //                  var result = new QueryResult<Vehicle>();


            //                      var query = Repository.getVehicles().AsQueryable();
            //                      result.TotalRecords = query.Count();
            //                      //if (!String.IsNullOrWhiteSpace(options.SortColumnName))
            //                      //{
            //                      //    switch (options.SortColumnName.ToLower())
            //                      //    {
            //                      //        case "vin":
            //                      //            query = query.OrderBy(p => p.Vin, options.SortDirection);
            //                      //            break;
            //                      //        case "make":
            //                      //            query = query.OrderBy(p => p.Make, options.SortDirection);
            //                      //            break;
            //                      //    }
            //                      //}
            //                      if (options.GetLimitOffset().HasValue)
            //                      {
            //                          query = query.Skip(options.GetLimitOffset().Value).Take(options.GetLimitRowcount().Value);
            //                      }
            //                      result.Items = query.ToList();

            //                  return result;
            //              })
            //          );

            MVCGridDefinitionTable.Add("Vehicles", new MVCGridBuilder <Vehicle>(colDefaults)
                                       .WithAuthorizationType(AuthorizationType.AllowAnonymous)
                                       .WithSorting(sorting: true, defaultSortColumn: "Id", defaultSortDirection: SortDirection.Dsc)
                                       .WithPaging(paging: true, itemsPerPage: 10, allowChangePageSize: true, maxItemsPerPage: 100)
                                       .WithAdditionalQueryOptionNames("search")
                                       .AddColumns(cols =>
            {
                cols.Add("Id").WithValueExpression((p, c) => c.UrlHelper.Action("detail", "demo", new { id = p.Id }))
                .WithValueTemplate("<a href='{Value}'>{Model.Id}</a>", false)
                .WithPlainTextValueExpression(p => p.Id.ToString());
                cols.Add("Make").WithHeaderText("Make")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.Make);
                cols.Add("Model").WithHeaderText("Model")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.Model);
                cols.Add("Year").WithHeaderText("Year")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.Year);
                cols.Add("Vin").WithHeaderText("Vin")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.Vin);
                cols.Add("CurrentMileage").WithHeaderText("Current Mileage")
                .WithVisibility(true, true)
                .WithValueExpression(p => p.CurrentMileage);
            })
                                       //.WithAdditionalSetting(MVCGrid.Rendering.BootstrapRenderingEngine.SettingNameTableClass, "notreal") // Example of changing table css class
                                       .WithRetrieveDataMethod((context) =>
            {
                var options = context.QueryOptions;

                int totalRecords;
                var repo = DependencyResolver.Current.GetService <VehicleRepository>();

                string globalSearch = options.GetAdditionalQueryOptionString("search");

                string sortColumn = options.GetSortColumnData <string>();

                var items = repo.GetData(out totalRecords, globalSearch, options.GetLimitOffset(), options.GetLimitRowcount(),
                                         sortColumn, options.SortDirection == SortDirection.Dsc);

                return(new QueryResult <Vehicle>()
                {
                    Items = items,
                    TotalRecords = totalRecords
                });
            })
                                       );
        }
Esempio n. 24
0
 public static void RegisterGrid(GridDefaults gridDefaults, ColumnDefaults colDefauls)
 {
     RegisterGrid(gridDefaults, colDefauls, GRID_NAME);
 }