C#怎么把XML文件嵌入到程序集中作为资源

admin 百科 12
C#中可将XML设为嵌入资源打包进程序集,需设“生成操作”为Embedded Resource、“复制到输出目录”为“从不复制”,运行时用Assembly.GetExecutingAssembly().GetManifestResourceStream()配合资源名(格式:根命名空间.文件夹.文件名.xml)读取,资源只读且名称区分大小写。

C#怎么把XML文件嵌入到程序集中作为资源-第1张图片-佛山资讯网

在C#中,可以把XML文件作为嵌入资源(Embedded Resource)添加到程序集中,这样编译后XML内容会直接打包进DLL或EXE,无需外部文件依赖。

设置XML文件为嵌入资源

在Visual Studio中,右键项目中的XML文件 → 选择“属性” → 将“生成操作(Build Action)”改为 Embedded Resource。确保“复制到输出目录”设为“从不复制”,避免同时生成外部副本造成混淆。

获取嵌入的XML内容

运行时通过 Assembly.GetExecutingAssembly().GetManifestResourceStream() 获取流,再读取为字符串或加载为 XDocument/XmlDocument

  • 资源名称默认是“根命名空间.文件夹名.文件名.xml”,例如项目默认命名空间是 MyApp,XML放在 Data\config.xml,则资源名为 MyApp.Data.config.xml
  • 可用 Assembly.GetExecutingAssembly().GetManifestResourceNames() 列出所有嵌入资源名,调试时快速确认准确名称
  • 推荐用 using var stream = ...; using var reader = new StreamReader(stream); var xmlText = reader.ReadToEnd(); 安全读取

加载为XDocument示例

代码片段(假设资源名为 MyApp.Config.xml):

标签: app stream 配置文件 c#

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~