我希望通过点击我的网络应用程序
来调用get函数我的应用程序中的代码是
protected void btngetbtanches_Click(object sender, EventArgs e)
{
try
{
HttpWebRequest req = WebRequest.Create(@"http://localhost:54691/") as HttpWebRequest;
WebResponse resp = req.GetResponse();
using (Stream branchstream = resp.GetResponseStream())
{
StreamReader loResponseStream =
new StreamReader(branchstream, Encoding.UTF8);
string Response = loResponseStream.ReadToEnd();
loResponseStream.Close();
resp.Close();
}
}
catch (Exception ex)
{
}
}
在我的服务中
[ServiceContract]
public interface IRestSerivce
{
[OperationContract]
[WebGet(UriTemplate = "Default")]
string GetBranchData();
}
}
}
获取数据在服务项目的另一个文件中定义。当我尝试单击该按钮时,会返回一些html,并且不会调用该服务。
任何帮助将不胜感激
答案 0 :(得分:1)
您的网络请求与服务的终点不符:
你应该尝试:
HttpWebRequest req = WebRequest.Create
(@"http://localhost:54691/RestSerivce/GetBranchData") as HttpWebRequest;
或至少与您的路由匹配的那个。
您还可以将服务添加为引用并使用它的类型,这是一种常见的方法。
您可以查看此答案以获取更多详细信息。 How to consume WCF web service through URL at run time?