2013-03-14 83 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