问题标签 [system.net]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8418 浏览

c# - 具有异步/等待和处理高负载的简单任务返回异步 HtppListener

我创建了以下简单HttpListener的同时服务多个请求(在 .NET 4.5 上):

我使用 Apache Benchmark Tool 对此进行负载测试。当我发出 1 个请求时,我得到一个请求的最大等待时间为 1 秒。例如,如果我发出 10 个请求,响应的最大等待时间会上升到 2 秒。

您将如何更改我上面的代码以使其尽可能高效?

编辑

在@JonSkeet 的回答之后,我将代码更改如下。最初,我试图模拟一个阻塞调用,但我想这是核心问题。所以,我接受了@JonSkeet 的建议并将其更改为 Task.Delay(1000)。现在,下面的代码给出了最大值。等待时间约为。10 个并发请求需要 1 秒:

0 投票
1 回答
169 浏览

silverlight - 如何从 Silverlight 浏览器应用程序启动 HTTP Server。HTTP 侦听器的替代方案

我需要从在 Silverlight 浏览器应用程序中运行的 ActiveX 控件启动轻量级 HTTP 服务器。HTTP 服务器在 localhost 中运行。我的 HTTP 服务器使用 HTTPListener。我测试了从加载相同 ActiveX 控件的测试浏览器应用程序启动 HTTP 服务器。它工作得很好。当我尝试从 Silverlight 浏览器应用程序上的同一个 ActiveX 控件启动 HTTP 服务器时,我在以下代码中收到错误: httpListener = new HttpListener() 错误是:Operation is not supported on this platform

是否有替代方法来实现可以从 Silverlight 浏览器启动的 HTTP 服务器?

0 投票
1 回答
1037 浏览

httpwebrequest - LINQPad 和 System.Net 跟踪

我正在尝试跟踪 LINQPad 脚本。我已经根据http://msdn.microsoft.com/en-us/library/ty48b824.aspx设置了 System.Net 跟踪。

我已将以下几行放入LINQPad.exe.config文件中:

文件已network.log创建。它包含来自 LINQPad 版本检查的日志:

但是,在运行使用 WebRequest 下载 url 的 LINQPad 脚本后,不会记录此请求。

为什么没有记录 LINQPad 脚本?是否可以记录它们?如果是这样,怎么做?

0 投票
3 回答
3430 浏览

c# - 使用静态方法从字符串中解析 IP 地址

是否有一种静态方法可以用来解析字符串以检查它是否是 IP 地址,而不必初始化新System.Net.IPAddress实例?

这就是我想要实现的目标

baseUri是一个Uri变量,并且Host是一个string。我正在寻找更简单的东西,例如:

由于该TryParse()方法需要一个String和一个out IPAddress引用,因此我不能null直接传递或丢弃对象。

感谢您对解析字符串以测试它是否是 IP 地址的更简单方法的建议。

0 投票
1 回答
423 浏览

.net - System.Net 套接字的非常奇怪的自发断开连接

我有一个自发断开的 System.Net 套接字,尤其是当我在 Visual Studio 2010 调试器中查询其状态 TWICE 时。

它是这样实例化的:

后来我连接并设置了一个循环来观察它的“已连接”属性。. .

在 Connect 调用之后,它的 Connected 属性在调试器中立即为true,并且网络嗅探器显示与主机的成功连接。

但是,如果我在调试器中再次检查 Connected 属性,它会显示为false

如果我没有在循环中设置任何断点,它将一直通过循环(100 秒),当它退出时,我第一次在调试器中查看时Connected 属性为true ,下一次为false

如果我让它循环 10 或 15 秒并设置断点,那么我第一次查看调试器时它会是真的,而我第二次查看它时会是的,然后它会在那一点上退出循环,证明它是不仅仅是调试器的工件 - 它确实设置为 false。

当它断开连接时,网络嗅探器上没有相关的活动,即它没有被主机断开连接。

这是一个单线程应用程序。我开始研究这个,因为后来当我尝试使用我的套接字时,我经常发现它断开连接并试图找出原因。

0 投票
1 回答
2493 浏览

c# - 为什么当前上下文中不存在 WebRequestMethods?

我正在使用 Visual Studio 2012 并使用 Windows Phone 7.1 应用程序开发。这是一个新创建的项目。

当我使用此代码时,为什么会出现此错误?

代码:

它似乎无法识别 WebRequestMethods 是 System.Net 的一部分。如果我指定 System.Net.WebRequestMethods.Http.Post,它也会失败。

0 投票
1 回答
531 浏览

c# - 当从接收到的响应流中读取数据时,无法在 try/catch 中捕获 monotouch webexception

我的 IO 应用程序向服务发送请求,该服务以指定的频率(通常每秒 2 或 3 次)发​​送一些数据。15 或 20 分钟后,我得到了 WebException,它不能被 try/catch 块捕获。使用 BinaryReader.ReadBytes() 读取数据时会引发异常。这是堆栈:

这是代码:

有人可以建议吗?

0 投票
1 回答
128 浏览

c# - 为转储消息注册网络回调的方法

我有一个 C# 控制台应用程序,我正在对休息 api 进行一些测试。目前我正在使用提琴手来捕获调试调用,这很好,但是......

有没有办法从网络堆栈注册回调以编程方式转储相同的信息,并且仅用于进程正在进行的调用。

本质上是一个特定于进程的程序化版本的提琴手。在 SSL 加密它之前(以及在它被解密之后)捕获它会有一个好处。

0 投票
1 回答
383 浏览

c# - 邮件未发送。程序没有响应

我创建了一个邮件程序,将电子邮件发送到我的帐户。我已经建立了 System.Net、System.Net.Mail。我在一些计算机上工作(我的主要计算机),但是每当我尝试做另一台计算机时,它都不会发送消息。我将它包围在 try、catch 块中,并且设置了异常变量。

代码:

0 投票
3 回答
42917 浏览

email - 如何从 Visual Basic 2010 Professional 发送邮件

我想使用 gmail id 发送邮件,我的代码如下所示,但是发生了错误。我该如何解决这个问题?