如何从 C#.net 中的 Web 应用程序从 SVN 存储库下载文件?我想以编程方式下载文件。单击按钮时,它应该从 TextBox 中给出的 URL 下载文件。
问问题
4515 次
2 回答
6
首先,您应该能够直接在存储库上访问(只读)文件,而无需 SVN 客户端(尽管您可能需要身份验证)。在这种情况下,就像从任何 URL 下载任何文件一样:
using (WebClient client = new WebClient())
{
// In case you need authentication...
// client.Credentials = new NetworkCredential("username", "password");
client.DownloadFile(fileUrl, localDestinationPath);
}
然而,正如 Vinayak 所说,SharpSvn 并不是一个糟糕的方法——它非常适合处理 SVN 交互。所以如果使用标准的 WebClient 不起作用,可以在 SharpSvn 中执行以下操作来获取文件流:
MemoryStream stream = new MemoryStream();
using (SvnClient client = new SvnClient())
{
client.Authentication.DefaultCredentials = new NetworkCredential("username", "password");
client.Write(SvnTarget.FromUri(svnFilePath), stream);
}
return stream;
希望这可以帮助!
于 2013-04-26T15:05:19.003 回答
1
于 2013-04-25T06:35:18.507 回答