.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 生成,手动改需谨慎。
相关推荐
Java面试题总结10 小时前
如何更好的创建skill
.net
The Shio15 小时前
OptiByte 操练场:面向 IoT/嵌入式的协议可视化调试工具
网络·嵌入式硬件·物联网·c#·.net·业界资讯·iot
我是唐青枫18 小时前
C#.NET YARP 认证授权实战:在网关层统一接入 JWT
开发语言·c#·.net
步步为营DotNet19 小时前
探索.NET 11:ASP.NET Core 10 云原生应用开发实践
云原生·asp.net·.net
白菜上路19 小时前
C# .net 生成版本号自动变更
c#·.net·visual studio
加号319 小时前
【C#】 通过 Python.NET 调用 Python pyd 扩展模块:多类交互与参数传递实践指南
python·c#·.net
步步为营DotNet2 天前
深入探究.NET 11中的 Native AOT 性能优化与实践
安全·云原生·.net
时光追逐者2 天前
C#/.NET/.NET Core技术前沿周刊 | 第 70 期(2026年5.01-5.10)
c#·.net·.netcore
Java面试题总结2 天前
.NET 8 Web开发入门(三):解构引擎——依赖注入(DI)与中间件管道
前端·中间件·.net