SharpSVN ForceCredentials 覆盖认证缓存

SharpSVN ForceCredentials overwrites authentication cache

SVN 与用于许多不同目的的每个成熟工具一样,非常复杂。 SharpSVN 试图以编程方式公开所有 SVN 功能,因此它也很复杂。我只是尝试在同一 SVN 服务器(领域)上将 TortioseSVN 用于其他目的的机器上使用给定 username/password 授权工具。

var client = new SvnClient();
client.Authentication.ForceCredentials("userName", "password");

不幸的是,这将 TortioseSVN 缓存的现有凭据替换为该工具使用的凭据。有没有一种简单的方法可以避免覆盖身份验证缓存并忽略其中的内容?

尽管通过订阅 client.Authentication 属性 的 UserNameHandlersUserNamePasswordHandlers 事件,可能性是无限的,但最简单的解决方案似乎是:

var client = new SvnClient();
client.Authentication.Clear();
client.Authentication.DefaultCredentials = new NetworkCredential("userName", "password");