レポートサービスのレポートからC#アセンブリを呼び出す

StackOverflow https://stackoverflow.com/questions/1019295

  •  06-07-2019
  •  | 
  •  

質問

Report Services(2008)レポートにカスタムアセンブリへの参照を追加しました。テキストボックス(= Assembly.Class.Function()など)から呼び出す場合はうまく機能しますが、カスタムコードブロックでラップする場合は

Function GetString(ByVal key as String) as String

return Willow.Reporting.Localization.Resource.Get(User!Language, "WAR", "Title", key)

end function

ビルドエラーが発生します"非共有メンバーへの参照にはオブジェクト参照が必要です。"。

C#クラスと関数は静的です。

テストとして、クラスの非静的vrsionも作成し、インスタンスを作成し、カスタムコードのインスタンス名を使用してアクセスしましたが、運もありません。

レポートサービスのコードブロックからカスタムアセンブリを呼び出すことはできますか?

役に立ちましたか?

解決 2

VS IDEはロード時に一度だけアセンブリをロードするため、アセンブリを変更するたびにVSを閉じたり開いたりする必要があります(参照の削除とリセットも機能しませんでした)

静的呼び出しとインスタンスメソッドの両方を使用することもでき、埋め込みコードからは正常に機能します。例:

Function Test() as String
    return Instance.GetString()
End Function

Function Test2() as String
    return WR.StaticTest.GetString()
End Function

他のヒント

おそらくあなたはC#プログラマですか? 「共有」 VBでは静的を意味します。このメッセージは、クラスの(インスタンス)メソッドを呼び出すために、クラスのインスタンスを作成する必要があることを意味します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top