Всякий раз, когда я пытаюсь получить недавно добавленную базу данных или получить доступ к объекту модели базы данных, я очень часто сталкиваюсь с исключениями AmoExceptions или NullReferenceExceptions, особенно, если пытаюсь сделать это вскоре после развертывания базы данных (хотя я можно увидеть базу данных через веб-сайт PowerBI).
Мне удалось немного снизить нестабильность, запрограммировав логику повтора, но это кажется несостоятельным и неустойчивым за пределами среды разработки.< /p>
Например, приведенный ниже (упрощенный) код пытается заменить модель временной базы данных на модель стандартной (невременной) базы данных.
Вот мой код:
Код: Выделить всё
// C# code
// Previous code to deploy Power BI database to PBI Workspace
Microsoft.AnalysisServices.Tabular.Server PBIServer = new Microsoft.AnalysisServices.Tabular.Server();
PBIServer.Connect(PowerBIConnectionString);
Microsoft.AnalysisServices.Tabular.Database tabularCubeFrom = PBIServer.Databases.FindByName(TabularCubeTemporaryName);
Microsoft.AnalysisServices.Tabular.Database tabularCubeTo = PBIServer.Databases.FindByName(TabularCubeName);
tabularCubeFrom.Model.CopyTo(tabularCubeTo.Model);
// Code to save changes, disconnect, etc.
- FindByName() не возвращает корректный результат. База данных вскоре после ее создания (базу данных можно увидеть в PowerBI)
Объект модели в объекте базы данных не заполняется (например, в строке, вызывающей CopyTo() выше)< /li>
Есть ли надежный способ гарантировать Объект модели полностью загружен без специальной логики для повторной попытки после задержки?
Подробнее здесь: https://stackoverflow.com/questions/790 ... ter-tabula
Мобильная версия