次の方法で共有


TOM API (AMO-TOM) でのエラーの処理

適用対象:SQL Server 2016 以降の Analysis Services Azure Analysis Services Fabric/Power BI Premium

Analysis Services 管理オブジェクト (AMO) テーブル オブジェクト モデル (TOM) などのマネージド ライブラリの一般的なプラクティスは、エラー状態をユーザーに報告するためのメカニズムとして例外を使用することです。

AMO-TOM でエラーが検出された場合、 ArgumentExceptionInvalidOperationException などの標準の .NET 例外をいくつかスローするだけでなく、TOM は TOM 固有の例外をいくつかスローすることもできます。

TOM 例外は AmoException クラスから派生し、AMO と TOM 固有の例外の両方をカバーします。

TOM での例外処理を示すために、より一般的な例外の 1 つ ( OperationException クラス) を確認しましょう。

OperationException は、ユーザーが Analysis Services サーバーで操作を開始し、サーバーが操作の実行に失敗した場合 、アクションが無効であったか、別の内部エラーまたは外部エラーが原因でスローされます。

OperationException オブジェクトがスローされると、サーバーから返される XMLA エラーの一覧が含まれます。

サーバーは無効な変更を受け入れないことを確認してください。 この場合は、UndoLocalChanges メソッドを使用してモデル ツリーを最後の既知の正常な状態に戻し、モデルを修正してから再送信します。

コード例: 例外を処理する

 try 
 { 
  // Change the Model, for example create a table. 
  // … 
   model.saveChanges(); 
 } 
  catch(operationException ex) 
 { 
  foreach(XmlaError err in ex.Results.OfType<XmlaError>().cast<XmlaError>()) 
  { 
   Console.WriteLine("Error returned from the server:" + err.Messsage ); 
  } 
 } 

次の手順

その他の関連する例外は次のとおりです。