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做任何事情。也許你想從前端調用服務,但不應該包含它......回到對象/類的設計中,並確保一切都不依賴 –

相關問題