1

我已经完成了从wsdl类方法获取信息的Windows服务。一位同事建议我使用一个程序集在sqlserver数据库中运行一个作业。我认为这是不可能的,但我不知道是否可以做到。它可能在Visual Studio数据库项目中使用microsoft.web.services3?

我使用的wsdl是使用Microsoft.web.services3完成的。 Windows服务项目有一个配置文件,它有一个必要的部分:

<configSections> 
    <section name="microsoft.web.services3" type="Microsoft.Web.Services3.Configuration.WebServicesConfiguration, Microsoft.Web.Services3, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 
</configSections> 

我也有这个参考。

<microsoft.web.services3> 
    <tokenIssuer> 
     <ttlInSeconds value="900000" /> 
    </tokenIssuer> 
    <security> 
     <defaultTtlInSeconds value="9000000" /> 
     <timeToleranceInSeconds value="9000000" /> 
    </security> 
<web.services3> 

我认为它不会工作,但如果它可能是可能的,我怎么能做到这一点的数据库项目打造一个集会?

回答

0

是的,这是可能的,但它不是真的很好。 你需要做的是在你使用Web服务逻辑(调用,处理等)的地方创建一个SQL Server CLR程序集。

看[https://msdn.microsoft.com/en-us/library/w2kae45k(v=vs.100).aspx]如何做到这一点

缺点此,运行此CLR在SQL Server内存。如果你不以正确的方式处理你的对象,你可能会用不适合在那里的对象填充你的SQL Server内存。

其他解决方案? 如果您在数据库中需要此数据,您可能需要创建一个调用webservice并将数据存储在数据库中的进程...

+0

我会尝试第一个解决方案,并且如果它能工作,我会通知您。谢谢 –

+0

嗨马克,我昨天做到了,但是我遇到了一个新问题。当我的后台同事添加程序集时,我们得到了很多其他人的错误.dll依赖关系。我有可能获得相同的.dll所有的依赖关系?该项目有一些.DLL依赖像epplus,剃须刀,mvc,services3 ... –

+0

我不知道为什么你想在你的web服务中的所有这些前端程序集?确保web服务只做它应该做的事情。 webservice不应该对razor/mvc做任何事情。也许你想从前端调用服务,但不应该包含它......回到对象/类的设计中,并确保一切都不依赖 –

相关问题