C# 解码html标记,以便在返回到服务器(更具体地说是控制器)时可以读取它

C# 解码html标记,以便在返回到服务器(更具体地说是控制器)时可以读取它,c#,html,asp.net-mvc-3,html-encode,C#,Html,Asp.net Mvc 3,Html Encode,我的引擎是Aspx 如何对文本框中的html标记进行解码/编码。 我使用html标记使其更具可读性。 我尝试了ValidationRequest和HtmlCode(freqQuestion.Answer),但没有成功。 我只是一直收到同样的信息 “/Administrator”应用程序中出现服务器错误 潜在危险的请求。从中检测到表单值 客户(问题回答=“…ics电话:123-456-7890 描述:请求验证已检测到潜在的危险 客户端输入值,请求的处理已中止。 此值可能表示有人试图破坏您的计算机的

我的引擎是Aspx

如何对文本框中的html标记进行解码/编码。 我使用html标记
使其更具可读性。 我尝试了ValidationRequest和HtmlCode(freqQuestion.Answer),但没有成功。 我只是一直收到同样的信息

“/Administrator”应用程序中出现服务器错误

潜在危险的请求。从中检测到表单值 客户(问题回答=“…ics电话:
123-456-7890 描述:请求验证已检测到潜在的危险 客户端输入值,请求的处理已中止。 此值可能表示有人试图破坏您的计算机的安全性 应用程序,例如跨站点脚本攻击。允许页面 覆盖应用程序请求验证设置,设置 httpRuntime配置中的requestValidationMode属性 部分至requestValidationMode=“2.0”。示例:。设置此值后,您可以 通过在中设置validateRequest=“false”禁用请求验证 页面指令或在配置部分。但是,它是 强烈建议应用程序显式检查所有输入 在本例中。有关更多信息,请参阅


ValidateRequest指令不适用于MVC,因为与WinForms不同,.aspx文件不是接收请求的实体。控制器是。因此,控制器是您应该禁用验证的地方。只需应用[ValidateInput(false)]属性设置为您的操作或整个控制器,运行时将传递您的标记。

仅供参考,
问题描述:
应该是
问题描述:
应该是
。总之,我添加了
问题描述
,并添加了
id=“QuestionDescription>“
输入。主要区别是什么?只是好奇不多。只是添加了一个真正的标签。当你点击文本时,它会自动聚焦输入。每个网站都应该有一个友好的功能…@Jeremy:没有太多保护,任何人都可以窥视历史:-)@杰里米:说这句话可能会引起人们对电话号码的更多关注,而不仅仅是静静地说
View Page

  <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" validateRequest="false" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>


<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    EditFreqQuestionsUser
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<script type="text/javascript">
    $(document).ready(function () {
        $("#freqQuestionsUserUpdateButton").click(function () {
            $("#updateFreqQuestionsUser").submit();
        });
    });
</script>
<h2>Edit Freq Questions User </h2>

<%Administrator.DarkstarAdminProductionServices.FreqQuestionsUser freqQuestionsUser = ViewBag.freqQuestionsUser != null ? ViewBag.freqQuestionsUser : new Administrator.DarkstarAdminProductionServices.FreqQuestionsUser(); %>
<%List<string> UserRoleList = Session["UserRoles"] != null ? (List<string>)Session["UserRoles"] : new List<string>(); %>
<form id="updateFreqQuestionsUser" action="<%=Url.Action("SaveFreqQuestionsUser","Prod")%>" method="post">
    <table> 
        <tr>
            <td colspan="3" class="tableHeader">Freq Questions User Details <input type ="hidden" value="<%=freqQuestionsUser.freqQuestionsUserId%>" name="freqQuestionsUserId"/> </td>
        </tr>
         <tr>
            <td colspan="2" class="label">Question Description:</td>
            <td class="content">
                <input type="text" maxlength="2000" name="QuestionDescription" value="<%=freqQuestionsUser.questionDescription%>" />
            </td>
        </tr>
         <tr>
            <td colspan="2" class="label">QuestionAnswer:</td>
            <td class="content">
                <input type="text" maxlength="2000" name="QuestionAnswer" value="<%=Server.HtmlDecode(freqQuestionsUser.questionAnswer)%>" />
            </td>
        </tr>
        <tr>
            <td colspan="3" class="tableFooter">
                    <br />
                    <a id="freqQuestionsUserUpdateButton" href="#" class="regularButton">Save</a>
                    <a href="javascript:history.back()" class="regularButton">Cancel</a>
            </td> 
        </tr>
    </table>
</form>
</asp:Content>
  [AuthorizeAttribute(AdminRoles = "EditFreqQuestionsUser")]
    public ActionResult SaveFreqQuestionsUser(string QuestionDescription, string QuestionAnswer)
    {
        Guid freqQuestionsUserId = Request.Form["freqQuestionsUserId"] != null ? new Guid(Request.Form["freqQuestionsUserId"]) : Guid.Empty;


        //load agreement eula ref
        AdminProductionServices.FreqQuestionsUser freqqQuestionsUser = Administrator.Models.AdminProduction.FreqQuestionsUser.LoadFreqQuestionsUser(freqQuestionsUserId, string.Empty, string.Empty)[0];

        freqqQuestionsUser.questionDescription = QuestionDescription;
        freqqQuestionsUser.questionAnswer = QuestionAnswer;

        //save it
               Administrator.Models.AdminProduction.FreqQuestionsUser.addFreqQuestionsUser(freqqQuestionsUser);

        return RedirectToAction("SearchFreqQuestionsUser", "Prod", new { FreqQuestionsUserId = freqQuestionsUserId });
    }