I've been using the solution on the Microsoft Platform because it's very tied up with the Windows Server operating system, as it is with the Microsoft technologies. I would basically use the solution anytime that I wished to do something very efficient on Microsoft, building a software for example, which can be done on Microsoft Platform efficiently. I see the solution as the proper alternative to such programs as Java and Python. I prefer Microsoft.NET framework as it's actually tied with the Microsoft operating system and network.
So, the main advantage of the solution for me is that it's really tight. It starts with the component of the server side and proceeds to accessing the database. Work with it is really smooth with Microsoft technologies. There is no worry, no bother. Microsoft technologies is really straightforward.
Microsoft Platform is the only viable solution when I wish to do something that is not supposed to be cross-platform. This was the case later on with the .NET Core. Although we tried to obtain this on the Linux platform, we found things to be somewhat limited, as the .NET Core didn't mix very well with the Linux kernel. This is why we did not adopt it so much on Linux and prepared to do it with Python and Java, as the .NET Core was less powerful than the .NET Framework on Windows. As such, .NET Framework is better to use on Microsoft, on Windows Server. To me, Windows Server is actually the best when one wishes to do something for Windows Server but does not desire that it be cross-platform. It offers much integration.
While Windows Server is always the best, the interoperability and, of course, cross-platform features could stand improvement. Ideally, the .NET Core should be made more efficient than it is at present. There is a need to be at the level of Java, for example, to truly overcome the weaknesses involved.
Price fraction on the Linux Platform and macOs Platform should also be taken into account. Then it will really be effective on those other platforms.
It is of great concern to us that the solution is not very powerful on cross platform, at it impedes the ability to build and scale with it. There are many who would like to have their servers on Linux, since hosting Windows Server, even on VPS or in any hosting company, is very expensive. It will also be expensive in the long run. Keeping it secure will be expensive. It is cheaper and easier to get it secured, to get the best performances, with Linux. Most applications that our customer companies are using they wish to have on a server and then to access it from any type of tool, computer, or smartphone, which is what we would like for ourselves at the moment. Many are interested in the type of deployment whereby the application will be set on a server with web services.
For the .NET to really be at the level of some of the tools we are using now, it is better that Microsoft should start on the .NET Core so as to make it as powerful as possible on the main Linux distributions.
This would increase my rating of the solution.
If Microsoft could put the .NET Core at the level of the other platform I would even rate it as a nine out ten.
For the moment I can only give the product a rating of five out of ten since only some of the customers will be satisfied, those that have the financial resources for hosting a platform on Windows Server. They would need to finance a team that would work to keep everything running with security and to be capable of scaling up anytime they want. A dedicated strong team for this purpose costs money.
While there are those companies that have the money and can afford this expenditure, others that don't will opt for the cheaper solution of using Linux, which has the potential for providing the same results.
Moreover, I would like to have interoperability with AS400. We have not done many things with the .NET and prefer using certain other tools towards this end. When we want to work on AS400 we need to use some other tools for that on Windows. If Microsoft could resolve this issue it could attract a wider array of customers. We have very powerful software running on AS400, so the its interoperability capabilities are important to resolve.
I have been working with Microsoft.NET Framework for 20 years and I have been doing so since its inception. After having switched to open source I then reverted back to the solution. I have been using it since it came out with its early versions.
Microsoft has tested the solution and our experience with it has shown us that, while it is not as fast as some of our other software-devoted platforms, it is very stable. It's integrated with the platform and very stable on Microsoft Platform. There are certain applications we build on it which work very well and we do not experience downtime.
The ability to build and scale with the solution is hampered by the absence of its cross-platform capabilities.
There is a need to choose the version being worked on and to obtain its appropriate components, at which point the installation will proceed as it usually does for Microsoft products. This is the point where the person must click repeatedly. The PowerShell commands can then be used. The person is presented with all the other Microsoft questions upon installation. When we work with the Linux system, we primarily prepare for use of PowerShell.
I rate Microsoft.NET Framework as a five out of ten.