-1

I developed a WPF application using SQL Server Management Studio 2014 with Entity Framework. During all this time on this area, I've never get how to convert an application into a real service. If .NET developers use Visual Studio and SQL Server Management Studio to build programs.

How this can be transformed into a program for the client?. Which database platform do they might use to storage the data generated by the system?. There's a database program for the client's side? When the program is converted, an installer (.exe) is generated?.

I don't understand how does it works. I need to make it official.

Regards

Joseph Doe
  • 23
  • 1
  • 7

2 Answers2

1

First have to look at the various components individually. WPF is for the user interface. SQL Server is to hold the data. Normally an application will be divided in at least 3 tiers: UI, Business and Data Access. If it is structured properly, the business logic should contain no reference to WPF and you could expose the classes easily as a Web Service. With WPF, most are using the MVVM design which gives even more separation between the UI and the business logic.

So if you want to convert into a service, you need to separate the business logic (and data access) from the UI. Then you can access those business classes (or MVVM classes) from either WPF, web service, web pages, exe client application, or any other means. The question is: what will consume the web service?

This should give you enough pointers to look into what you actually want.

Etienne Charland
  • 3,424
  • 5
  • 28
  • 58
0

To answer your question, first of all you need to clearly mention which kind of service (Web Service or Windows Service)

And I would like to mention here that there is no simple converters available to do it.


In case of Web Service:

You need to copy your Business Logic from the WPF application and create a new web service of your choice. You can keep your Data Layer also.


In case of Windows Service

Your wpf application can run under Service Controller as a windows server, you can find a workaround here




Answers for the other questions you have asked




1. How this can be transformed into a program for the client?

Obviously you need to have an installer project in case of Windows Service, if it is a web service then you need to deploy it on IIS either Local or Global.


2. Which database platform do they might use to storage the data generated by the system?

First of all you need to get this information from your client. Its better to stick with SQL Server since you have already developed it.


3. There's a database program for the client's side?

It is also based on your database engine which you have already developed with. If you use localdb then it will be very easy to get it installed in your client machine. For other types of database engines you may need to have a separate database engine installation (you may need an licence based on the version)


4. When the program is converted, an installer (.exe) is generated?

You can create your own installer project or you can take advantage of .Net Deployment Techniques, here you can see more information about it.


Update

5. How to install SQL Server at client machine?

From your comments, i understood the actual question is different, this is the answer you are looking for. So there is a detailed stackoverflow question here, take a look.

Christlin Panneer
  • 1,599
  • 2
  • 19
  • 31
  • Well, I mean not a service as itself, just an program installed on a PC using the mentioned database. It´s a local application used in a single PC w/ SQL Server. It's in a development environment, I want it to make operational on the client's side. – Joseph Doe Jun 16 '18 at 14:47
  • so your answer is Number 4 – Christlin Panneer Jun 18 '18 at 17:25
  • OK. What happen with the database?. How is managed on the client's side?. I don't know how does it works. Do I have to install SQL Server Management Studio on the client's PC?. I'm confused!!! – Joseph Doe Jun 20 '18 at 02:01