Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 防止更改Web服务URL_C#_Winforms_Wcf - Fatal编程技术网

C# 防止更改Web服务URL

C# 防止更改Web服务URL,c#,winforms,wcf,C#,Winforms,Wcf,在我的WinForms应用程序中,我有一个登录窗口,该窗口使用web服务来验证用户名/密码以授予访问权限。我看到的问题是,一旦我编译了我的应用程序,它就会生成一个appname.exe.config,其中包含web服务端点的URL 似乎用户可以在文本编辑器中修改此URL。这是否会使应用程序更容易破解,因为用户可以使用相同的方法名运行虚拟web服务,并更改配置文件中的URL,然后简单地返回true以获得访问权限 有没有办法让visual studio不使用app.config来存储URL并将其硬编

在我的WinForms应用程序中,我有一个登录窗口,该窗口使用web服务来验证用户名/密码以授予访问权限。我看到的问题是,一旦我编译了我的应用程序,它就会生成一个appname.exe.config,其中包含web服务端点的URL

似乎用户可以在文本编辑器中修改此URL。这是否会使应用程序更容易破解,因为用户可以使用相同的方法名运行虚拟web服务,并更改配置文件中的URL,然后简单地返回true以获得访问权限

有没有办法让visual studio不使用app.config来存储URL并将其硬编码到我的应用程序中,这样就不能如此轻松地更改URL?如果我只是删除这个配置文件,就会出现一个错误,即找不到默认端点元素


任何指导都将不胜感激

您如何调用web服务? 你是用代码还是用其他方式


也许您可以创建一个静态类来存储您的web服务URL,并使用类似staticClass.getURL的方法获取URL

可能是我用代码调用它的副本。看起来默认构造函数总是使用app.config文件,但还有其他重载允许我手动指定端点地址,这在我的情况下会起作用,因为我可以简单地硬编码我的URL,即使存在app.config,也不会使用它。谢谢你的帮助!BasicHttpsBinding binding=新的BasicHttpsBinding;EndpointAddress地址=新的EndpointAddresshttps://url/service.asmx; WebService.WSSoapClient myService=新的WebService.WSSoapClientbinding,地址;要指出的是,如果您的最终目标是正确地保护您的应用程序,那么这不是一个解决方案。您应该投资一种方法来证明用户经过了正确的身份验证,例如,您的身份验证服务可以发布一个客户端应用程序可以验证的JWT。