将C#控制台应用程序转换为DLL

时间:2014-07-19 10:44:48

标签: c# .net dll console-application

我正在使用SOAP将Betfair API重写为JSON,我之前已经开始使用它作为控制台APP,然后从任务调度程序或win服务调用它。

但是现在我被要求用代码做各种不同的工作,我不想为每个工作写一个控制台应用程序(不同的网站想要价格,下注等)

新代码库比旧代码库大得多,我可以将旧系统中的4个文件复制到DLL应用程序中,然后创建各种控制台应用程序/服务来实现DLL - 但是因为它已经超过了40+文件如果可能,我不想要复制粘贴作业。

有没有办法可以在VS中使用某些工具或命令轻松地将现有的控制台项目转换为类/ DLL项目?

我希望能够创建简单的应用程序

BetfairBOT myBOT = new BetfairBOT()
myBOT.RunGetPrices();

BetfairBOT myBOT = new BetfairBOT()
myBOT.RunPlaceBets();

例如2/3行代码来实现我的应用程序注册的DLL。

因此,如果没有复制和粘贴,我可以这样做。

我正在使用VS 2012,.NET 4.5(如果我需要依赖服务器,则为4.0),Windows 8.1

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:10)

这个答案来自here。虽然它使用winforms而不是控制台应用程序,但我认为你可以使用它。

创建DLL的步骤

第1步: - 文件 - >新建>项目 - > Visual C#项目 - >类库。选择项目名称和相应的目录,单击“确定”

Creating C# Class Library (DLL) Using Visual Studio .NET

单击“确定”按钮后,解决方案资源管理器会添加一个C#类“Class1.cs”。在本课程中,我们可以编写代码。

Creating C# Class Library (DLL) Using Visual Studio .NET

当我们双击Class1.cs时,我们看到一个命名空间CreatingDLL。我们将在项目中使用此命名空间来访问此类库。

Creating C# Class Library (DLL) Using Visual Studio .NET

第2步: - 在Class1.cs中,我们创建了一个名为'sum'的方法,它接受两个整数值并返回一个传递给witch方法的数字。

using System;

namespace CreatingDLL
{
    public class Class1
    {
        /// <summary>
        /// sum is method that take two integer value and return that sum
        /// </summary>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <returns></returns>
        public int sum(int x, int y)
        {
            return x + y;
        }
    }
}

第3步: - 现在构建应用程序并查看项目的bin \ debug目录。 'CreatingDLL.dll'已创建。

现在我们创建另一个应用程序并使用此DLL(CreatingDLL.dll)引用来访问DLL的方法。 访问创建的DLL的步骤

第4步: - 文件 - &gt;新建 - &gt;项目 - &gt; Visual C#项目 - &gt; Windows窗体应用程序。

第5步: - 设计的窗口如下图所示。

Creating C# Class Library (DLL) Using Visual Studio .NET

第6步: - 添加我们在几分钟之前创建的DLL(CreatingDLL)的引用。

Creating C# Class Library (DLL) Using Visual Studio .NET

Creating C# Class Library (DLL) Using Visual Studio .NET

添加DLL引用后,将出现以下窗口。

Creating C# Class Library (DLL) Using Visual Studio .NET

第7步: - 在Windows窗体应用程序的按钮上单击编写代码。在创建对象和制作添加DLL的方法之前,在项目中添加名称空间CreatedDLL作为下面的代码。

using System;
using System.Windows.Forms;

using CreatingDLL;

namespace AccessingDLL
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void btnAdd_Click(object sender, EventArgs e)
        {
            Class1 c1 = new Class1();
            try
            {
                txtResult.Text = Convert.ToString(c1.sum(Convert.ToInt32(txtNumber1.Text), Convert.ToInt32(txtNumber2.Text)));
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
    }
}

第8步: - 现在构建应用程序并执行项目并查看输出。

Creating C# Class Library (DLL) Using Visual Studio .NET

编辑:要将应用程序更改为库,请执行以下步骤

首先,双击Solution Explorer窗口中的Properties。

Double Click

然后,在打开的页面上,将输出类型从控制台应用程序更改为类库

Change output type