gpt4 book ai didi

c# - 简单的 WCF REST 客户端 - 添加服务引用错误?

转载 作者:太空狗 更新时间:2023-10-30 01:08:05 25 4
gpt4 key购买 nike

我想制作一个可以连接到 WCF REST 服务的简单 WCF Hello world 客户端。

但是我遇到了以下错误:

“在 ServiceModel 客户端配置部分找不到引用契约‘ServiceReference1.IService1’的默认端点元素。这可能是因为没有为您的应用程序找到配置文件,或者因为在中找不到与该契约匹配的端点元素客户端元素。”

我做了什么:

-我使用“WCF 服务应用程序”模板创建了一个名为“WCFerror”的新项目

-我的web.config是这样的:http://pastebin.com/KEGqRgPr

-我的服务接口(interface)也很简单:

[ServiceContract]
public interface IService1
{
[OperationContract]
[WebGet(UriTemplate = "GetData?value={value}", ResponseFormat = WebMessageFormat.Json)]
string GetData(int value);
}

-我创建了一个新的控制台应用程序。

-我启动了我的 WCFerror 服务的一个新实例(通过“开始调试”),它是托管的,我在网络浏览器中试用了它(例如:http://localhost:58475/Service1.svc/GetData?value=4),它运行良好。

-然后我在控制台应用程序中添加了一个服务引用(地址是:http://localhost:58475/Service1.svc),在后台,svcutil 生成了客户端代码,和一个 app.config - 但是一个空的 app.config!

-所以我的客户不工作:

ServiceReference1.Service1Client client = new ServiceReference1.Service1Client();
Console.WriteLine(client.GetData(4));

-我尝试通过命令提示符运行 svcutil,如下所示:

svcutil.exe /language:cs /out:GeneratedProxy.cs /config:app.config http://localhost:58475/Service1.svc

但它生成相同的空 app.config。

我做错了什么? :(

最佳答案

添加服务引用使用 WSDL 或 WS-MetadataExchange。这两个都是 SOAP 构造。 REST 没有元数据标准。您必须自己滚动消息,最好使用框架。您看过作为新 Web API 一部分的 HttpClient 吗? Its available via Nuget

关于c# - 简单的 WCF REST 客户端 - 添加服务引用错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10565836/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com