8

In my C# development team, we want to share auto-formatting rules to respect our coding standards to have unified code formatting. I'm actually testing ReSharper and it's great but we have one rule in our standards that I can't seem to get around.

We use the HTMLTextWriter to render some HTML but we have a rule to indent the calls to reflect how they markup will be outputted.

For example :

protected override void RenderBody(HtmlTextWriter writer)
{
    writer.AddAttribute("class", "mystyle");
    writer.RenderBeginTag("div");
        writer.AddAttribute("class", "mystyle2");
        writer.RenderBeginTag("div");
            writer.Write("HELLO WORLD");
        writer.RenderEndTag();
    writer.RenderEndTag();
}

For now, when I reformat the code using ReSharper (or VS), the identation is removed.

Is there a way to add custom rule to prevent/disable reformatting around .RenderBeginTag function calls? Or is there another tool (other than ReSharper or in addition to ReSharper) that could do that?

1

1 Answer 1

9

There's no way to tell R# to not clean up a part of the code and IMO you don't want to pollute your code with R#-specific markups. A workaround would be to indent your function calls in brackets like so:

 private void RenderBody(HtmlTextWriter writer)
 {
     writer.AddAttribute("class", "mystyle");
     writer.RenderBeginTag("div");
     {
         writer.AddAttribute("class", "mystyle2");
         writer.RenderBeginTag("div");
         {
             writer.Write("HELLO WORLD");
         }
         writer.RenderEndTag();
     }
     writer.RenderEndTag();
 }

R# won't reformat these blocks.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.