views:

20

answers:

1

I am working on an MVC site using NHaml for the view engine.

I have a page that needs to submit HTML code as a form value and am getting the System.Web.HttpRequestValidationException thrown at me.

I want to specify the <%@ Page validateRequest="false" %> so that this page will allow this data to be submitted but am unsure on how to do this with NHaml generating the pages.

Side note on this:
The editor I was using was TinyMCE and I found that it has an option for encoding the output, that way it doesn't trigger the anti-html validation.

Of course, then your value is encoded so you have to make sure to decode it at the proper time.

See http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/encoding

+2  A: 

You may try annotating your controller action with the ValidateInputAttribute:

[ValidateInput(false)]
public ActionResult Index()
{
    // ...method body
}

This could also be done in the config file for the whole application:

<configuration>
   <system.web>
      <pages validateRequest="false" />
   </system.web>
</configuration>
Darin Dimitrov
I was aware of the global but didn't want to do that.The attribute on the controller worked, thanks.
ManiacZX
@ManiacZX, you are correct, putting this in web.config might represent a security risk because it will apply to all actions.
Darin Dimitrov