Answer the question
In order to leave comments, you need to log in
A technology stack for developing an enterprise application with a desktop client?
Good afternoon!
There was a task to develop a corporate client-server application.
Mandatory conditions:
- desktop client under Windows;
- processing on the server side;
- remote DB.
Please help with the choice of technology stack, googling could not find an unambiguous option
asp.net MVC (server) + Window Froms (client),
php (server) + Windows Forms (client),
no matter what (server) + what is generally possible (client) - is this even possible?
Browser client is strictly not accepted.
Thanks in advance!
Answer the question
In order to leave comments, you need to log in
If the browser client is not accepted, why do you need asp.net? TCP/IP is not alive by the web alone.
Specify whether a server is needed at all, if its entire task is reduced to the function of laying between the client and the database, only the client + server database can be dispensed with.
Write the client on anything. If you put C# in the tags, WinForms is a logical choice (you can use WPF, of course, but it doesn't make much sense).
If the server is still needed, then you can write the windows service in the same C # (server = not necessarily a web server)
You can also look in the direction of the three-link.
Only now WinForms - definitely in the trash. Look towards WPF.
With the proper organization of the architecture, you will get a design that will allow you to embed a web client side by side (this may be required in one or another version of integration with external services / website / mobile clients)
Client: WPF.
Server: C# on HttpListener.
Transport: tls > http > json
At a minimum, two exe files + 2 dlls are needed:
1) on the client:
- Client.exe - client application launcher: checks for updates, downloads other files from the server if necessary, transfers control to UserInterface.dll
- Common.dll - contains program code that is common for both the client and server parts;
- UserInterface.dll - contains code specific to the client side.
2) on the server:
- AppServer.exe - runs as a Windows service, contains server-specific code;
- Common.dll - contains program code that is common for both the client and server parts.
Tried many times.
1 - well, not a fact about forms (immediately in trash) - it all depends on the complexity of the client side. a simple client on forms will be easier to create and maintain (there are beautiful faces, it’s enough to correctly ask a question here or to search engines) if the functionality is complex, there are a lot of repeating elements, you need reliable binding - then yes, wpf
2 - if the server is an intracorporate one - you can directly with The database should work, again it all depends on the complexity of the business logic, it might be worth looking at SignalR there are cases / demos right here under the client’s desktop
unambiguous advice is impossible - any task / team has features, there are differences in skills and resources as required , and existing ones
if we are talking about a small office, where everything is already on win10 - why not immediately consider UWP?
if suddenly you ALREADY have a license for MS SQL - add SSRS and perhaps 90% of the needs will be covered by a ready-made free UWP client ?
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question