剃刀助手语法自动格式化丑。 怎么修?

所以我只是用Visual Studio格式的razor代码的方式有一个牛肉。 我一直在使用visual studio时遇到一些问题,以及如何对UI代码进行格式化,但它似乎总是做一个真正的超级糟糕的工作,业界不希望遵循。

所以这个例子看起来真正的愚蠢。 我试图找出是否有mods或方法来解决这个问题。 这看起来真的很糟糕。

有人知道这是什么一回事吗? 大声笑

@using Company.Mobile2.Enums @helper BidsByShipment(string generatedId, int bidsCount, int activeBidsCount) { if (bidsCount > 0) { <a class="Company-listview-link Company-listview-bids" href="/Shipping/Bids/ByShipment?id={0}"> @if (activeBidsCount > 0) { <text>@bidsCount (@activeBidsCount @GetStr("Company"))</text> } else { <text>@bidsCount</text> } </a> } else { <text>0 @GetStr("Company")</text> } } 

显然目前没有办法解决这个问题,这是他们在另一个相关的问题中回答的问题: 为什么Visual Studio代码格式化不能正确使用Razor标记?

C#代码格式与HTML代码分开。 如果你想要正确的缩进,那么只要放一些无用的包装标签,无论你希望有什么缩进,你会得到缩进。 这将是一个反模式。

这里是代码。 对于你定义的函数,我不确定实际上是否工作。

 @using Company.Mobile2.Enums <div> @helper BidsByShipment(string generatedId, int bidsCount, int activeBidsCount) { if (bidsCount > 0) { <a class="Company-listview-link Company-listview-bids" href="/Shipping/Bids/ByShipment?id={0}"> @if (activeBidsCount > 0) { <text>@bidsCount (@activeBidsCount @GetStr("Company"))</text> } else { <text>@bidsCount</text> } </a> } else { <text>0 @GetStr("Company")</text> } } <div> 

你有Visual Studio设置使用制表符缩进? 这揭示了一个Razor格式化错误,它插入空格而不是标签,因为它应该。 解决方法是切换到空间缩进。