2012-11-27 55 views
2

我在C#中編寫了一個Windows服務,我必須使用Windows身份驗證到SQL服務器。所以我在SQL連接字符串中使用了Trusted Connection。使用Windows模擬連接到SQL Server

以下是設置: Windows服務已將WCF託管在其中。 Windows服務使用在該應用程序服務器上是admin的本地服務帳戶...因爲WCF必須註冊uri。 因此,我假裝另一個帳戶,將使用Windows身份驗證到SQL服務器...我沒有給一個SQL帳戶..所以問題是當我嘗試身份驗證後身份驗證...它試圖使用帳戶下的服務正在運行,即使我檢查Windows身份,這是正確的,並且是模擬帳戶。爲什麼它使用服務帳戶?

另一個問題是,WCF服務的其中一個方法返回所有異常的列表......該列表在它爲空時運行,或者如果我在其中放入新的異常,但是如果Windows服務引發異常並且該例外情況進入列表,我試圖找回它說沒有終點。有任何想法嗎?這不是超時或任何事情我增加了時間。我有其他方法,只是返回字符串,他們工作正常。

+0

當您安裝服務時,您只需要執行一次HTTP URL預留。之後,服務可以使用您喜歡的任何帳戶運行。我認爲這比手動存儲和解密模擬密碼更好。 – shambulator

回答

0

好吧,我在更多的調試後明白了這一點。模擬工作正常,但我的解密密碼不正確。所以解決了。

關於未被檢索的異常列表的問題......顯然,.Net無法序列化異常類。所以我寫了一個返回異常信息的custome類,它很好用。

相關問題