是的,可以在不修改当前代码的情况下指定您自己的凭据。不过,这只需要您编写一小段代码。
使用此类创建一个名为 SomeAssembly.dll 的程序集:
namespace SomeNameSpace{ public class MyProxy : IWebProxy { public ICredentials Credentials { get { return new NetworkCredential("user", "password"); } //or get { return new NetworkCredential("user", "password","domain"); } set { } } public Uri GetProxy(Uri destination) { return new Uri("http://my.proxy:8080"); } public bool IsBypassed(Uri host) { return false; } }}
将此添加到您的配置文件:
<defaultProxy enabled="true" useDefaultCredentials="false"> <module type = "SomeNameSpace.MyProxy, SomeAssembly" /></defaultProxy>
这将“注入”列表中的新代理,并且由于没有默认凭据,因此WebRequest类将首先调用您的代码并请求您自己的凭据。您将需要将组装SomeAssembly放置在CMS应用程序的bin目录中。
这是某种程度上的静态代码,要获取所有字符串(如用户,密码和URL),您可能需要实现自己的ConfigurationSection或在AppSettings中添加一些信息,这要容易得多。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)