TFS サーバーの Reporting Services インスタンスからデータをダウンロードしようとしています。
ドメインに参加していないコンピューターでコードを実行する必要があることを考えると、自分で資格情報を設定することにしました。うまくいきませんでした。HTTP 401 Unauthorized が返ってきました。わかりましたので、Fiddler を接続して何が起こっているかを確認しました。
しかし、それが私がハイゼンベルグを手に入れたときです-電話は今では問題なく通過しました. そのため、認証は Fiddler が接続された状態で行われますが、Fiddler が接続されていないと失敗します。Webclient が壊れているのでしょうか、それともここで重要な何かが欠けているのでしょうか?
private void ThisWorksWhenDomainJoined()
{
WebClient wc = new WebClient();
wc.Credentials = CredentialCache.DefaultNetworkCredentials;
wc.DownloadString("http://teamfoundationserver/reports/........"); //Works
}
private void ThisDoesntWork()
{
WebClient wc = new WebClient();
wc.Credentials = new NetworkCredential("username", "password", "domain");
wc.DownloadString("http://teamfoundationserver/reports/........"); //blows up wih HTTP 401
}