首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我应该保留哪些ReSharper文件以及我应该在源代码管理中忽略哪些文件?

在这个问答内容中,我们讨论了如何处理ReSharper文件以及源代码管理中的忽略文件。

首先,关于保留哪些ReSharper文件,ReSharper是一个强大的Visual Studio扩展,可以帮助开发人员提高代码质量和效率。ReSharper会生成一些文件来存储其配置和缓存信息。通常情况下,开发人员应该将这些文件保留在本地计算机上,因为这些文件包含了开发人员的个性化设置和优化信息。

关于源代码管理中应该忽略哪些文件,这取决于使用的源代码管理系统。通常情况下,开发人员应该忽略一些不必要的文件,例如编译输出、日志文件、缓存文件、临时文件等。这些文件通常会随着开发过程的进行而生成,并且不需要被源代码管理系统跟踪。

总的来说,开发人员应该保留ReSharper文件,并且在源代码管理中忽略一些不必要的文件,以保持代码库的整洁和高效。

以下是一些常见的ReSharper文件和源代码管理中应该忽略的文件:

ReSharper文件:

  • %APPDATA%\JetBrains\ReSharper**.DotSettings
  • %APPDATA%\JetBrains\ReSharper**.sln.DotSettings
  • %APPDATA%\JetBrains\ReSharper**.sou
  • %APPDATA%\JetBrains\ReSharper**.dotMemory
  • %APPDATA%\JetBrains\ReSharper**.svc
  • %APPDATA%\JetBrains\ReSharper**.dotCover
  • %APPDATA%\JetBrains\ReSharper**.dotTrace
  • %APPDATA%\JetBrains\ReSharper**.rsp
  • %APPDATA%\JetBrains\ReSharper**.dotPeek
  • %APPDATA%\JetBrains\ReSharper**.dotSettings.user
  • %APPDATA%\JetBrains\ReSharper**.dotCover.user
  • %APPDATA%\JetBrains\ReSharper**.dotTrace.user
  • %APPDATA%\JetBrains\ReSharper**.dotPeek.user
  • %APPDATA%\JetBrains\ReSharper**.rsp.user
  • %APPDATA%\JetBrains\ReSharper**.svc.user
  • %APPDATA%\JetBrains\ReSharper**.dotMemory.user
  • %APPDATA%\JetBrains\ReSharper**.sou.user

源代码管理中应该忽略的文件:

  • *.suo
  • *.user
  • *.aps
  • *.pdb
  • *.log
  • *.bak
  • *.tmp
  • *.cache
  • *.obj
  • *.exe
  • *.dll
  • *.pdb
  • *.xml
  • *.csv
  • *.json
  • *.txt
  • *.md
  • *.pdf
  • *.doc
  • *.docx
  • *.xls
  • *.xlsx
  • *.ppt
  • *.pptx
  • *.jpg
  • *.jpeg
  • *.png
  • *.gif
  • *.bmp
  • *.ico
  • *.mp3
  • *.mp4
  • *.avi
  • *.wmv
  • *.flv
  • *.swf
  • *.fla
  • *.psd
  • *.ai
  • *.eps
  • *.indd
  • *.cdr
  • *.pdf
  • *.html
  • *.htm
  • *.css
  • *.js
  • *.map
  • *.less
  • *.sass
  • *.scss
  • *.coffee
  • *.ts
  • *.cshtml
  • *.vbhtml
  • *.aspx
  • *.ascx
  • *.master
  • *.html
  • *.htm
  • *.css
  • *.js
  • *.map
  • *.less
  • *.sass
  • *.scss
  • *.coffee
  • *.ts
  • *.cshtml
  • *.vbhtml
  • *.aspx
  • *.ascx
  • *.master
  • *.nupkg
  • *.zip
  • *.rar
  • *.tar
  • *.gz
  • *.7z
  • *.bz2
  • *.tgz
  • *.tbz2
  • *.txz
  • *.tlz
  • *.lzma
  • *.cab
  • *.jar
  • *.war
  • *.ear
  • *.jad
  • *.apk
  • *.ipa
  • *.appx
  • *.appxbundle
  • *.msix
  • *.msixbundle
  • *.xap
  • *.epub
  • *.mobi
  • *.azw
  • *.azw3
  • *.azw4
  • *.kf8
  • *.mobi8
  • *.prc
  • *.pdb
  • *.db
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
  • *.sql
  • *.sqlite
  • *.sqlite3
  • *.s3db
  • *.db3
  • *.h2.db
  • *.hsqldb
  • *.script
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

resharper 自定义代码片 常用功能

resharper 提供了很有用的代码片,但是我们还是觉得不够,这时我们需要自己编辑 Resharper 代码片。 将会告诉大家,如果在 resharper 定义自己需要的 代码片 。...我们先看下有哪些。...如何把类里的类移动到其他文件 如何在 Resharper 忽略文件?...有一些文件需要忽略,不让他分析,因为这文件太多错误,但是是必要的,可以打开Resharper 设置 选择 Code Inspection ,设置,添加例外文件。 ?...添加例外文件可以指点哪些文件忽略,可以忽略某个文件,很简单,如果有不懂请告诉。 如何显示空格 显示有多少空格,有些代码可能存在看不见的字\u0012,如果有这些,你以为是空格。

1.2K10

Resharper上手指南

在解决方案资源管理器中选中一个项目,然后右键,在长长的弹出菜单中选择:添加——类,如果你的电脑够慢的话,在3秒钟之后才会弹出一个对话框来问你文件名。    另一种方式是:看到竖直滚动条了吗?...当你的光标在一个类型上时,按下Ctrl+B可能发生两种情况,一是当这个类型的定义在你的项目中有源代码时,会跳转到这个源代码文件。如果没有源代码,则会打开一个对象浏览器。...不错,就是TotalCommand里搜索的快捷键,没有用过TC,还在用资源管理器?那可不应该。...提供你处理当前警告的一些建议 有的时候你可能会忽略的一些细节,Resharper不会忽略,比如你用了隐式类型转化: Button btn = sender as Button;      //隐式类型转化...的团队没有用到敏捷开发那些高级的东西,但是我们还是保持着每次改动都仅涉及两三个文件的好习惯,并且频繁的commite到源代码服务器上去。所以,每次真正要编辑的文件不多,性能不是问题。

1.7K60

VisualStudio 2019 新特性

很多小伙伴都好奇 VisualStudio 2019 有哪些功能,下面让介绍一些好玩的特性 在安装完成之后会看到创新的欢迎界面,这个欢迎界面支持输入关键字搜项目,同时支持选择语言平台 ?...其实有这个功能,支持保存解决方案加载的项目,也就是假如我有10个项目,需要在启动的过程不加载其中的5个单元测试项目,就可以通过这个方法另存 slnf 文件,下次打开这个文件就会加载需要的项目,详细请看...可以发现 VisualStudio 2019 带来一波很有用的性能提示,但是也有另一些没有什么用的性能提升,如性能管理器 ? 打开这个界面可以看到基本只有一个不能卸载的插件是降低性能 ?...的功能,如界面可以提示当前打开的文件存在哪些可以优化的代码 ?...欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

6.2K20

程序员不容错过的开发利器

现在工作多年来收集实用的开发利器分享出来,希望能够给同学们参考借鉴(以下排名不分先后)。假如各位同学有更好的值得推荐的利器欢迎在文末留言或者去GitHub知识库留下你宝贵的Issues。...通过ReSharper的代码分析,所有这些以及更多的代码改进成为可能。...可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。...TortoiseSVN TortoiseSVN TortoiseSVN是Subversion版本控制系统的一个免费开源客户端,可以对文件版本进行统一管理和控制;文件保存在中央版本库,您可以将文件恢复到过去的版本...,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。

2.2K20

程序员常用的工具软件推荐

现在工作多年来收集实用的开发利器分享出来,希望能够给同学们参考借鉴(以下排名不分先后)。假如各位同学有更好的值得推荐的利器欢迎在文末留言或者去GitHub知识库留下你宝贵的Issues。...通过ReSharper的代码分析,所有这些以及更多的代码改进成为可能。...SSMS 提供用于配置、监视和管理 SQL Server 和数据库实例的工具。 使用 SSMS 部署、监视和升级应用程序使用的数据层组件,以及生成查询和脚本。...可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。...,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。

2.9K20

现代 JavaScript 库打包指南

更多开源作品请看 GitHub https://github.com/qq449245884/xiaozhi ,包含一线大厂面试完整考点、资料以及的系列文章。...输出多文件 通过保留文件结构更好地支持 treeshaking 如果你对你的库使用了打包工具或编译器,可以对其进行配置以保留文件目录结构。...无论你选择使用哪种策略,都应该记录下来,以便开发者了解你的库是如何进行版本控制的。 你还应该在 changelog 记录你的更改。.../package.json" } } 让我们深入了解这些字段的含义以及选择这个例子的原因: "."...列出要发布的 files files 定义你的 NPM 包要包含哪些文件 files 决定 npm CLI 在打包库时哪些文件和目录包含到最终的 NPM 包

87610

ReSharper 配置及用法

曾经有一个组合键可以注释掉当前行,还有另一个是取消注释,但是已经淡忘了,因为Ctrl+/才应该是真正属于它的快捷键,再次按下就可以取消注释。 ...但是怎么样打开最近编辑后关闭的文件呢,Visual Studio很客气的又没有提供此功能,于是留给了Resharper。在这里这个快捷键是Ctrl+E,Ctrl+E,没错,按两次。...如果你的不是,那么在Resharper-View-Recent Files菜单下看看它是什么。因为你会时常用到。打开一个文件的列表,用方向键选择并回车就会在编辑器打开。 ...的团队没有用到敏捷开发那些高级的东西,但是我们还是保持着每次改动都仅涉及两三个文件的好习惯,并且频繁的commite到源代码服务器上去。所以,每次真正要编辑的文件不多,性能不是问题。 ...还有一个定位的功能(Locate in Solution Explorer),真是没用,如果你在VS选项设置了,在解决方案管理器中跟踪活动项,那么VS自动就给你定位了。

1.8K10

说说gitlab的.gitignore文件

gitignore 文件是 Git 版本控制系统中用来指定哪些文件或目录应该被 Git 忽略,不加入版本控制的配置文件。下面是 .gitignore 文件的一些关键点:1....- 保护敏感信息,防止误将敏感文件加入版本控制。2. **原理**: - `.gitignore` 文件本身需要被加入到版本控制,这样其他开发者可以知道哪些文件是被忽略的。...- Git 会读取 `.gitignore` 文件的规则,并根据这些规则来确定哪些文件应该忽略。 - 规则可以是文件名、目录名、文件扩展名,也可以是复杂的模式匹配。3....**忽略父目录规则**: - 如果在子目录创建了 `.gitignore` 文件,该文件只能忽略该子目录下的文件,而不能忽略父目录文件。3....通过避免这些常见的错误和误解,可以更有效地使用 `.gitignore` 文件管理 Git 仓库文件。【小结】别小看一个个运维的小技术点,有时候能帮上大忙。

9720

ReSharper 在 C 盘占用了太多空间了,本文告诉你如何安全地删除或转移这些文件

一个不小心,的 SSD 又满了。到底是谁占用了那么多的空间!如果你是 ReSharper 的重度用户,那么可能你的调查结果会直指 JetBrains ReSharper。...本文将告诉你如何安全地删除这些文件来释放你的 C 盘空间,然后在 ReSharper 设置其他的缓存目录。...好的,吐槽就到这里,我们进入正题——删除这些文件。 删除 ReSharper 的缓存目录 注意:只有 Transient 文件夹是可以删除的!...ReSharper 安装时的目录都在 %LocalAppData%\JetBrains 。...虽然运行时的缓存也在这里,但是如果你直接把这个目录删掉了,那么 ReSharper 插件以及 JetBrains 全家桶也就不能正常使用了。

1.5K40

「吐血整理」再来一打Webpack面试题

(开始熟悉的报起了菜名) raw-loader:加载文件原始内容(utf-8) file-loader:把文件输出到一个文件,在代码通过相对 URL 去引用输出的文件 (处理图片和字体) url-loader...线上环境一般有三种处理方案: hidden-source-map:借助第三方错误监控平台 Sentry 使用 nosources-source-map:只会显示具体行数以及查看源代码的错误栈。...哪些状态该保留哪些又需要更新?)...bundle ,注意被忽略掉的文件里不应该包含 import、require、define 等模块化语句) IgnorePlugin (完全排除模块) 合理使用alias 提取页面公共资源: 使用...告诉 Webpack 该 Loader 是否需要二进制数据 尽可能的异步化 Loader,如果计算量很小,同步也可以 Loader 是无状态的,我们不应该在 Loader 中保留状态 使用 loader-utils

60320

「吐血整理」再来一打Webpack面试题

(开始熟悉的报起了菜名) raw-loader:加载文件原始内容(utf-8) file-loader:把文件输出到一个文件,在代码通过相对 URL 去引用输出的文件 (处理图片和字体) url-loader...线上环境一般有三种处理方案: hidden-source-map:借助第三方错误监控平台 Sentry 使用 nosources-source-map:只会显示具体行数以及查看源代码的错误栈。...哪些状态该保留哪些又需要更新?)...bundle ,注意被忽略掉的文件里不应该包含 import、require、define 等模块化语句) IgnorePlugin (完全排除模块) 合理使用alias 提取页面公共资源: 使用...告诉 Webpack 该 Loader 是否需要二进制数据 尽可能的异步化 Loader,如果计算量很小,同步也可以 Loader 是无状态的,我们不应该在 Loader 中保留状态 使用 loader-utils

1.2K21

Java编码规范

大家好,又见面了,是全栈君 1. Java 命名约定 除了以下几个特例之外,命名时应始终采用完整的英文描述符。此外,一般应采用小写字母,但类名、接口名以及任何非初始单词的第一个字母要大写。...*/ C 语言风格 采用 C 语言风格的注释去掉不再使用但你仍想保留的代码。仍想保留是因为用户万一会改变想法,或者在调试过程想让它暂时失效。...注释哪些部分 类 类的目的、即类所完成的功能,注释出采用的不变量。 接口 设置接口的目的、它应如何被使用以及如何不被使用。...不要在源文件中保存Tab字符, 在使用不同的源代码管理工具时Tab字符将因为用户设置的不同而扩展为不同的宽度。...n 页宽 页宽应该设置为80字符。 源代码一般不会超过这个宽度, 并导致无法完整显示, 但这一设置也可以灵活调整。 在任何情况下, 超长的语句应该在一个逗号或者一个操作符后折行。

88840

.NET MSBuild 扩展编译时什么时候用 BeforeTargets AfterTargets 什么时候用 DependsOnTargets?

\src\Foo.cs" /> 这样,一个 Foo.cs 就会在编译时加入到被编译的文件列表,里面的 Foo 类就可以被使用了。...当 A 的 DependsOnTargets 设置为 B;C;D 时,那么一旦准备执行 A 时将会发生: 如果 B C D 任何一个曾经已经执行过,那么就忽略(因为已经执行过了) 如果 B C D 还有没有执行的...但是,你应该在合适的地方编写合适的属性设置。...第一步:找出哪些编译目标是真正完成编译任务的,这些编译目标需要通过 BeforeTargets 和 AfterTarget 设置扩展编译。...为了解决这样的问题,我们引入一个新的属性 _WalterlvIncludeSourceFilesDependsOn,如果有编译目标在编译过程中生成了新的源代码,那么就需要将自己加入到此属性

33520

如何快速创建 Visual Studio 代码片段?

ReSharper 已经自带了一份非常好用的代码片段工具,不过使用 ReSharper 创建出来的代码片段只能用在 ReSharper 插件。...---- Visual Studio 的代码片段管理器 Visual Studio 中代码片段管理器的入口在“工具”。你可以参照下图找到代码片段管理器的入口。...创建代码片段 你需要去 Visual Studio 的“文件”->“新建”->“新建文件打开的模板选择列表中选择“Code Snippet”。...编写一段代码 将一段最简单的代码编写到了代码编辑窗格: 1 Debug.WriteLine("[section] text"); 插入占位符 实际上,这段代码的 section 和 text 应该是占位符...比如在下图中,设置了工具提示(即我们使用此代码片段的时候 Visual Studio 如何提示我们编写这个代码片段),设置了默认值(即没有写时应该是什么值)。

34740

Visual Studio的四款代码格式化工具

前言 今天大姚给大家分享四款Visual Studio的代码格式化工具、扩展插件。大家可以在Visual Studio管理扩展或者插件市场下载安装。...Visual Studio管理扩展 插件市场 https://marketplace.visualstudio.com ReSharper ReSharper 是 Microsoft Visual...ReSharper 可以根据您的喜好重新格式化任意选定的代码块、当前文件的所有代码、目录的所有文件,甚至整个项目或解决方案。ReSharper 为所有支持的语言提供不同的格式选项。...重新格式化会影响大括号布局、空行、换行和换行、各种上下文中的空格、缩进、对齐多个结构以及您可以在 ReSharper 选项对话框微调的更多选项。...SteveCadwallader.CodeMaidVS2022 XAML Styler for Visual Studio 2022 XAML Styler 是一个 Visual Studio 扩展,它根据一组样式规则格式化 XAML 源代码

35010
领券