我想从 C# 代码创建一个 Analysis Services 数据库、数据源和数据源视图。在我添加挖掘结构和模型并尝试处理该结构之前,一切似乎都运行良好,然后我收到以下错误:
高级关系引擎中的错误。数据源视图不包含“dbo_Challenger201501TrainingAll”表或视图的定义。可能尚未设置 Source 属性。
DSV 旨在包含与数据源中的表相同的信息。
这是我创建数据集和 DSV 的代码:
private static object FillDataSet(SqlConnection objConnection, DataSet objDataSet, string strTableName)
{
try
{
string strCommand = "Select * from " + strTableName;
SqlDataAdapter objEmpData = new SqlDataAdapter(strCommand, objConnection);
objEmpData.MissingSchemaAction = MissingSchemaAction.AddWithKey;
objEmpData.FillSchema(objDataSet, SchemaType.Source, strTableName);
Console.WriteLine(objEmpData.ToString());
return objDataSet;
}
catch (Exception ex)
{
Console.WriteLine("Error in Creating a DataSourceView - FillDataSet. Error Message -> " + ex.Message);
return null;
}
}
private static object CreateDataSourceView(Microsoft.AnalysisServices.Database objDatabase, RelationalDataSource objDataSource, DataSet objDataSet,
string strCubeDataSourceViewName)
{
try
{
Console.WriteLine("Creating DataSourceView ...");
DataSourceView objDataSourceView = new DataSourceView();
//Add Data Source View to the Database.
objDataSourceView = objDatabase.DataSourceViews.Add(strCubeDataSourceViewName);
objDataSourceView.DataSourceID = objDataSource.ID;
objDataSourceView.Schema = objDataSet;
objDataSourceView.Update();
return objDataSourceView;
}
catch (Exception ex)
{
Console.WriteLine("Error in Creating a DataSourceView - CreateDataSourceView. Error Message -> " + ex.Message);
return null;
}
}
代码编译并运行良好。任何人都可以看到可能无法正确创建 DSV 的任何原因吗?