gpt4 book ai didi

visual-studio-2010 - 内容的 Razor 格式

转载 作者:行者123 更新时间:2023-12-04 21:46:00 24 4
gpt4 key购买 nike

我注意到 Razor <text>标签拒绝遵循任何格式约定。例如,格式化 cshtml 时文档,我最终得到如下代码:

@MyHelper.MyMethod(@<div>
<p>Hello world</p>
</div>)

@MyHelper.MyMethod(@<text>
<p>Hello world</p>
</text>)

请注意,这也不是特定于 Razor 模板函数, <text>任何地方的块都会做同样的事情。

客户端 HTML 标记(及其内容),例如 <div>遵循我指定的格式样式,但是无论我在哪里添加(或删除) <text>标签特定选项...中的元素,没有效果。预期的结果是 <text>元素内容的格式类似于 <div>元素内容,在前面的例子中。

是否有任何技巧或变通方法可以在 <text> 上强制执行相同的格式样式元素作为其他块级客户端 HTML 元素的元素( <div><section> 等)

我在 Razor 语言中看到过其他类似的格式问题,例如 herehere ,所以这并非没有先例,而且似乎可能没有解决方案。无论哪种方式,也许有人遇到了修复。

这是一个 Razor 2.X 网站,在 VS 2010 中构建

附录
(我已经厌倦了这一点。)

或许这个问题在2012年已经解决了;不知道,还没更新。然而, <text>块, @ -prefixed 块,更多的格式不好。

再比如,这次是 @ - 前缀块(结构等)
@foreach (var foo in bar) {
<div>@(foo.A)</div>
<div>@(foo.B)</div>
@foreach (var qux in foo.C) {
<div>@(qux.D)</div>
<div>@(qux.E)</div>
}
}

看起来或多或少不错,对吧?是的,不幸的是,它实际上在语法上是无效的。 @ -内部前缀 foreach不允许,因为它发生在外部块(外部 foreach)的不间断范围内。

解决方案?省略 @从内部 foreach .当我格式化时会发生什么?
@foreach (var foo in bar) {
<div>@(foo.A)</div>
<div>@(foo.B)</div>
foreach (var qux in foo.C) {
<div>@(qux.D)</div>
<div>@(qux.E)</div>
}
}

太棒了,失去了内部缩进。便便。

好的,那些 <text>怎么样?块,它们一定对某些东西有用,对吧?当然,包装外部 foreach 的内容阻止 <text>堵塞。现在,就 Razor 而言, @ -前缀内部 foreach在语法上是有效的。
@foreach (var foo in bar) {
<text>
<div>@(foo.A)</div>
<div>@(foo.B)</div>
@foreach (var qux in foo.C) {
<div>@(qux.D)</div>
<div>@(qux.E)</div>
}
</text>
}

好的;然而,虽然这行得通,但它确实体现了我原来问题的问题。现在 <text>块内容不遵守缩进。为什么我们不能拥有:
@foreach (var foo in bar) {
<text>
<div>@(foo.A)</div>
<div>@(foo.B)</div>
@foreach (var qux in foo.C) {
<div>@(qux.D)</div>
<div>@(qux.E)</div>
}
</text>
}

或者更好的是,拧紧 <text>阻止和许可 @ - 其他范围内的前缀结构:
@foreach (var foo in bar) {
<div>@(foo.A)</div>
<div>@(foo.B)</div>
@foreach (var qux in foo.C) {
<div>@(qux.D)</div>
<div>@(qux.E)</div>
}
}

tl;博士

叫我肛门,叫我疯子。没关系;据我所知,无论我的格式设置如何,该产品都无法正常工作。

有谁知道如何强制 VS 2010 Razor 格式按照描述的方式运行? (或者,这只是我强制症的白日梦吗?)

最佳答案

一种解决方法是:

  • 右键单击 cshtml文件
  • 打开...
  • 选择 XML (Text) Editor
  • CTRL + E, D
  • 关于visual-studio-2010 - <text> 内容的 Razor 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14361308/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com