【问题标题】:.NET Web Service Project.NET Web 服务项目
【发布时间】:2011-04-08 15:13:42
【问题描述】:

我是 .NET 的新手。我需要根据前任留下的代码创建一个 Web 服务。我相信它是.NET 3.5。在他的代码所在的目录中有以下内容:


[根]
->App_Code
-->myWebSvc.cs
-->Fetch.cs

->App_Data

->斌
-->一些.dll
-->someother.dll

全球.asax
获取.asmx
网页配置


我需要重新创建他的 Web 服务,添加一些对 Kerberos API 的调用。我的前任没有留下任何 VS 解决方案文件。只是他的 Web 服务的一个文件夹,上面有上面的内容。当我在 Visual Studio 2010 中创建一个新的 .NET Web 服务项目时,我得到一个 Service1.asmx,它实际上打开了 Service1.asmx.cs。其中的内容和Fetch.asmx一点也不像,其实就是一行
<%@ WebService Language="C#" CodeBehind="~/App_Code/Fetch.cs" Class="Fetch" %>

我的问题是,我如何重新创建一个 .NET Web 服务项目并包含显然是用于 Fetch WS 的所有代码。我不知道如何在构建 .NET WS 时将什么放在哪里。在我的测试项目中没有 App_Code 目录。

有人知道如何最好地重新创建这个项目吗?我真的很茫然。

【问题讨论】:

    标签: .net visual-studio service


    【解决方案1】:

    您的前任可能创建了一个网站,而不是 Web 应用程序。如果你想打开他现有的东西,只需做一个file->open->website,然后浏览包含此服务的顶级目录并单击打开。也许这会让它更有意义。

    如果您只想查看代码以便复制/粘贴它,您可以查看 fetch.cs。它可能以某种方式引用了 myWebSvc.cs,因此您可能也希望将它放在您的新项目中。

    【讨论】:

    • 这确实很好用!谢谢你。经过一番挖掘,我发现我的前任非常喜欢网站。谢谢内森。
    【解决方案2】:

    这可能不是您正在查看的实际 Web 服务项目。在最坏的情况下,它可能是一个只有一个 .asmx 文件的网站。

    要将其转换为 Web 服务项目,您可以复制/粘贴/包含来自 myWebSvc.csFetch.cs 的代码/文件。这将允许您利用这两个文件中的代码,并且您可以随意重构。

    确保需要bin 中的任何适当的第三程序集引用,并根据需要将 web.config 中的任何项目带到您的新项目中。

    【讨论】:

    • p.campbell...您说“最坏的情况是它可能是一个只有一个 .asmx 文件的网站”...为什么这是最糟糕的解决方案?有一种方式或另一种方式的好处吗?有没有可以推荐的最佳做法?
    • @Chad:对...我的意思是“最差”,因为您可能期待一个现代的“网络服务项目”,但您可能看到的是一个“网站”项目。此设置没有问题,但“网站”已被弃用。 “最糟糕”在于您将不得不执行解决方法,包括复制代码和少量重新配置。
    【解决方案3】:

    这个项目有很多不为人知的地方。我可以做一些假设。

    就像已经说明的那样,看起来这是一个网站而不是应用程序。如果您想重新创建它并使用应用程序,您应该做一些事情。 bin 文件夹中的 dll 可能很重要,如果从 myWebSvc.cs 或 Fetch.cs 引用,则应进行迁移。我猜 myWebSvc.cs 是 Fetch.cs 使用的一个类,应该包含在内。如果你想在你的新 web 服务中生成一个 App_Code 文件夹,但更重要的是一切都在同一个命名空间中运行。

    在没有看到整个项目的代码的情况下,这些都是至关重要的事情。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-27
      • 1970-01-01
      • 2022-09-26
      相关资源
      最近更新 更多