メインコンテンツまでスキップ

MS SQL Server データ ソースの置き換え

RVDataSourceItemRVSqlServerDataSourceItem としてキャストし、そのプロパティを次のように変更することで、ダッシュボード内のすべての MS SQL Server データ ソース項目の MS SQL Server ホスト、データベース、およびテーブル名を変更できます。

public class DataSourceProvider: IRVDataSourceProvider
{
public Task<RVDataSourceItem> ChangeDataSourceItemAsync(IRVUserContext userContext, string dashboardId, RVDataSourceItem dataSourceItem)
{
if (dataSourceItem is RVSqlServerDataSourceItem sqlServerDsi)
{
// Optionally change SQL Server host here too - overrides the values set in ChangeDataSourceAsync
var sqlServerDS = (RVSqlServerDataSource)sqlServerDsi.DataSource;
sqlServerDS.Host = "10.0.0.50";

// Change SQL Server database and table/view
sqlServerDsi.Database = "Adventure Works 2";
sqlServerDsi.Table = "Employees";
}

return Task.FromResult(dataSourceItem);
}

public Task<RVDashboardDataSource> ChangeDataSourceAsync(IRVUserContext userContext, RVDashboardDataSource dataSource)
{
if (dataSource is RVSqlServerDataSource sqlDatasource)
{
// Change SQL Server host and database
sqlDatasource.Host = "10.0.0.20";
sqlDatasource.Database = "Adventure Works";
}

return Task.FromResult(dataSource);
}
}
注意

データベース Host は、RVSqlServerDataSource オブジェクトでのみ変更できます。他のすべてのプロパティには、RVSqlServerDataSourceItem を使用します。

コードの取得

このサンプルのソース コードは GitHub にあります。