2013-10-17 155 views
0

我是新手,需要一些幫助。 我在Visual Studio中創建了一個wcf服務應用程序,並編寫了一個簡單的登錄方法,它接收參數userid &密碼,然後返回具有兩個字段名稱和組織的記錄用戶對象。WCF在visual studio中的Web服務

LoggedUser類別:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Runtime.Serialization; 

namespace crmpp_android_service 
{ 
    public class LoggedUser 
    { 
     public string name; 
     public string organization; 
     [DataMember] 
     public string Name 
     { 
      get { return name; } 
      set { name = value; } 
     } 
     [DataMember] 
     public string Organization 
     { 
      get { return organization; } 
      set { organization = value; } 
     } 
    } 
} 

OperationContract的:在Service1.svc

[OperationContract] 
     [WebInvoke(Method = "GET", 
      ResponseFormat = WebMessageFormat.Json, 
      RequestFormat = WebMessageFormat.Json, 
      UriTemplate = "login/?userid={userid} & pass={pass}" 
     )] 
     [Description("User Login return username & Organization currently affiliated")] 
     LoggedUser login(string userid, string pass); 

方法實現:

public LoggedUser login(string userid , string pass) 
     { 
      LoggedUser log_usr = new LoggedUser(); 
      log_usr.name = "Ahsan Mehdi"; 
      log_usr.organization = "JDC"; 
      return log_usr; 
     } 

但是當我按下ctrl + F5運行應用程序時,它會打開一個wcf測試客戶端,並返回數據。 enter image description here

我無法從android應用程序或從瀏覽器獲得響應,當我爲服務編寫URL時,它顯示我這樣的頁面。

http://localhost:57127/Service1.svc 

enter image description here

,當完整的URL這樣

http://localhost:57127/Service1.svc/login/?userid=abc123&pass123 

它沒有返回任何guidelike或幫助,請儘快。

回答

0

獲取WCFstorm。當你運行它,添加新的服務,並複製服務的URL(在你的截圖,它顯示爲:

localhost:57127/Service.svc 

這將讓你測試服務

這是我使用在測試WCF服務的工作。

我用另一個工具是小提琴手。

+0

感謝您的回覆,但實際上我想從Android應用程序訪問這些服務的方法。在那裏我將不得不使用服務方法路徑爲 ** http:// localhost:57127/Service1.svc/login /?userid = abc123&pass123 ** 所以這應該返回一些數據在JSON甲酸鹽,但事實並非如此。 –

+0

你設置了哪些端點?你能夠獲得wsdl嗎? – Bardicer

+0

我從這個URL獲取一個xml頁面 ** http:// localhost:57127/Service1.svc?singleWsdl ** 和此URL ** svcutil。EXE http:// localhost:57127/Service1.svc?wsdl **不起作用 –

1

按我的理解,你要訪問的是你的本地主機的機器不能在IIS上承載這個WCF URL。爲了訪問本地主機Web服務用這個代替localhost

http://10.0.2.2:Port/Service1.svc/login/?userid=abc123&pass123 

並在IIS上使用分配給您的系統IP。

http://192.168.0.123:Port/Service1.svc/login/?userid=abc123&pass123 

我希望這將清除您有關連接到Android項目的問題。

相關問題