首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Web服务与引用DLL的Web服务

Web服务与引用DLL的Web服务
EN

Stack Overflow用户
提问于 2011-01-13 18:04:15
回答 3查看 1.7K关注 0票数 0

我在开发web服务方面特别新手。我有一个现有的web服务需要重做,因为目前它似乎不起作用,

web服务具有对DLL类的引用

代码语言:javascript
复制
<%@ WebService Language="C#" Class="MyClass"%>

这就是整个content...and,它有一个位于MyClass.dll文件夹中的bin

我所做的是将MyClass类放在Web服务本身中。

代码语言:javascript
复制
<%@ WebService Language="C#" Class="MyClass"%>

using System;
using System.IO;
using System.Data;
//...

[GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
[WebServiceAttribute(Namespace = "http://service.search.lsc.slacker.com")]
[WebServiceBindingAttribute(Name = "TLSCSoap22Binding", Namespace = "http://service.search.lsc.slacker.com")]
public class MYClass: System.Web.Services.WebService
{    
    //...
}

它确实起作用了,测试了所有的函数,一切都像预期的那样工作。

然而,在提出这个解决方案之前,我需要看到所有的影响,我可能忽略了引用dll的好处

请注意,我不能问以前的开发人员为什么它被封装在DLL文件中,并且我知道这个DLL不能被任何其他外部应用程序重用的事实。它是专门为web服务创建的。

所以我的问题是,为什么老开发人员创建了一个dll来包含类,并由web服务使用,而不仅仅是web服务?

EN

回答 3

Stack Overflow用户

发布于 2011-01-13 23:32:03

也许开发人员的初衷是让功能分散在几个DLL上,并让web服务充当所有DLL的网关?

票数 1
EN

Stack Overflow用户

发布于 2011-01-13 23:44:02

如果以前的开发人员使用预定义的web服务模板之一在Visual Studio中创建了web服务,那么代码隐藏模型就是项目的开箱即用结构。

在您的示例中,原始asmx页面没有使用class命名空间引用类。在MyClass引用中缺少名称空间可能会导致服务不能正常工作的问题(尽管这只是一个可能性很大的猜测,因为除了“服务不工作”之外,您并没有提供更多的信息)。

希望这能有所帮助!

票数 0
EN

Stack Overflow用户

发布于 2011-01-13 23:48:34

这可能有几个原因。原始开发人员可能打算对dll进行黑箱操作,以供外部使用。另一个开发人员可能有一个定制的、“在can中”的测试工具,用于测试库的这种性质。预编译的dll在SDLC期间会更安全一些,因为中间代理不会影响后面的代码。web服务中未编译的代码可能会被意外编辑(甚至是恶意编辑)。

归根结底,这可能只是这个人的偏好。这个决定真的是相当武断的,除非你有一些外部因素作为影响。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4678781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档