Publishing WebServices and IIS - c#

I'm having problems when publishing services on IIS.
First, I will describe my scenario.
At the moment I have an WPF app in C#.
Also I have a web site (published in IIS through HTTPS) that need to communicate with the c# application, therefore I decide to publish the methods I needed through a REST web service also through https:
WebServiceHost serviceHost = new WebServiceHost(typeof(QESWebService), new Uri("https:xxx/WS/");
When I tested it on Windows 7 there were no problem. Everything works fine.
But now, when I try the application in Windows XP, it is not working! I cannot launch the application because the port 443(for the web service https) is already in use.
I cannot find a solution different to dont use https on one of the sides, but I really need it, What can I do?
Thanks in advance

If you already have a web application/service running on the IIS using SSL then you need to change some configuration settings
Here is an article about Multiple SSL Web Applications on Port 443

Related

Cannot access ASP.NET Core application hosted in a Windows Service

I'm trying to create a ASP.NET core app which is hosted in a Windows Service, following the official documentation.
The only difference I made is that I used Network Service account, and made Kestrel listen to port 10090, instead of the default 5000.
After publish the binaries to the server(Windows Server 2012 R2), everything works fine via local access(on the server using http://localhost:10090/), but the web cannot be accessed on other PCs. Showing
This site can’t be reached
server-1 took too long to respond.
This server also has some IIS hosted web application and they are working fine.
Does anybody knows the missing points I made? Thanks!
With help from my colleague I found that it is a programming issue.
When creating the IWebHostBuilder in Program.cs, I wrongly set the option of Kestrel (copy and paste from official documentation):
options.Listen(IPAddress.Loopback, 10090);
While one of the correct option is IPAddress.Any.

How to host WCF web service over the internet?

I work as a C# developer and we have many .NET web services that we use. I am doing some at home development and want to do something similar. I have a database (SQL Server 2012) on a home PC running Windows Server 2012 with IIS 8 installed. I have created a WCF web service in Visual Studio (C#) and it compiles to a .svc file. This just facilitates data exchange between my SQL Server Database and the application I am writing.
I am unfamiliar with how to host the WCF service so that the Windows Form application that I am writing that will be installed on many non-local machines can access it. I figured a WCF service would be the best choice for accessing my database for the WinForm application over the internet.
I also have a domain with a basic Windows package on 1&1.com leftover from a previous project if that helps.
Can anyone give me some steps to get my WCF service hosted so it can be accessed over the internet? Please ask if I forgot to list any needed information.
Two common ways are to host your WCF service from IIS, or to self host it yourself from within a simple wrapper program that acts as a TCP server.
See http://msdn.microsoft.com/en-us/library/ee939285.aspx
The simplest way is to setup IIS and just publish your services like you would a web application; your service will exposed over http/https. Use an appropriate binding like wsHttpBinding or BasicHttpBinding depending on your security needs. Read up to understand the different bindings and what each does and does not support.
In order to host WCF via IIS, at least on Windows Server 2003 and 2008, make sure you follow the install steps, such as adding .NET 3.5.1 / WCF options on older platforms. I believe Server 2012 includes it within .NET 4 framework, but I haven't yet done it on 2012.
Google "WCF hosting IIS" for steps / setup guides.
There are also hosting providers that specifically provide WCF hosting solutions, though I'm pretty sure your current provider, since it supports IIS, should do fine.

Access windows service / WCF service from other machine on LAN

Please bear with me as I am beginner to Windows service / WCF service. After much research I have not been able to find satisfactory solution to my problem. Let me describe my problem in brief:
I want to run one Windows service / WCF service on a machine on LAN. I want to make that service to be consumed by applications running on another machines on the LAN, provided following conditions must be satisfied :
1) I should not need to host Windows service / WCF service to IIS.
2) The URL of service should be configurable in the applications running on other machines on LAN. I should not have to hard code the URL anywhere in those applications (e.g. in App.config or so). Service URL should be accepted from the application user. At the best, the application should find the machine on which the service is running and should call the service from there.
(As a side note, the applications running on other machines are in-browser Silverlight applications.)
Is it a tall order? If not, which of the Windows service and WCF service will suit my requirements? Please provide me any resource if you have.

Creating a Web Server container to emulate an IIS server

Okay, I'm a very green developer (co-op student) so I'll try my best to make sense. Currently I have a web application (call it "Updater") that is an aspx and runs through IIS. My boss has asked my to look into creating a program (exe or command line) that can run the app through created encapsulated web server that can act like IIS. This is so that I can run the exe during an installer procedure on a client's machine so that the updater can configure the client's program.
So Far I've looked into sources upon sources on how to create a self hosted web server to handle a web app and I've managed to do the following:
-Create a command line server hosted at a given port #######.
-Use a StreamReader to read an html file
-Use HttpResponseMessage to set the Content to this html page.
Obviously this is very rudimentary, but I couldn't understand how to switch the app over to the server I created rather than the IIS.
Any help ont he matter would be appreciated, like I said I'm still quite new.
You can use OWIN to self host from within a console application.
Look for 'Self-Host OWIN in a Console Application' in the following link:
http://www.asp.net/aspnet/overview/owin-and-katana/getting-started-with-owin-and-katana
You need to start you self host server with the address your app is trying to contact. If your IIS is running with the default settings it should be http://localhost:80. Before you start the self host server you need to shut down your IIS website that is running on port 80. Two applications can not listen on the same port at the same time.
What you ask is a redistributable web server for ASP.NET. So, you might find interesting the UltiDev Web Server, formerly known as Cassini web server.
From their website:
UltiDev Web Server Pro (UWS) is an advanced, redistributable web server for Windows that can be use as a regular web server to host web sites and ASP.NET applications, or packaged with your ASP.NET web application and installed on your customers' systems along with your web app or site.

Connecting to WCF Service on the same network

I have a WCF service deployed on IIS7.5 on windows 7. It is using basicHttpBinding since this service is to be consumed through a windows mobile 6.5 application.
If I try to connect from the same machine (192.168.0.201) everything works as it should. However if I try to connect from another machine on the same network, (here's the weird part) It manages to find the service however any successive calls fail.
If I browse to the service's wsdl page from a web browser it responds with "the page cannot be found", although the "you have created a service" page is found!
Note that browsing to wsdl page from the local machine works fine as well.
Can anyone help please ?
Thanks in advance
There is more to it than just the endpoint. Do you have a behavior? It is all in the documentation.
How to: Publish Metadata for a Service Using a Configuration File

Categories