Welcome!

Linux Containers Authors: Larry Alton, Cloud Best Practices Network, Elizabeth White, Carmen Gonzalez, Liz McMillan

Related Topics: Linux Containers

Linux Containers: Article

Migrating .NET Applications to the Linux Platform

A long-term development and porting solution

The move to Enterprise Linux is accelerating. Enterprise Linux, provided by RedHat, SuSE, and a number of open source projects, supports clustering, load balancing, and high availability. Yahoo is using Linux with the MySQL open source database, the fastest growing database in the industry, and Hewlett Packard recently announced support for an enterprise stack of Linux, JBoss, and a MySQL database.

While companies are motivated to migrate to Linux, they are encountering significant obstacles. These include running the thousands of lines of existing Visual Basic .NET and C# code on Linux as well as implementing a full-running system without interrupting productivity. According to Forrester, more than half of today's enterprise development activity is being done in .NET, and many firms are experiencing a .NET barrier in moving to Linux.

The Horrors of Porting

Until recently, porting .NET Web applications and Web services to Linux has required major investments in Linux and J2EE skills, tools and resources, as well as delayed time-to-market. Linux migration could be done by moving to JSPs and Java on a Tomcat server. The ASP.NET code would be ported to JSPs and the C# code to Java classes. However, the .NET development team had to contend with a new development environment and the challenge of learning the JSP programming model. On top of this, components in the ASP.NET model, such as Web controls and ADO.NET, do not have simple equivalents in the J2EE world. The .NET-J2EE benchmarks have shown that equivalent J2EE front-end code has significantly more lines of code (LOC) than does a .NET implementation.

The Promise of Mono

The open source Mono project gives .NET developers a much more viable solution to the problem. With Novell's release of Mono 1.0, developers can use a .NET platform on Linux for their ASP.NET and C# code. Mono developers remain in the .NET world and are able to deploy and run existing code with little or no changes. In fact, the city of Munich has used Mono to migrate their ASP.NET and Web services applications to deploy on 300 Linux servers. Mono provides the Linux .NET developer with an implementation of the standard CLI runtime, a C# compiler, and implementations of the .NET APIs including System, ASP.NET, and ADO.NET classes. Mono provides additional specific APIs that include bindings for the GTK UI toolkit and graphics libraries.

ASP.NET and ADO.NET on J2EE

Mainsoft's Visual MainWin for the J2EE platform (see Figure 1) delivers the .NET-to-Linux migration on enterprise-ready J2EE application servers such as open source JBoss as well as BEA WebLogic and IBM WebSphere.

By delivering the Mono .NET APIs for ASP.NET and ADO.NET classes on the J2EE platform, Mainsoft enables enterprises with a large staff of Microsoft developers to write Web applications and Web services in C# or Visual Basic .NET and deploy them on stable and scalable J2EE application servers.

How Visual MainWin Works

Visual MainWin compiles Microsoft Intermediate code to standard Java bytecode (see Figure 2). The Mono .NET classes are rehosted on standard J2EE application servers. This means that a .NET program, for example, ASP.NET and C# or Visual Basic.NET code, will be deployed as a pure Java application. The Visual MainWin programming model provides seamless integration with Java classes, which are exposed to the .NET programmer as .NET classes. Back-end EJBs are accessed simply as .NET classes, without the .NET programmer having to deal with the complicated mechanics of J2EE EJB lookup and RMI. Since Mono does not yet support the .NET Enterprise Services, transactional components can be implemented as EJBs in Java, and accessed seamlessly from an ASP.NET front end.

Visual MainWin provides complete integration with the Microsoft Visual Studio .NET development environment, allowing .NET developers to remain within their familiar environment. The developer simply builds a .NET project configured for J2EE servers; the complete build process from Microsoft C# compilation through binary compilation to Java bytecode validation of Java references, as well as the packaging as J2EE .jar and .war files, is performed within Visual Studio. Application deployment on J2EE servers is managed, again, from within Visual Studio .NET. The Visual MainWin integrated debugger enables C# or VB.NET programmers to debug applications running in the J2EE application server from the .NET source code.

Sustained Development

As an integrated Visual Studio development environment, Visual MainWin can be used as a strategic, long-term development and porting solution for the Linux platform. It allows companies with Microsoft resources to develop and maintain their applications across the .NET and Linux platforms, boost developer productivity, and speed time to deployment, all of which are key factors in the Linux TCO equation.

More Stories By Yaacov Cohen

Yaacov Cohen is the president and CEO of Mainsoft Corporation.

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
Gary 11/06/04 12:40:57 AM EST

So let me try and understand this. A Visual Studio user can write an ASP.NET application in C# and run it on a Linux server? So, can it be concluded that Linux running MySQL and Apache web services can host an ASP.NET C# based web site?

@ThingsExpo Stories
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place June 6-8, 2017, at the Javits Center in New York City, New York, is co-located with 20th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry p...
"LinearHub provides smart video conferencing, which is the Roundee service, and we archive all the video conferences and we also provide the transcript," stated Sunghyuk Kim, CEO of LinearHub, in this SYS-CON.tv interview at @ThingsExpo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
Internet of @ThingsExpo, taking place June 6-8, 2017 at the Javits Center in New York City, New York, is co-located with the 20th International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. @ThingsExpo New York Call for Papers is now open.
"There's a growing demand from users for things to be faster. When you think about all the transactions or interactions users will have with your product and everything that is between those transactions and interactions - what drives us at Catchpoint Systems is the idea to measure that and to analyze it," explained Leo Vasiliou, Director of Web Performance Engineering at Catchpoint Systems, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York Ci...
The 20th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held June 6-8, 2017, at the Javits Center in New York City, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Containers, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportunity. Submit your speaking proposal ...
WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web communications world. The 6th WebRTC Summit continues our tradition of delivering the latest and greatest presentations within the world of WebRTC. Topics include voice calling, video chat, P2P file sharing, and use cases that have already leveraged the power and convenience of WebRTC.
20th Cloud Expo, taking place June 6-8, 2017, at the Javits Center in New York City, NY, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy.
Discover top technologies and tools all under one roof at April 24–28, 2017, at the Westin San Diego in San Diego, CA. Explore the Mobile Dev + Test and IoT Dev + Test Expo and enjoy all of these unique opportunities: The latest solutions, technologies, and tools in mobile or IoT software development and testing. Meet one-on-one with representatives from some of today's most innovative organizations
DevOps is being widely accepted (if not fully adopted) as essential in enterprise IT. But as Enterprise DevOps gains maturity, expands scope, and increases velocity, the need for data-driven decisions across teams becomes more acute. DevOps teams in any modern business must wrangle the ‘digital exhaust’ from the delivery toolchain, "pervasive" and "cognitive" computing, APIs and services, mobile devices and applications, the Internet of Things, and now even blockchain. In this power panel at @...
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at Cloud Expo, Ed Featherston, a director and senior enterprise architect at Collaborative Consulting, discussed the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
"A lot of times people will come to us and have a very diverse set of requirements or very customized need and we'll help them to implement it in a fashion that you can't just buy off of the shelf," explained Nick Rose, CTO of Enzu, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
The WebRTC Summit New York, to be held June 6-8, 2017, at the Javits Center in New York City, NY, announces that its Call for Papers is now open. Topics include all aspects of improving IT delivery by eliminating waste through automated business models leveraging cloud technologies. WebRTC Summit is co-located with 20th International Cloud Expo and @ThingsExpo. WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web co...
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, the leading expert on architecting agility for the enterprise and president of Intellyx, panelists peeled away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud enviro...
In 2014, Amazon announced a new form of compute called Lambda. We didn't know it at the time, but this represented a fundamental shift in what we expect from cloud computing. Now, all of the major cloud computing vendors want to take part in this disruptive technology. In his session at 20th Cloud Expo, John Jelinek IV, a web developer at Linux Academy, will discuss why major players like AWS, Microsoft Azure, IBM Bluemix, and Google Cloud Platform are all trying to sidestep VMs and containers...
SYS-CON Events announced today that MobiDev, a client-oriented software development company, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place June 6-8, 2017, at the Javits Center in New York City, NY, and the 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. MobiDev is a software company that develops and delivers turn-key mobile apps, websites, web services, and complex softw...
WebRTC is about the data channel as much as about video and audio conferencing. However, basically all commercial WebRTC applications have been built with a focus on audio and video. The handling of “data” has been limited to text chat and file download – all other data sharing seems to end with screensharing. What is holding back a more intensive use of peer-to-peer data? In her session at @ThingsExpo, Dr Silvia Pfeiffer, WebRTC Applications Team Lead at National ICT Australia, looked at differ...
Fact is, enterprises have significant legacy voice infrastructure that’s costly to replace with pure IP solutions. How can we bring this analog infrastructure into our shiny new cloud applications? There are proven methods to bind both legacy voice applications and traditional PSTN audio into cloud-based applications and services at a carrier scale. Some of the most successful implementations leverage WebRTC, WebSockets, SIP and other open source technologies. In his session at @ThingsExpo, Da...
Growth hacking is common for startups to make unheard-of progress in building their business. Career Hacks can help Geek Girls and those who support them (yes, that's you too, Dad!) to excel in this typically male-dominated world. Get ready to learn the facts: Is there a bias against women in the tech / developer communities? Why are women 50% of the workforce, but hold only 24% of the STEM or IT positions? Some beginnings of what to do about it! In her Day 2 Keynote at 17th Cloud Expo, Sandy Ca...
SYS-CON Media announced today that @WebRTCSummit Blog, the largest WebRTC resource in the world, has been launched. @WebRTCSummit Blog offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. @WebRTCSummit Blog can be bookmarked ▸ Here @WebRTCSummit conference site can be bookmarked ▸ Here
Manufacturers are embracing the Industrial Internet the same way consumers are leveraging Fitbits – to improve overall health and wellness. Both can provide consistent measurement, visibility, and suggest performance improvements customized to help reach goals. Fitbit users can view real-time data and make adjustments to increase their activity. In his session at @ThingsExpo, Mark Bernardo Professional Services Leader, Americas, at GE Digital, discussed how leveraging the Industrial Internet and...