如何部署web服务作为一个单一的dll?c#

本文关键字:单一 一个 dll 何部署 部署 web 服务 | 更新日期: 2023-09-27 18:08:51

我在VS中创建了一个项目。我已经创建了一些asmx服务。为了使它在IIS上工作,我只是将cs和asmx文件复制到站点的文件夹。一切都很完美。现在,当涉及到将我的服务从本地pc部署到开发服务器时,我被告知要交付一个dll。我不知道如何在这种类型的项目上编译dll。这可能吗?

然后,我创建一个ASP。网络项目,把我所有的东西都放在那里。它创建了一个单独的dll。但如果我把它放到那个文件夹,然后告诉我的asmx,后面的代码在那个dll中,当我在浏览器中检查它时,我会得到解析错误。

WebService1.asmx:

<%@ WebService Language="C#" CodeBehind="~/AllWebServices.dll" Class="MyNamespace.WebService1" %>

也许我需要添加smth在类属性?

如何部署web服务作为一个单一的dll?c#

我在远程服务器的IIS上部署了Asmx webservices。

  • 在解决方案资源管理器

    中右键单击您的项目
  • 设置输出类型:Class Library

  • Build-ASMX WebService Project

  • 进入项目的bin folder。你会发现dll在那里。

  • 如果你已经使用了任何external dlls/libs,想要一个单一的dll,你必须合并它们,使用using Ilmerge在。net中合并多个dll

  • 当我在远程服务器上部署我的asmx web服务到IIS时。我只部署

    • bin
    • webservicename.asmx
    • Web.Config

注意:你不需要改变你的webservice的.asmx文件中的标记。它会自动在dll in bin folder中找到它。

相关文章: