2013-08-06 91 views
3

我一直在nlog項目主頁上關注一個例子,但是我無法讓它工作。該示例可在以下位置找到:http://nlog-project.org/documentation/v2.0.1/html/T_NLog_Targets_WebServiceTarget.htmnLog不會觸發web服務方法

使用nLog目標時會出現問題。我的配置:

<targets> 
    <target name="ws" xsi:type="WebService" namespace="http://www.nlog-project.org/example" protocol="Soap11" methodName="HelloWorld" url="http://localhost:53810/Service1.asmx"> 
     <parameter name="n1" type="System.String" layout="${message}"/> 
     <parameter name="n2" type="System.String" layout="${logger}"/> 
     <parameter name="n3" type="System.String" layout="${level}"/>   
    </target>  
</targets> 

<rules> 
    <logger name="test" writeTo="ws" />  
</rules> 

當我啓動控制檯應用程序什麼都不會發生,但如果我改變我的URL爲以下這似乎觸發方法:

http://localhost:53810/Service1.asmx/HelloWorld 

但是,使用這種方法時參數不要」不像是會工作..

我的web服務方法:

[WebMethod] 
public void HelloWorld(string n1, string n2, string n3) 
{ 
    HttpContext.Current.Trace.Write("n1 " + n1); 
    HttpContext.Current.Trace.Write("n2 " + n2); 
    HttpContext.Current.Trace.Write("n3 " + n3); 
} 

任何人都知道如何解決這個?我已經嘗試過HttpPost和Soap11。

+0

爲wiki頁面的[WebService的目標](http://github.com/NLog/NLog/wiki/WebService-target)在備註部分中說web服務必須接受處理查詢字符串參數的方法,你的web服務是否接受這些參數? Web服務是如何創建的? – Xharze

+0

@Xharze看我的編輯。我的方法與示例相同。該webservice是一個常規的ASP.NET Web Serice應用程序。 – user1828871

+0

你能證實查詢字符串實際上是基因處理嗎?只是爲了確定這是否是NLog問題或Web服務問題? – Xharze

回答

1

解決方案

在n日誌配置文件需要是完全一樣的web服務的命名空間的命名空間。

n日誌配置:

namespace="http://tempuri.org/" 

web服務:

[WebService(Namespace = "http://tempuri.org/")] 
相關問題