Welcome!

Linux Containers Authors: Elizabeth White, Craig Lowell, Liz McMillan, Pat Romanski, XebiaLabs Blog

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
What are the successful IoT innovations from emerging markets? What are the unique challenges and opportunities from these markets? How did the constraints in connectivity among others lead to groundbreaking insights? In her session at @ThingsExpo, Carmen Feliciano, a Principal at AMDG, will answer all these questions and share how you can apply IoT best practices and frameworks from the emerging markets to your own business.
Ask someone to architect an Internet of Things (IoT) solution and you are guaranteed to see a reference to the cloud. This would lead you to believe that IoT requires the cloud to exist. However, there are many IoT use cases where the cloud is not feasible or desirable. In his session at @ThingsExpo, Dave McCarthy, Director of Products at Bsquare Corporation, will discuss the strategies that exist to extend intelligence directly to IoT devices and sensors, freeing them from the constraints of ...
You think you know what’s in your data. But do you? Most organizations are now aware of the business intelligence represented by their data. Data science stands to take this to a level you never thought of – literally. The techniques of data science, when used with the capabilities of Big Data technologies, can make connections you had not yet imagined, helping you discover new insights and ask new questions of your data. In his session at @ThingsExpo, Sarbjit Sarkaria, data science team lead ...
Extracting business value from Internet of Things (IoT) data doesn’t happen overnight. There are several requirements that must be satisfied, including IoT device enablement, data analysis, real-time detection of complex events and automated orchestration of actions. Unfortunately, too many companies fall short in achieving their business goals by implementing incomplete solutions or not focusing on tangible use cases. In his general session at @ThingsExpo, Dave McCarthy, Director of Products...
Traditional IT, great for stable systems of record, is struggling to cope with newer, agile systems of engagement requirements coming straight from the business. In his session at 18th Cloud Expo, William Morrish, General Manager of Product Sales at Interoute, outlined ways of exploiting new architectures to enable both systems and building them to support your existing platforms, with an eye for the future. Technologies such as Docker and the hyper-convergence of computing, networking and sto...
WebRTC is bringing significant change to the communications landscape that will bridge the worlds of web and telephony, making the Internet the new standard for communications. Cloud9 took the road less traveled and used WebRTC to create a downloadable enterprise-grade communications platform that is changing the communication dynamic in the financial sector. In his session at @ThingsExpo, Leo Papadopoulos, CTO of Cloud9, discussed the importance of WebRTC and how it enables companies to focus...
With an estimated 50 billion devices connected to the Internet by 2020, several industries will begin to expand their capabilities for retaining end point data at the edge to better utilize the range of data types and sheer volume of M2M data generated by the Internet of Things. In his session at @ThingsExpo, Don DeLoach, CEO and President of Infobright, discussed the infrastructures businesses will need to implement to handle this explosion of data by providing specific use cases for filterin...
IoT generates lots of temporal data. But how do you unlock its value? You need to discover patterns that are repeatable in vast quantities of data, understand their meaning, and implement scalable monitoring across multiple data streams in order to monetize the discoveries and insights. Motif discovery and deep learning platforms are emerging to visualize sensor data, to search for patterns and to build application that can monitor real time streams efficiently. In his session at @ThingsExpo, ...
Early adopters of IoT viewed it mainly as a different term for machine-to-machine connectivity or M2M. This is understandable since a prerequisite for any IoT solution is the ability to collect and aggregate device data, which is most often presented in a dashboard. The problem is that viewing data in a dashboard requires a human to interpret the results and take manual action, which doesn’t scale to the needs of IoT.
Internet of @ThingsExpo has announced today that Chris Matthieu has been named tech chair of Internet of @ThingsExpo 2016 Silicon Valley. The 6thInternet of @ThingsExpo will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
What does it look like when you have access to cloud infrastructure and platform under the same roof? Let’s talk about the different layers of Technology as a Service: who cares, what runs where, and how does it all fit together. In his session at 18th Cloud Expo, Phil Jackson, Lead Technology Evangelist at SoftLayer, an IBM company, spoke about the picture being painted by IBM Cloud and how the tools being crafted can help fill the gaps in your IT infrastructure.
SYS-CON Events announced today the Enterprise IoT Bootcamp, being held November 1-2, 2016, in conjunction with 19th Cloud Expo | @ThingsExpo at the Santa Clara Convention Center in Santa Clara, CA. Combined with real-world scenarios and use cases, the Enterprise IoT Bootcamp is not just based on presentations but with hands-on demos and detailed walkthroughs. We will introduce you to a variety of real world use cases prototyped using Arduino, Raspberry Pi, BeagleBone, Spark, and Intel Edison. Y...
Much of IT terminology is often misused and misapplied. Modernization and transformation are two such terms. They are often used interchangeably even though they mean different things and have very different connotations. Indeed, it is somewhat safe to assume that in IT any transformative effort is likely to also have a modernizing effect, and thus, we can see these as levels of improvement efforts. However, many businesses are being led to believe if they don’t transform now they risk becoming ...
CenturyLink has announced that application server solutions from GENBAND are now available as part of CenturyLink’s Networx contracts. The General Services Administration (GSA)’s Networx program includes the largest telecommunications contract vehicles ever awarded by the federal government. CenturyLink recently secured an extension through spring 2020 of its offerings available to federal government agencies via GSA’s Networx Universal and Enterprise contracts. GENBAND’s EXPERiUS™ Application...
SYS-CON Events announced today that LeaseWeb USA, a cloud Infrastructure-as-a-Service (IaaS) provider, will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. LeaseWeb is one of the world's largest hosting brands. The company helps customers define, develop and deploy IT infrastructure tailored to their exact business needs, by combining various kinds cloud solutions.
The best-practices for building IoT applications with Go Code that attendees can use to build their own IoT applications. In his session at @ThingsExpo, Indraneel Mitra, Senior Solutions Architect & Technology Evangelist at Cognizant, provided valuable information and resources for both novice and experienced developers on how to get started with IoT and Golang in a day. He also provided information on how to use Intel Arduino Kit, Go Robotics API and AWS IoT stack to build an application tha...
Whether your IoT service is connecting cars, homes, appliances, wearable, cameras or other devices, one question hangs in the balance – how do you actually make money from this service? The ability to turn your IoT service into profit requires the ability to create a monetization strategy that is flexible, scalable and working for you in real-time. It must be a transparent, smoothly implemented strategy that all stakeholders – from customers to the board – will be able to understand and comprehe...
It’s 2016: buildings are smart, connected and the IoT is fundamentally altering how control and operating systems work and speak to each other. Platforms across the enterprise are networked via inexpensive sensors to collect massive amounts of data for analytics, information management, and insights that can be used to continuously improve operations. In his session at @ThingsExpo, Brian Chemel, Co-Founder and CTO of Digital Lumens, will explore: The benefits sensor-networked systems bring to ...
SYS-CON Events announced today that Venafi, the Immune System for the Internet™ and the leading provider of Next Generation Trust Protection, will exhibit at @DevOpsSummit at 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Venafi is the Immune System for the Internet™ that protects the foundation of all cybersecurity – cryptographic keys and digital certificates – so they can’t be misused by bad guys in attacks...
"Tintri was started in 2008 with the express purpose of building a storage appliance that is ideal for virtualized environments. We support a lot of different hypervisor platforms from VMware to OpenStack to Hyper-V," explained Dan Florea, Director of Product Management at Tintri, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.