Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在代理后面_C#_Msbuild_Nuget - Fatal编程技术网

C# 在代理后面

C# 在代理后面,c#,msbuild,nuget,C#,Msbuild,Nuget,我发现从1.4版开始,NuGet就允许配置代理设置。但是,我找不到任何命令行示例 我正在尝试运行一些构建,但NuGet无法连接 如何在命令行上配置代理设置?我可能错了,但我认为它使用了IE的代理设置 如果它看到您需要登录,它会打开一个对话框并要求您这样做(即登录) 请参见此处的描述->我可能错了,但我认为它使用了IE的代理设置 如果它看到您需要登录,它会打开一个对话框并要求您这样做(即登录) 请参见此处的描述->也许您可以尝试将其添加到您的devenv.exe.config <system

我发现从1.4版开始,NuGet就允许配置代理设置。但是,我找不到任何命令行示例

我正在尝试运行一些构建,但NuGet无法连接


如何在命令行上配置代理设置?

我可能错了,但我认为它使用了IE的代理设置

如果它看到您需要登录,它会打开一个对话框并要求您这样做(即登录)


请参见此处的描述->

我可能错了,但我认为它使用了IE的代理设置

如果它看到您需要登录,它会打开一个对话框并要求您这样做(即登录)


请参见此处的描述->

也许您可以尝试将其添加到您的devenv.exe.config

<system.net>
    <defaultProxy useDefaultCredentials="true" enabled="true">
        <proxy proxyaddress="http://proxyaddress" />
    </defaultProxy>
    <settings>
        <servicePointManager expect100Continue="false" />
        <ipv6 enabled="true"/>
    </settings>
</system.net>

我从图书馆找到的


还有其他关于NuGet+网络问题的有价值的评论。

也许您可以将此内容发送到您的devenv.exe.config

<system.net>
    <defaultProxy useDefaultCredentials="true" enabled="true">
        <proxy proxyaddress="http://proxyaddress" />
    </defaultProxy>
    <settings>
        <servicePointManager expect100Continue="false" />
        <ipv6 enabled="true"/>
    </settings>
</system.net>

我从图书馆找到的


还有其他关于NuGet+网络问题的宝贵意见。

试试看。基本上,如果系统不信任nuget证书,连接可能会失败。

试试看。基本上,如果您的系统不信任nuget证书,连接可能会失败。

以下是我如何使用使用使用NTLM身份验证的公司代理来实现这一点。我下载了,然后运行以下命令(我在CodePlex上的注释中找到):

nuget.exe配置-设置http\u代理=http://my.proxy.address:port
nuget.exe config-设置http\u proxy.user=mydomain\myUserName
nuget.exe config-set http_proxy.password=mySuperSecretPassword
这会将以下内容放入位于
%appdata%\NuGet
的my
NuGet.config
(映射到我的Windows 7计算机上的C:\Users\myUserName\appdata\Roaming):


顺便说一句,这也解决了我第一次在VisualStudio中访问包源时NuGet才工作的问题

请注意,一些尝试过这种方法的人在评论中报告说,他们可以从命令行中省略设置
http\u proxy.password
键,或者从配置文件中删除它,并且仍然可以在整个代理中使用NuGet函数


但是,如果您发现必须在NuGet config文件中指定密码,请记住,更改网络登录时,必须从命令行更新NuGet config中存储的密码,如果您的代理凭据也是您的网络凭据

,下面是我为使用NTLM身份验证的公司代理所做的工作。我下载了,然后运行以下命令(我在CodePlex上的注释中找到):

nuget.exe配置-设置http\u代理=http://my.proxy.address:port
nuget.exe config-设置http\u proxy.user=mydomain\myUserName
nuget.exe config-set http_proxy.password=mySuperSecretPassword
这会将以下内容放入位于
%appdata%\NuGet
的my
NuGet.config
(映射到我的Windows 7计算机上的C:\Users\myUserName\appdata\Roaming):


顺便说一句,这也解决了我第一次在VisualStudio中访问包源时NuGet才工作的问题

请注意,一些尝试过这种方法的人在评论中报告说,他们可以从命令行中省略设置
http\u proxy.password
键,或者从配置文件中删除它,并且仍然可以在整个代理中使用NuGet函数


但是,如果您发现必须在NuGet config文件中指定密码,请记住,更改网络登录时,必须从命令行更新NuGet config中存储的密码,如果您的代理凭据也是您的网络凭据

以防您使用的是HTTPS版本,请注意,您必须使用HTTPS设置值

  • https\u代理
  • https\u proxy.user
  • https\u代理密码

如果您使用的是HTTPS版本,请注意必须使用HTTPS设置值

  • https\u代理
  • https\u proxy.user
  • https\u代理密码

除了@arcain的建议外,我还必须将以下Windows Azure内容交付网络url添加到代理服务器的白名单中:

.msecnd.net

除了@arcain的建议外,我还必须将以下Windows Azure内容交付网络url添加到我们代理服务器的白名单中:

.msecnd.net
相同“nuget代理”的另一种风格:或者,您可以将nuget代理设置设置为通过连接。下面的cmd将在用户的默认nuget配置文件中保存代理设置,地址为
%APPDATA%\nuget\nuget.config

nuget config -Set HTTP_PROXY=http://127.0.0.1:8888
每当你需要nuget上网时,只要打开Fiddler,就可以让Fiddler监听默认端口8888

此配置对密码更改不敏感,因为fiddler将使用上游代理为您解决任何身份验证问题。

相同“nuget代理”的另一种风格:或者,您可以将nuget代理设置设置为通过连接。下面的cmd将在用户的默认nuget配置文件中保存代理设置,地址为
%APPDATA%\nuget\nuget.config

nuget config -Set HTTP_PROXY=http://127.0.0.1:8888
每当你需要nuget上网时,只要打开Fiddler,就可以让Fiddler监听默认端口8888

此配置对密码更改不敏感,因为fiddler将使用上游代理为您解决任何身份验证问题。

只是一个小问题
<configuration>
  <config>
    <add key="http_proxy" value="http://<IP>:<Port>" />
    <add key="http_proxy.user" value="<user>" />
    <add key="http_proxy.password" value="<password>" />
  </config>
</configuration>