2017-06-01 19 views
2

C#でAzure Analysis Servicesでパーティションの更新を自動化しようとしています。最新のMicrosoft.AnalysisServicesをインストールして参照しました。 .. 'ここにアセンブリが見つかりました:C#でSSAS Tabularモデルを参照する際の例外

https://docs.microsoft.com/en-us/azure/analysis-services/analysis-services-data-providers

私は次のコードを持っています:

using System; Microsoft.AnalysisServices.Tabularを使用しています。

public void Run() 
    { 
     Server asSrv = new Server(); 

     try 
     { 

      asSrv.Connect(ASConnectionString); 
      Database db = asSrv.Databases.FindByName("HospoIQTabular"); 
      Model m = db.Model; 

      // only refresh 2017 partitions 

      m.Tables["Sales"].Partitions["Sales - Post 2017"].RequestRefresh(RefreshType.Full); 
      m.Tables["Payments"].Partitions["Payments - Post 2017"].RequestRefresh(RefreshType.Full); 

      db.Model.SaveChanges();  // commit which will execute the refresh 

     } 
     catch (Exception e) 
     { 
      OnEventLog(e.Message); 
     } 
     finally 
     { 
      asSrv.Disconnect(); 
      asSrv = null; 
     } 

    } 

サーバーとデータベース自体に接続しても問題ありません。ただし、 'db.Model'を参照しようとすると、次の例外がスローされます。

'DataSourceType'型の値 '2'は予期しない値です。

私は見たことがありますが、どこに助けを見つけることができません。何かご意見は??私にとって

+1

に送ってくれたアンドレのコメントを読んだ後、私はそれを考え出しました。アセンブリをC:\ Program Files \ Microsoft SQL Server \ 140 \ SDK \ Assembliesから直接使用する必要があります。一部のブログではオンラインで表示されている130のバージョンではありません。 –

+0

あなたのご意見は私を助けました。あなたはこの質問への回答として投稿できますか? – arghtype

答えて

1

、働いていたパスがC:\Program Files (x86)\Microsoft SQL Server\140\SDK\Assemblies だったが、唯一の右方向

+0

パスに関連付けることができませんでした。私はその道で何を変えるべきですか?あなたはこの答えについてもっと具体的になりますか? – User193452