2012-05-03 12 views
1

https://github.com/rackspace/csharp-cloudfilesを使用して、コマンドラインツールを使用してRackspace Cloud Filesにファイルをアップロードしています。ファイルをCackでRackspace Cloudファイルにアップロードする際の進捗状況

私はアップロードの進捗状況をどのように追跡するのかわかりません(何かイベントや何かがないようです)。ここで

はコードです:

// Create credentials, client and connection 
var creds = new UserCredentials(username, apiKey); 
CF_Client client = new CF_Client(); 
Connection conn = new CF_Connection(creds, client); 
conn.Authenticate(); 

// Get container and upload file 
var container = new CF_Container(conn, client, containerName); 
var obj = new CF_Object(conn, container, client, remoteFileName); 
obj.WriteFromFile(localFilePath); 

答えて

1

ありビルトイン1、なしがありますようには見えませんが、あなたはおそらく、あなた自身を追加することができます。

代わりに、入力を測定することもできます。もしあれば、あなたがthe sourceを見れば、あなたは合計バイト読み込みの進捗状況を測定し、別のストリームクラスで書くに渡すだけ

Dictionary<string,string> headers = new Dictionary<string,string>(); 
using(Stream stream = System.IO.File.OpenRead(localFilePath)) 
{ 
    obj.Write(stream, headers); 
} 

はそうあなたがストリームをラップすることができWriteFromFileが効果的であることがわかります(周りにいくつかあります検索するか、自分で書くのは簡単です)。コードから進捗通知を追加したい場合は、それをラップされたOpenStack Client objectに追加する必要がありますが、それもあまり難しくありません。

+0

ありがとう、私はそれを行かせます。 –

関連する問題