将Web服务作为dll的替代方法时出现的问题

时间:2011-05-31 09:50:10

标签: asp.net wcf web-services visual-studio-2008 dll

问:

最近,我遇到了一些问题,我在很多应用程序中都有一个共同点,并且对这个dll的任何更改都需要构建它,将它复制并粘贴到这些应用程序的每个bin文件夹中,并添加新的引用我决定将此dll转换为Web服务,以克服此过载。 我创建一个Web服务应用程序包含一组Web服务(映射到每个类)。

我在这里面临一些问题:

  • 在原来的dll中,有 类使用方法存在于其他方面 在同一个dll中的类,我在遇到问题时 试图使用Web服务方法 其他Web服务类如何修复 这个问题。

  • 在原来的dll中有一组 静态类与静态 methods.how使等效的 我的网络服务应用程序。

  • 任何重载方法都会导致问题 在我的网络服务中。

  • 使用Dictionary<string, string>时 作为我方法中的参数。

注意:原始dll包含与数据库的连接。将它转换为Web服务是最佳解决方案吗?在我的情况下哪一个更快的是Web服务或dll?我应该倾向于WCF而不是?

提前感谢。

2 个答案:

答案 0 :(得分:1)

我通常会添加项目引用并将所有项目保留在单一解决方案中,因此我没有文件复制问题。您可能缺少项目引用,而是可以使用程序集引用。首先验证。

首先,如果您不知道它是什么以及如何使用它,请不要创建Web服务。人们倾向于认为一切都是Web服务,因为使用Visual Studio工具在WCF中创建Web服务非常容易。既然你要求将DLL转换为Web服务,我认为你开始学习Web服务。

您需要的只是一种持续集成系统,否则就是一个简单的构建系统,它为您构建构建系统并在任何依赖于应用程序文件夹的位置复制文件。因此,您可以节省手动处理文件的时间。执行此操作时,您将不会遇到上述任何问题。

如果您懒得学习构建系统,只需编写一个批处理文件即可为您复制文件。我有批处理文件,可以执行xcopy文件。

答案 1 :(得分:1)

在我的应用程序中,我通常在同一解决方案中拥有所有相关项目。但是,当我需要跨应用程序使用项目时,我将项目替换为dll参考。

因为我使用Subversion,我通过添加外部属性解决了复制dll的问题。执行我的libs文件夹,引用dll的构建。

如果外部dll经常更新,则可能需要一个持续集成系统来为您处理。