.NET 常见文件与扩展名含义(速查)

常见文件与扩展名含义(速查)

下面按「你在仓库里会摸到的」优先级整理;并非 .NET 生态里每一个后缀(如 .vb.fs 等仅略提)。

源代码与标记
扩展名 / 模式 含义
.cs C# 源码。一个文件通常对应一个类型(类/接口/记录等),也可放 Program.cs 入口。
*.Designer.cs 设计器生成或部分类(partial)的另一半,少手改。
*.g.cs 代码生成器产出(如源生成器),不要手改,重新生成会覆盖。
.cshtml Razor:HTML + C# 混排,多用于 MVC/Razor Pages 视图。
_ViewStart.cshtml / _ViewImports.cshtml 视图全局布局与命名空间/using 导入,名字约定以下划线开头。
.razor Blazor 组件(浏览器里跑 WebAssembly 或服务端渲染)。
.xaml WPF / MAUI / WinUI 等 UI 声明式标记(做桌面/跨平台客户端时常见)。
.resx 资源文件(多语言字符串、图片等),编译成嵌入资源。
.http / .rest VS / Rider 的 HTTP 客户端文件,用来手写请求测 API(类似 Postman 片段)。
项目、解决方案与构建
扩展名 含义
.csproj C# 项目文件:目标框架、包引用、编译项、全局配置等;角色接近 package.json + 构建脚本。
.sln 解决方案:多个 .csproj(及杂项)的容器;类似 monorepo 里一个「工作区」入口。
.slnx 新版可选解决方案格式(XML/简化结构),工具链逐步支持。
Directory.Build.props / Directory.Build.targets 放在目录树上级,给下面所有子项目统一注入 MSBuild 属性/目标。
.props / .targets MSBuild 属性与任务片段,常被包或解决方案复用。
global.json 指定本目录使用的 SDK 版本(团队对齐版本时常用)。
nuget.config NuGet 源、私有源、包路径等(类似 .npmrc 的一部分职责)。
packages.lock.json 包锁定文件(启用锁定后),类似 package-lock.json
.editorconfig 缩进、命名风格等,跨编辑器一致(前端也常用)。
配置(运行与开发)
文件名 含义
appsettings.json 默认配置(连接字符串、日志级别、自定义键)。
appsettings.{Environment}.json 按环境覆盖,如 DevelopmentProduction
secrets.json(用户机密) 开发机敏感配置,不进 Git,路径由工具管理。
Properties/launchSettings.json 本地调试:端口、环境变量 ASPNETCORE_ENVIRONMENT、IIS Express 配置等。
web.config 部署在 IIS 时常见:ASP.NET Core 模块(ANCM)与 Kestrel 衔接;本地 Kestrel 直跑可能不需要。
编译与发布产物(一般在 bin/ / obj/ / publish/
扩展名 含义
.dll 程序集(库或可执行入口的载体),.NET 主要交付形态。
.exe Windows 可执行入口;自包含发布时常有;Linux 上可能是无扩展名的可执行文件。
.pdb 调试符号:堆栈行号、局部变量名;发布到生产可选是否带上(便于分析崩溃)。
.xml(与 DLL 同名) XML 文档注释导出,供 IDE 提示;可选。
.deps.json 依赖清单:运行时解析依赖树用。
.runtimeconfig.json 运行时版本、滚动更新策略等。
project.assets.jsonobj/ 内) NuGet 还原结果,勿手改
测试与其它语言(略)
扩展名 含义
.csproj 中带 *Tests* 的项目 单元/集成测试,常用 xUnit / NUnit / MSTest。
.fs / .fsproj F# 语言与项目。
.vb / .vbproj Visual Basic。
命名习惯(和「文件名含义」一起看)
  • PascalCase :公开类型、方法、属性名(UserController)。
  • 接口 :常 I 前缀IUserRepository)。
  • 私有字段 :常见 _camelCasecamelCase(团队规范为准)。
  • 异步方法 :习惯 Async 后缀GetUserAsync)。
  • EF Core 迁移Migrations/ 下带时间戳的类名描述 schema 变更;由 CLI 生成,手动改需谨慎。
相关推荐
叫我黎大侠3 小时前
.NET 实战:调用千问视觉模型实现 OCR(车票识别完整教程)
阿里云·ai·c#·ocr·asp.net·.net·.netcore
唐青枫3 小时前
C#.NET ValueTaskSource 深入解析:零分配异步、ManualResetValueTaskSourceCore 与使用边界
c#·.net
公子小六3 小时前
基于.NET的Windows窗体编程之WinForms事件简介
windows·microsoft·c#·.net
军训猫猫头4 小时前
7.带输入参数的线程启动 C# + WPF 完整示例
开发语言·前端·c#·.net·wpf
CSharp精选营5 小时前
AutoMapper三板斧:值转换器、条件映射、自定义解析器,复杂映射不再愁
c#·.net·automapper
.NET修仙日记5 小时前
2026 .NET 面试八股文:高频题 + 答案 + 原理(进阶核心篇)
面试·职场和发展·c#·.net·.net core·微软技术·webapi
唐青枫15 小时前
C#.NET ObjectPool 深入解析:对象复用、池化策略与使用边界
c#·.net
Jasper_o19 小时前
MassTransit OutBox 不发送消息问题
后端·.net