前言
我们在之前的文章中,使用过资源嵌入加AssemblyResolve
事件来实现将整个项目只生成一个exe文件,也使用过采用自解压打包的方式来实现,后面有粉丝留言说试试Costura.Fody
,好吧那就试试,最后发现确实好用。具体使用方式如下:
开发环境:.NET Framework版本:4.8
开发工具:Visual Studio 2022
实现步骤
首先新建一个控制台程序,再新建一个类库项目,在类库Class1中实现Sum方法
public class Class1
{
public int Sum(int a ,int b)
{
return a + b;
}
}
然后将类库引用到控制台程序中,在控制台程序中进行调用
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine(new ClassLibrary1.Class1().Sum(3, 5));
Console.ReadLine();
}
}
上面两步形成依赖关系后,就会生成一个exe文件一个dll文件,如图:
接下来我们开始引入
Costura.Fody
,在Nuget搜索并安装,目前最新版本是5.7.0,在安装的时候会看到项目的引用中加了一堆东西,不过对生成没太大影响(体积还是会变大)。
安装完成后,重新生成解决方案,会发现debug目录下没有dll文件了。只有一个exe文件,单独拿出去发现也是可以正常运行的。
最后,不得不说,这个方式的确是简单方便。
Costura.Fody
的开源地址为:https://github.com/Fody/Costura,如果在使用过程中有问题,也可点击去看看作者有没有说明。
实现效果
☛☛☛点击此处下载源码☚☚☚
-
技术群:添加小编微信并备注进群
小编微信:mm1552923
公众号:dotNet编程大全