2013-03-14 80 views
1

我已經構建了此Web服務,該服務返回SQL中一個表中的所有鏈接。我看到很多教程,他們只是爲項目添加了一個新的Web引用,他們從項目中選擇了Web服務,他們選擇他們想要的Web服務,然後單擊添加引用,然後他們創建了一個新的Web站點,然後他們用這段代碼來稱呼它:無法使用我的ASMX網絡服務

WebServiceLinks.Service proxy = new WebServiceLinks.Service(); 
WebServiceLinks.Vezvi Links = proxy.GetLinks(); 

然後他們只是把它傳遞給一個標籤。當我嘗試編寫WebServiceLinks時,無法找到Service類。這是我所經歷的代碼。 (我正在使用Microsoft Visual Studio 2010)。

代碼

public static string GetLinks() 
{ 

    string query = string.Format("SELECT Link FROM Linkovi"); 
    StringBuilder result = new StringBuilder(); 
    try 
    { 
     conn.Open(); 
     command.CommandText = query; 

     SqlDataReader reader = command.ExecuteReader(); 

     while (reader.Read()) 
     { 
      result.Append(reader["Link"].ToString()); 
     } 
     reader.Close(); 
    } 
    finally 
    { 
     conn.Close(); 
    } 
    return result.ToString(); 
} 

,這是我如何調用該方法:

[WebMethod] 
public string GetLinks() 
{ 
    return ConnectionClass.GetLinks(); 
} 

而且,如果我能夠這樣傳遞給一個標籤,是有可能增加鏈接之間的休息?

此鏈接幫助我如何解決我的問題: https://www.youtube.com/watch?v=qOqEKpYbTzw

+0

你的服務合約是怎樣的? – 2013-03-14 12:18:00

+0

我在哪裏可以看到?我很抱歉,這是我第一次創建Web服務.. – user2167123 2013-03-14 12:26:36

+0

我想這是一個WCF服務?你的服務類(通常是一個svc.cs文件)應該實現一個接口,這是服務契約。 – 2013-03-14 12:27:45

回答

-2

如果它是一個ASMX文件,然後在Visual Studio中轉到Web引用文件夾,展開你應該看到那裏的服務。右鍵單擊該服務,然後單擊在對象瀏覽器中查看。這應該打開對象瀏覽器並向您顯示您需要使用的類的名稱空間。它可能是這樣的: MyWebsite.MyService 其中MyWebsite可能是您的項目的名稱,MyService是您的服務的名稱。然後在代碼只寫

MyWebsite.MyService service = new MyWebSite.MyService(); 

應該得到它給你。

+1

-1:可以(最好)使用「添加服務引用」來引用ASMX服務。 – 2013-03-14 19:23:59