管理杂谈OA答疑ERP答疑教程搜索

【C#】如何将Winform只生成一个绿色文件


    我们在之前的文章中,使用过资源嵌入加AssemblyResolve事件来实现将整个项目只生成一个exe文件,也使用过采用自解压打包的方式来实现,后面有粉丝留言说试试Costura.Fody,好吧那就试试,最后发现确实好用。具体使用方式如下:






开发环境:.NET Framework版本:4.8

开发工具:Visual Studio 2022


实现步骤


  1. 首先新建一个控制台程序,再新建一个类库项目,在类库Class1中实现Sum方法

public class Class1

{

public int Sum(int a ,int b)

{

return a + b;

}

}

  1. 然后将类库引用到控制台程序中,在控制台程序中进行调用

internal class Program

{

    static void Main(string[] args)

    {

        Console.WriteLine(new ClassLibrary1.Class1().Sum(3, 5));

        Console.ReadLine();

    }

}

  1. 上面两步形成依赖关系后,就会生成一个exe文件一个dll文件,如图:
  1. 接下来我们开始引入Costura.Fody,在Nuget搜索并安装,目前最新版本是5.7.0,
  2. 在安装的时候会看到项目的引用中加了一堆东西,不过对生成没太大影响(体积还是会变大)。
  3. 安装完成后,重新生成解决方案,会发现debug目录下没有dll文件了。只有一个exe文件,单独拿出去发现也是可以正常运行的。
  4. 最后,不得不说,这个方式的确是简单方便。
    Costura.Fody的开源地址为:https://github.com/Fody/Costura,如果在使用过程中有问题,也可点击去看看作者有没有说明。

更多精彩文章浏览...
点击右上角图标分享到朋友圈
官方网站:http://www.clicksun.cn
咨询热线:400-186-1886
服务邮箱:service@clicksun.cn