0

私はここでこのスクリプトを利用しています:

https://gist.github.com/3043878

Powershell を使用して、レポート サービスの Visual Studio プロジェクトを SSRS にデプロイしようとします。ただし、2010 Web サービスを使用するように変更し、それに応じてオブジェクトの初期化名前空間を変更したことに注意してください。

115 行目で、新しく作成され、入力されたオブジェクト $DataSource が返されます。

このメソッドが呼び出され、結果の出力が使用される 147 行目と 148 行目で、次のエラーが発生します。

 Property 'Name' cannot be found on this object. Make sure that it exists.

ただし、実行すると:

$DataSource | Select Name
$DataSource | Select Path

期待値を返します

また、実行:

$DataSource | Get-Member
$DataSource | Select *

Name プロパティと Path プロパティもリストします。

New-SSRSDataSource メソッドから Powershell が実際に返すものは何ですか?それは単なる DataSource オブジェクトではありませんか? 返された Name プロパティにアクセスできないのはなぜですか?

4

1 に答える 1

1

私は自分の質問に答えるのが嫌いです...しかし...

2005 から 2010 へのサービスの変更で、CreateDataSource メソッドは void リターンから、Name と Path のプロパティも持つ、作成されたデータソースを表す CatalogItem を返すようになりました。

メソッドが返された後にこれらのプロパティにアクセスしようとすると、powershell が同じ名前の複数のプロパティを検出し、混乱を引き起こしていました。New-SSRSDataSource メソッドで DataSource オブジェクトを作成する必要はなくなりました (または、問題を解決する他の方法があります)。

于 2013-01-02T23:42:37.047 に答える