2016-05-12 7 views
0

私はblockchain.info APIを使用するアプリケーションを作成しようとしています。見つけたlibraryクラスのコンストラクタが内部の場合にオブジェクトを作成する方法

今私は価格を受けようとしています。 ExchangeRateExplorer.csで価格を取得します。 :

public class ExchangeRateExplorer 
{ 
    private IHttpClient httpClient { get; } 

    internal ExchangeRateExplorer(IHttpClient httpClient) 
    { 
     this.httpClient = httpClient; 
    } 

    public async Task<Dictionary<string, Currency>> GetTickerAsync() 
    { 
     //... 
    } 

    public async Task<double> ToBtcAsync(string currency, double value) 
    { 
     //... 
    } 
} 

私が理解しているように、メソッドを使用するには、インスタンスを作成し、そのインスタンスを介してメソッドを使用する必要があります。しかし、そのクラスのコンストラクタは内部的なものです。このクラスのメソッドの使い方は? 恐らく疑わしい質問ですが、質問はそれほど簡単ではありません。 ご協力いただきありがとうございます!

+0

内部クラスは、同じアセンブリによって呼び出すことができます。https://msdn.microsoft.com/en-sg/library/7c5ka91b.aspx - 通常は同じプロジェクトです。 – Ian

答えて

1

documentation だからといって古くなっていますが、 はあまり明白ではありませんが、BlockchainApiHelper(string apiCode = null, IHttpClient baseHttpClient = null, string serviceUrl = null, IHttpClient serviceHttpClient = null)を作成する必要があります。

次に、あなたが探しているメソッドを呼び出すことができるExchangeRateExplorerのようなプロパティにアクセスできます。

+0

それは答えのようです、ありがとう。 – Azi

0

私はあなたの質問を理解していないかもしれませんが、コンストラクタがinternalであるAPIクラスを使用している場合は、APIの作成者がそのコンストラクタをAPIのクライアントとして使用する予定がないためです。

APIドキュメントがある場合は、そのクラスのインスタンスをどこでどのように入手できるかを知りたいと思います。たとえば、ビルダーや工場を探してください。

+0

ライブラリのドキュメントが古いです。彼らはコードを書き直しましたが、ドキュメントを書き直しませんでした。 – Azi

関連する問題