Esempio n. 1
0
        public void ConfigureServices(IServiceCollection services)
        {
            services
            // Configures CORS policies.
            .AddCors(options => {
                options.AddPolicy("CorsPolicy", builder => {
                    builder.AllowAnyOrigin();
                    builder.AllowAnyMethod();
                    builder.WithHeaders("Content-Type");
                });
            })
            // Adds the DevExpress middleware.
            .AddDevExpressControls()
            // Adds controllers.
            .AddControllers();

            // Configures the dashboard backend.
            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();

                configurator.SetDashboardStorage(new DashboardFileStorage(FileProvider.GetFileInfo("App_Data/Dashboards").PhysicalPath));
                configurator.SetDataSourceStorage(CreateDataSourceStorage());
                configurator.ConfigureDataConnection += Configurator_ConfigureDataConnection;

                return(configurator);
            });
        }
Esempio n. 2
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services
            .AddResponseCompression()
            .AddDevExpressControls()
            .AddMvc();

            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();

                configurator.SetConnectionStringsProvider(new DashboardConnectionStringsProvider(Configuration));

                DashboardFileStorage dashboardFileStorage = new DashboardFileStorage(FileProvider.GetFileInfo("Data/Dashboards").PhysicalPath);
                configurator.SetDashboardStorage(dashboardFileStorage);

                DataSourceInMemoryStorage dataSourceStorage = new DataSourceInMemoryStorage();

                // Registers an SQL data source.
                DashboardSqlDataSource sqlDataSource = new DashboardSqlDataSource("SQL Data Source", "NWindConnectionString");
                sqlDataSource.DataProcessingMode     = DataProcessingMode.Client;
                SelectQuery query = SelectQueryFluentBuilder
                                    .AddTable("Categories")
                                    .Join("Products", "CategoryID")
                                    .SelectAllColumns()
                                    .Build("Products_Categories");
                sqlDataSource.Queries.Add(query);
                dataSourceStorage.RegisterDataSource("sqlDataSource", sqlDataSource.SaveToXml());

                configurator.SetDataSourceStorage(dataSourceStorage);

                return(configurator);
            });
        }
Esempio n. 3
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services
            .AddDevExpressControls()
            .AddControllersWithViews();

            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();

                configurator.SetConnectionStringsProvider(new DashboardConnectionStringsProvider(Configuration));

                var dataBaseDashboardStorage = new DataBaseEditaleDashboardStorage(
                    Configuration.GetConnectionString("DashboardStorageConnection"));

                configurator.SetDashboardStorage(dataBaseDashboardStorage);

                DataSourceInMemoryStorage dataSourceStorage = new DataSourceInMemoryStorage();
                DashboardObjectDataSource objDataSource     = new DashboardObjectDataSource("Object Data Source", typeof(SalesPersonData));

                objDataSource.DataMember = "GetSalesData";

                dataSourceStorage.RegisterDataSource("objectDataSource", objDataSource.SaveToXml());

                configurator.SetDataSourceStorage(dataSourceStorage);

                return(configurator);
            });
        }
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            // Configures services to use the Web Dashboard Control.
            services
            .AddCors(options => {
                options.AddPolicy("CorsPolicy", builder => {
                    builder.AllowAnyOrigin();
                    builder.AllowAnyMethod();
                    builder.WithHeaders("Content-Type");
                });
            })
            .AddDevExpressControls()
            .AddControllers();

            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();

                configurator.SetDashboardStorage(new DashboardFileStorage(FileProvider.GetFileInfo("App_Data/Dashboards").PhysicalPath));
                configurator.SetDataSourceStorage(CreateDataSourceStorage());
                configurator.SetConnectionStringsProvider(new DashboardConnectionStringsProvider(Configuration));
                configurator.ConfigureDataConnection += Configurator_ConfigureDataConnection;

                return(configurator);
            });
        }
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();
            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();

                // Create and configure a dashboard storage.
                DashboardFileStorage dashboardFileStorage = new DashboardFileStorage(FileProvider.GetFileInfo("Data/Dashboards").PhysicalPath);
                configurator.SetDashboardStorage(dashboardFileStorage);

                // Create and configure a data source storage.
                DataSourceInMemoryStorage dataSourceStorage = new DataSourceInMemoryStorage();

                SqlDataSourceConfigurator.ConfigureDataSource(dataSourceStorage);
                ExcelDataSourceConfigurator.ConfigureDataSource(configurator, dataSourceStorage, FileProvider);
                ObjectDataSourceConfigurator.ConfigureDataSource(configurator, dataSourceStorage);
                EFDataSourceConfigurator.ConfigureDataSource(dataSourceStorage);
                JsonDataSourceConfigurator.ConfigureDataSource(configurator, dataSourceStorage, FileProvider);
                ExtractDataSourceConfigurator.ConfigureDataSource(configurator, dataSourceStorage, FileProvider);
                OlapDataSourceConfigurator.ConfigureDataSource(configurator, dataSourceStorage);
                XpoDataSourceConfigurator.ConfigureDataSource(dataSourceStorage);

                configurator.SetDataSourceStorage(dataSourceStorage);

                // Uncomment the next line to allow users to create new data sources based on predefined connection strings.
                // configurator.SetConnectionStringsProvider(new DashboardConnectionStringsProvider(Configuration));

                return(configurator);
            });

            services.AddDevExpressControls();
        }
Esempio n. 6
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services
            .AddCors(options => {
                options.AddPolicy("AllowAnyOrigin", builder => {
                    builder.AllowAnyOrigin();
                    builder.AllowAnyHeader();
                    builder.AllowAnyMethod();
                });
            })
            .AddMvc();

            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();

                configurator.SetConnectionStringsProvider(new DashboardConnectionStringsProvider(Configuration));

                //DashboardFileStorage dashboardFileStorage = new DashboardFileStorage(FileProvider.GetFileInfo("Data/Dashboards").PhysicalPath);
                //configurator.SetDashboardStorage(dashboardFileStorage);

                configurator.SetDashboardStorage(serviceProvider.GetService <SessionDashboardStorage>());

                DataSourceInMemoryStorage dataSourceStorage = new DataSourceInMemoryStorage();

                // Registers an SQL data source.
                DashboardSqlDataSource sqlDataSource = new DashboardSqlDataSource("SQL Data Source", "NWindConnectionString");
                sqlDataSource.DataProcessingMode     = DataProcessingMode.Client;
                SelectQuery query = SelectQueryFluentBuilder
                                    .AddTable("Categories")
                                    .Join("Products", "CategoryID")
                                    .SelectAllColumns()
                                    .Build("Products_Categories");
                sqlDataSource.Queries.Add(query);
                dataSourceStorage.RegisterDataSource("sqlDataSource", sqlDataSource.SaveToXml());

                configurator.SetDataSourceStorage(dataSourceStorage);

                return(configurator);
            });

            services.AddDevExpressControls();

            services
            .AddDistributedMemoryCache()
            .AddSession();
            services.TryAddSingleton <IHttpContextAccessor, HttpContextAccessor>();
            services.AddTransient <SessionDashboardStorage>();
        }
        // This method gets called by the runtime. Use this method to add services to the container.
        // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddRazorPages();
            services.AddServerSideBlazor();
            services.AddMvc();

            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();

                configurator.SetDashboardStorage(new DashboardFileStorage(FileProvider.GetFileInfo("App_Data/Dashboards").PhysicalPath));
                configurator.SetDataSourceStorage(new DataSourceInMemoryStorage());
                configurator.SetConnectionStringsProvider(new DashboardConnectionStringsProvider(Configuration));
                configurator.ConfigureDataConnection += Configurator_ConfigureDataConnection;

                return(configurator);
            });
        }
Esempio n. 8
0
        public void ConfigureServices(IServiceCollection services)
        {
            services
            .AddDevExpressControls()
            .AddMvc();

            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();

                configurator.SetDashboardStorage(new DashboardFileStorage("Dashboards"));
                configurator.SetConnectionStringsProvider(new DashboardConnectionStringsProvider(Configuration));
                configurator.SetDataSourceStorage(CreateDataSourceStorage());
                configurator.ConfigureDataConnection += Configurator_ConfigureDataConnection;

                return(configurator);
            });
        }
Esempio n. 9
0
        public override IController CreateController(RequestContext requestContext, string controllerName)
        {
            if (controllerName.Equals("Tablero"))
            {
                short  sesionUsuarioID  = 1;
                byte   moduloID         = 5;
                string connectionString = ConfigurationManager.ConnectionStrings["DBConexion"].ConnectionString;
                bool   editable         = true;

                DashboardConfigurator dashboardConfigurator = new DashboardConfigurator();

                //Definir donde se guardan los dashboard
                //dashboardConfigurator.SetDashboardStorage(new DashboardFileStorage(@"~/App_Data/Dashboards"));
                DataBaseEditableDashboardStorage dataBaseDashboardStorage = new DataBaseEditableDashboardStorage(connectionString, moduloID, sesionUsuarioID, editable);
                dashboardConfigurator.SetDashboardStorage(dataBaseDashboardStorage);

                //Definir un datasource que se cargue por defecto en el dashboard
                DataSourceInMemoryStorage dataSourceStorage = new DataSourceInMemoryStorage();
                dataSourceStorage.RegisterDataSource(DataSourceGenerator.CreateDefaultDataSource(moduloID).SaveToXml());
                dashboardConfigurator.SetDataSourceStorage(dataSourceStorage);

                //Estabecer datos de conexión a la base de datos
                //DashboardConfigurator.Default.SetConnectionStringsProvider(new ConnectionStringsProvider());

                //Establecer esquema para mostrar solo las tablas o vistas que se requiera
                dashboardConfigurator.SetDBSchemaProvider(new CustomDBSchemaProvider());

                dashboardConfigurator.ConfigureDataConnection += (s, e) =>
                {
                    if (e.DataSourceName == "DataSource")
                    {
                        string dsConnectionString = ConfigurationManager.ConnectionStrings["DASHBOARDS_CR"].ConnectionString;
                        e.ConnectionParameters = new CustomStringConnectionParameters(dsConnectionString);
                    }
                };
                return(new DashboardController(dashboardConfigurator));
            }
            else
            {
                return(base.CreateController(requestContext, controllerName));
            }
        }
        // This method gets called by the runtime. Use this method to add services to the container.
        // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddRazorPages();
            services.AddServerSideBlazor();
            services.AddMvc();

            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();

                // Register Dashboard Storage
                configurator.SetDashboardStorage(new DashboardFileStorage(FileProvider.GetFileInfo("App_Data/Dashboards").PhysicalPath));
                // Create a sample JSON data source
                DataSourceInMemoryStorage dataSourceStorage = new DataSourceInMemoryStorage();
                DashboardJsonDataSource jsonDataSourceUrl   = new DashboardJsonDataSource("JSON Data Source (URL)");
                jsonDataSourceUrl.JsonSource = new UriJsonSource(
                    new Uri("https://raw.githubusercontent.com/DevExpress-Examples/DataSources/master/JSON/customers.json"));
                jsonDataSourceUrl.RootElement = "Customers";
                dataSourceStorage.RegisterDataSource("jsonDataSourceUrl", jsonDataSourceUrl.SaveToXml());
                configurator.SetDataSourceStorage(dataSourceStorage);

                return(configurator);
            });
        }
Esempio n. 11
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services
            .AddResponseCompression()
            .AddDevExpressControls()
            .AddMvc();

            services.AddScoped <DashboardConfigurator>((IServiceProvider serviceProvider) => {
                DashboardConfigurator configurator = new DashboardConfigurator();
                configurator.SetConnectionStringsProvider(new DashboardConnectionStringsProvider(Configuration));

                DashboardFileStorage dashboardFileStorage = new DashboardFileStorage(FileProvider.GetFileInfo("Data/Dashboards").PhysicalPath);
                configurator.SetDashboardStorage(dashboardFileStorage);

                DataSourceInMemoryStorage dataSourceStorage = new DataSourceInMemoryStorage();

                // Configures an SQL data source.
                DashboardSqlDataSource sqlDataSource = new DashboardSqlDataSource("SQL Data Source", "NWindConnectionString");
                sqlDataSource.DataProcessingMode     = DataProcessingMode.Client;
                SelectQuery query = SelectQueryFluentBuilder
                                    .AddTable("Orders")
                                    .SelectAllColumnsFromTable()
                                    .Build("SQL Orders");
                sqlDataSource.Queries.Add(query);

                // Configures an Object data source.
                DashboardObjectDataSource objDataSource = new DashboardObjectDataSource("Object Data Source");
                objDataSource.DataId = "odsInvoices";

                // Configures an Excel data source.
                DashboardExcelDataSource excelDataSource = new DashboardExcelDataSource("Excel Data Source");
                excelDataSource.ConnectionName           = "excelSales";
                excelDataSource.FileName      = FileProvider.GetFileInfo("Data/SalesPerson.xlsx").PhysicalPath;
                excelDataSource.SourceOptions = new ExcelSourceOptions(new ExcelWorksheetSettings("Data"));

                // Configures a JSON data source.
                DashboardJsonDataSource jsonDataSource = new DashboardJsonDataSource("JSON Data Source");
                jsonDataSource.ConnectionName          = "jsonCategories";
                Uri fileUri = new Uri(FileProvider.GetFileInfo("Data/Categories.json").PhysicalPath, UriKind.RelativeOrAbsolute);
                jsonDataSource.JsonSource = new UriJsonSource(fileUri);

                // Registers a Federated data source.
                dataSourceStorage.RegisterDataSource("federatedDataSource", CreateFederatedDataSource(sqlDataSource,
                                                                                                      excelDataSource, objDataSource, jsonDataSource).SaveToXml());

                configurator.SetDataSourceStorage(dataSourceStorage);

                configurator.DataLoading += (s, e) => {
                    if (e.DataId == "odsInvoices")
                    {
                        e.Data = Invoices.CreateData();
                    }
                };

                configurator.ConfigureDataConnection += (s, e) => {
                    if (e.ConnectionName == "excelSales")
                    {
                        (e.ConnectionParameters as ExcelDataSourceConnectionParameters).FileName = FileProvider.GetFileInfo("Data/SalesPerson.xlsx").PhysicalPath;
                    }
                    else if (e.ConnectionName == "jsonCategories")
                    {
                        UriJsonSource source = new UriJsonSource(new Uri(FileProvider.GetFileInfo("Data/Categories.json").PhysicalPath, UriKind.RelativeOrAbsolute));
                        (e.ConnectionParameters as JsonSourceConnectionParameters).JsonSource = source;
                    }
                };

                return(configurator);
            });
        }