C# 创建web服务代理和删除WSDL文件问题

C# 创建web服务代理和删除WSDL文件问题,c#,wcf,web-services,wsdl,C#,Wcf,Web Services,Wsdl,我只需要知道,在创建web服务代理之后,如果我删除wsdl文件,那么创建web服务类相关实例是否会有任何问题 所以,在从VS2010 IDE中删除wsdl文件后,请指导我需要做什么,这样调用web服务就不会有问题 我的第一个问题是关于web服务(ASMX)文件的。所以我的问题仍然是一样的,但我需要做的情况下WCF服务。因为在创建代理后还生成了wsdl文件。若我在本例中也删除了wsdl文件,那个么如何调用wcf服务呢 请详细解释。WSDL文件描述了您的服务操作。为了生成客户端代理,使用WSDL文件

我只需要知道,在创建web服务代理之后,如果我删除wsdl文件,那么创建web服务类相关实例是否会有任何问题

所以,在从VS2010 IDE中删除wsdl文件后,请指导我需要做什么,这样调用web服务就不会有问题

我的第一个问题是关于web服务(ASMX)文件的。所以我的问题仍然是一样的,但我需要做的情况下WCF服务。因为在创建代理后还生成了wsdl文件。若我在本例中也删除了wsdl文件,那个么如何调用wcf服务呢


请详细解释。

WSDL
文件描述了您的服务操作。为了生成客户端代理,使用WSDL文件

创建完客户机代理之后,就不再需要WSDL文件了。事实上,删除或限制对WSDL文件的访问是一个很好的实践,在安全性方面也是一个很好的实践


因此,您不需要WSDL文件,除非您对服务进行更改,例如添加新操作或删除现有操作。在这种情况下,WSDL文件需要再次更新客户端。

添加服务引用时,Visual Studio会在
服务引用//
文件夹内创建一个名为
引用.svcmap
的文件,该文件描述了您的服务。它包含指向创建服务引用时使用的各种元数据源和配置选项的链接(“上下文菜单中的“配置服务引用”)

Reference.svcmap
是唯一不能删除的文件。当您右键单击服务引用并从上下文菜单中选择“更新服务引用”时,Visual Studio将从其上游源重新下载所有必需的元数据,重新创建客户端代理并更新您的
app.config
文件

Service References/
目录中,客户端代理
Reference.cs
是编译客户端应用程序时实际使用的唯一文件(因此,您也不应该删除此文件,尽管Visual Studio将自动为您重新生成)-运行时不会使用这些文件

本文还解释了所有这些文件的内容:

清楚地告诉我哪些文件不应删除。该文件的名称和扩展名是什么。您正在谈论wcf或经典web服务asmx。在使用asmx的情况下,不会生成名为svcmap的文件,而会生成Reference.map。当我们使用asmx web服务时,一个非常重要的问题是,在那里创建web服务实例时,我们可以提到我们的web服务url to url属性。所以我只需要知道这个url属性在WCF的情况下是可用的。哦,我说的是WCF-当我们使用asmx web服务时,并没有真正使用asmx非常重要的问题,那么当我们在那个里创建web服务实例时,我们可以提到我们的web服务url到url属性。所以我只需要知道这个url属性在WCF的情况下是可用的。