You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio中Protobuf生成代码时如何配置LF/CRLF行尾格式

解决Visual Studio 2022 gRPC生成类行尾默认为LF的配置方案

以下三种方案按需选择即可:

方法1:配置.gitattributes文件(推荐,仓库级全局生效)

该方案会让git自动统一处理行尾转换,适配仓库现有CRLF规范:

  • 在仓库根目录创建/修改.gitattributes文件,添加对应规则:
# 所有C#文件统一使用CRLF行尾
*.cs text eol=crlf
# 如需仅针对gRPC生成的特定目录文件,可使用路径匹配规则,示例:
# Generated/Grpc/*.cs text eol=crlf
# 如需同时统一.proto源文件行尾,可添加:
# *.proto text eol=crlf
  • 配置完成后执行以下命令重置git缓存,重新应用行尾规则:
    git rm --cached -r .
    git reset --hard

注意:执行上述命令前请确认所有未提交的改动已备份或提交,避免丢失本地修改。

方法2:修改Grpc.Tools生成配置(直接控制生成文件行尾)

直接修改项目配置,强制gRPC代码生成工具输出CRLF行尾的文件:

  • 右键对应项目,选择「编辑项目文件」,在<Project>根节点下添加如下配置:
<PropertyGroup>
  <!-- 强制gRPC生成的C#代码使用CRLF行尾 -->
  <Protobuf_AdditionalArgs>--csharp_opt=line_ending=crlf</Protobuf_AdditionalArgs>
</PropertyGroup>
  • 保存项目文件后重新生成项目,新生成的gRPC类自动使用CRLF行尾。

方法3:Visual Studio全局行尾配置

如果需要所有新建、生成的文件默认都使用CRLF,可修改VS全局配置:

  • 打开VS 2022菜单栏「工具」->「选项」->「文本编辑器」->「代码样式」->「行尾」
  • 将「默认行尾格式」设置为「Windows(CRLF, \r\n)」
  • 勾选「保存文件时检查行尾」选项,保存配置即可。

内容的提问来源于stack exchange,提问作者Le Vu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 11:15:08