C# Razor cshtml-使用对象作为参数的帮助器方法调用中出现错误的制表符/缩进

C# Razor cshtml-使用对象作为参数的帮助器方法调用中出现错误的制表符/缩进,c#,razor,auto-indent,C#,Razor,Auto Indent,在我的项目的razor视图(Visual Studio 2015中的C#)中,我在文件顶部有几个助手方法。再往下看,自动格式化在方法调用中给了我错误的缩进,如下所示: <div> @SomeHelperMethodCall( new SomeObjectToPass( { SomeProperty = "Some Value", AnotherProperty = "Another value" } ) </div> @SomeHelperMe

在我的项目的razor视图(Visual Studio 2015中的C#)中,我在文件顶部有几个助手方法。再往下看,自动格式化在方法调用中给了我错误的缩进,如下所示:

<div>
    @SomeHelperMethodCall( new SomeObjectToPass(
{
    SomeProperty = "Some Value",
    AnotherProperty = "Another value"
} )
</div>

@SomeHelperMethodCall(新建SomeObjectToPass(
{
SomeProperty=“Some Value”,
AnotherProperty=“另一个值”
} )
我想要的是:

<div>
    @SomeHelperMethodCall( new SomeObjectToPass(
    {
        SomeProperty = "Some Value",
        AnotherProperty = "Another value"
    } )
</div>

@SomeHelperMethodCall(新建SomeObjectToPass(
{
SomeProperty=“Some Value”,
AnotherProperty=“另一个值”
} )
如果其中一个属性也是新实例化的对象,并且丢失了两个缩进,则情况会变得更糟:

        <div>
            @SomeHelperMethodCall( new SomeObjectToPass(
        {
            SomeProperty = "Some Value",
            AnotherProperty = "Another value",
            SomeObjectProperty = new ObjectName() 
{
    PropertyName = "value"
}
        } )
        </div>

@SomeHelperMethodCall(新建SomeObjectToPass(
{
SomeProperty=“Some Value”,
AnotherProperty=“另一个值”,
SomeObjectProperty=newObjectName()
{
PropertyName=“值”
}
} )
这是一个bug吗?我已经查看了代码格式的选项,但在方法调用中找不到任何处理新对象的选项,它们的属性在自己的行中。我已经查看了C#和HTML的选项

我没有使用任何像ReSharper这样的花哨插件,只使用普通的VS2015。即使我自动格式化整个文档,问题仍然存在


另外,我不是100%确定,但文件本身中是否存在@helpers(而不是部分)似乎与出现此问题有关。

Razor缩进确实很挑剔,但如果它向后移动了那么多,听起来好像上面有一个未关闭的标记(无论是C#还是HTML)我查看了该文件,在上述问题的第一个实例之前没有发现任何问题(碰巧在一个帮助程序(调用另一个帮助程序)中,如果这意味着什么的话)。这些都是在HTML的任何行之前。该帮助程序中也没有HTML标记,并且所有大括号都已正确关闭。之后它也可能是一个丢失的关闭标记-但是,如果看不到文件的内容,我只能推测这是该文件膨胀到8以上的问题在过去的几个月里有000行,但我会记住未关闭的标记,同时我会尝试找出这一行。谢谢。您是否尝试折叠标记以验证是否缺少关闭标记?