1

我是编写和部署 Web 服务的新手,我有一个 Web 服务,当我从 C# 应用程序运行它时,响应第一个调用需要 4-8 秒。随后的调用在半秒范围内。如果我从 Internet Explorer 调用 Web 服务,它会立即返回。

我的 Web 服务是在 windows web server 2008 服务器上运行的 Soap Web 服务。几天来我一直在寻找解决方案,但我尝试过的没有任何帮助。尝试过的两件事似乎不起作用是预编译 XmlSerializers(生成序列化程序集已打开)并使用 aspnet_compiler 预编译 Web 服务。我将 aspnet_compiler 的输出复制到服务器并粘贴到相应的文件夹中。

我的应用程序使用添加 Web 引用向导时创建的自动生成代码 Web 参考代码调用 Web 服务。

还有什么我可以尝试的吗?

4

1 回答 1

2

一个常见的罪魁祸首是在没有与 Internet 的开放连接的情况下检查 Publisher Evidence(基本上是程序集签名)。

尝试将以下行添加到您的 ASPNET.CONFIG 或 APP.CONFIG 文件中:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <runtime>
        <generatePublisherEvidence enabled="false"/>
    </runtime>
</configuration>

有关背景和详细信息,请参阅在线文章,例如

于 2012-04-09T21:51:32.027 回答