如何将Web服务部署为单个dll? C#

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

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

WebService1.asmx:

 

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

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

  • 在解决方案资源管理器中右键单击您的项目
  • 设置输出类型: Class Library
  • Build-ASMX WebService项目
  • 转到项目的bin folder 。 你会在那里找到dll。
  • 如果您已经使用过任何external dlls/libs并想要一个dll,则必须将它们合并,使用Using Ilmerge在.NET中组合多个dll
  • 当我将asmx webservice部署到远程服务器上的IIS时。 我只部署

    • bin
    • webservicename.asmx
    • Web.Config

注意:您无需更改Web服务的.asmx文件中的标记。 它会自动dll in bin folder中的dll in bin folder找到它。