我試圖從傳統的ASP使用WCF日誌服務而不部署一個Com包裝器。我找到了這樣做的方法here。這裏是vb腳本,簡化了。經典的ASP到使用服務名字對象的WCF
Dim addr
addr = "service:mexAddress=""net.pipe://localhost/Services/Logging/LoggingManager/Mex""," _
& "address=""net.pipe://localhost/Services/Logging/LoggingManager/classic/""," _
& "contract=""ILoggingManagerClassic"", contractNamespace=""http://Services.Logging.Classic/""," _
& "binding=""NetNamedPipeBinding_ILoggingManagerClassic"", bindingNamespace=""http://Services.Logging.Classic/"""
set objErrorLogger = GetObject(addr)
Dim strError : strError = objErrorLogger.LogError("blahblah")
這作品Server 2008的,但失敗,服務器2003在這個錯誤。只有
Failed to do mex retrieval:Metadata contains a reference that cannot be resolved: net.pipe://localhost/Services/Logging/LoggingManager/Mex..
當通過ASP運行它失敗,使用相同的代碼在同一臺機器上的一個樣本VBS文件工作正常。
我認爲這可能與權限有關,但不知道從哪裏開始。有人有主意嗎?
編輯 - 讓我澄清一下,WCF主機是一個作爲網絡服務運行的Windows服務。
如果這屬於服務器故障,主持人可以將其移動。我也有一個帳戶。
serverfault.com上的傢伙擅長這個東西。 – 2009-09-18 18:32:07