/*十有三博客*/
  • 首页
  • 关于本站
  • 网站地图
  • RSS订阅

.NET项目在生成时如何将静态资源文件复制到输出目录

2020-03-25 十有三 0 浏览:1万+ .NET技术 ASP.NET | Visual Studio | C#

平常使用Visual Studio开发.NET项目,总会有用到一些自定义静态资源文件的时候,由于VS默认情况下,项目编译和生成后不会把静态资源文件复制到输出目录,就需要我们自己手动设置静态文件的属性。操作十分简单,本文作为一个知识小结笔记进行记录。

这里使用一个C#控制台应用程序作为演示,随便新建一个ConsoleApp(使用的VS IDE版本是2019),然后在项目下分别添加json、xml、txt、html这四种不同类型的静态资源文件:

创建演示文件

接下来生成项目并打开bin文件夹查看,可以看到我们在项目中创建的四个静态资源文件是没有被复制到输出目录里的:

查看生成结果

回到VS的解决方案资源管理器视图,全选这几个文件(如有需要也可以一一对应进行设置),然后右键选择属性:

设置静态资源文件属性

在打开的属性设置视图里,设置复制到输出目录值为始终复制:

设置复制到输出目录值为始终复制

设置完成后再一次编译和生成项目,就可以看到刚刚设置的四个静态资源文件(json、xml、txt、html)已经被复制到bin文件夹里:

静态资源文件复制到bin目录

这里需要注意一个地方,我上面的操作并没有设置生成操作的值,默认是无,因为我只是用控制台程序来进行简单演示,所以这里没设置也能实现效果。一般情况下,如果是ASP.NET项目,建议将值设置成内容,利于项目部署,当然这块还得根据自己的业务需求来判断。可以从下拉框中看看到该属性包含了很多值:

生成操作值

关于更多生成操作值的具体说明,可以查看微软官方文档(Docs/Visual Studio/Windows/IDE/生成/生成操作),贴下部分文档说明和截图:

标记为“内容” 的文件可以通过调用 Application.GetContentStream 作为流进行检索。 对于 ASP.NET 项目,在部署站点时包含这些文件,作为站点的一部分。

官方文档生成操作值截图1

官方文档生成操作值截图2

本文是一篇简单的小结笔记,起因是前阵子需要开发博客的SSL/TLS证书定时自动更新功能,搭建在一个服务程序里,使用了自定义的JSON配置文件来存储ACME协议相关数据,在项目生成发布后无法读取JSON配置文件,才发现文件根本没有复制到bin文件夹里,后面排查问题才想起没有设置静态文件的复制到输出目录属性。其实最早的时候就有用到自定义的XML文件来做一些简单数据或者配置存储,也有用过html文件做邮件发送模板,所以有些知识还是要记录下加深印象,不然可能就突然忘记了。


版权声明:本文由十有三创作,采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。欢迎转载本文,转载请务必署名-保留作者名称及出处:https://shiyousan.com/post/637207435593814462。


  • 上一篇: 连续收到邮件和短信通知需要添加网页底部备案编号链接
  • 下一篇: 博客底部的CC协议图标裂开了-404错误

相关文章
  • Web 部署任务失败 未能使用指定的进程“Web Management Service”连接到远程计算机
  • ASP.NET中 解决网站安全检测问题:“发现目录启用了自动目录列表功能”
  • 解决Visual Studio 起始页中"最近的项目"没有记录最近使用的项目和解决方案
  • ASP.NET MVC实现IExceptionFilter接口编写自定义异常处理过滤器
  • Discuz!NT Flash无法上传头像,点击上传后无任何反应
  • 翻译:Changes to the language setting will not take effect until the environment is restarted.

文章分类

.NET技术 123 数据库 24 Web前端 21 网站建设运维 37 操作系统与应用 66 程序猿日常 11 开发工具 12 其他随笔 13

文章标签

ASP.NET ASP.NET MVC C# CSS HTML IIS Javascript Linux MongoDB MySql SQL SQL Server Visual Studio Windows系统 版本控制系统 插件工具 服务器 搞笑娱乐 好文分享 软件应用 生活知识 手机问题 随笔 网络知识 网站设计优化 网站维护 养生保健 异常处理 硬件设备 游戏攻略

热门文章

  • IIS8如何安装和使用URL重写工具-URL Rewrite
  • 林蛋大与楚中天,朱肚皮与朱月坡
  • 解决IE11安装升级失败和在安装前需要更新的问题
  • Windows Server 2012无法安装 .NET3.5-安装角色或功能失败,找不到源文件
  • Win10中如何设置Hyper-V的网络让虚拟机也能上外网

推荐文章

  • IIS上设置ARR导致所有网站无法正常打开
  • MongoDB学习笔记:batchInsert is not a function
  • 解决Visual Studio出现"调试器无法继续运行该进程。无法启动调试 "错误
  • 解决Windows 10系统Administrator内置管理员帐号与微软帐号的合并问题/附详细解绑步骤
  • 分享一个MIME Types大全网址

友情链接

  • 码友网

知识共享许可协议 CC BY-SA 4.0本站作品采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。
闽ICP备15003702号
闽公网安备 35020302035102号