Developing for .NET on Linux

The following steps outline the basic procedure for creating an application for Mono on Linux. Most of these steps outline Visual Studio procedures, so see Visual Studio documentation for more information.

Note

Synergy .NET development for Linux is currently experimental and unsupported. Debugging is not available.

In general, Synergy/DE’s support for Mono on Linux is the same as its support for Windows .NET Framework desktop and server development, but there are some differences. Windows-specific code won’t work with Linux (for example, file paths for Linux must have forward slashes), fewer project types are supported, there are different restrictions, and you must use traditional Synergy licensing. (Synergy device licensing is not supported for Linux.) See Synergy DBL Support for .NET for more information, and note the following:

1. Start by reviewing Synergy .NET Requirements. Your Windows development machine and the Synergy projects you create in Visual Studio must meet the requirements listed in this section.
2. For each assembly in your application, create a Visual Studio project from one of the following Synergy project templates:

ASP.NET Server Control Library

Class Library (.NET Framework)

Class Library (.NET Standard)

Console App (.NET Framework)

Empty Project

Interop

Synergy/DE Repository

WCF Service Library

Windows Forms Application

Windows Forms Control Library

For example, to create a console application (an application that runs from the command line), select File > New > Project in Visual Studio. Then select the "Console App (.NET Framework)" template. (You can use the New Project dialog's search field to find this.) See Synergy projects, solutions, and files for more information, and note the following:

3. Add DBL code, resources, etc., to the Visual Studio projects, and make sure each project references any needed assemblies.
4. Set project properties and then build the solution.
5. For testing and deployment, set up a Samba share and do the following: