Страница, на которой я работаю, отображает содержимое из базы данных в поле ввода только для чтения. Моя проблема заключается в том, что он отображает любые специальные символы в виде html-кода (то есть: & отображается как &). Как вы получите код для отображения правильно?Как сделать Razor не отображать специальные символы как html
Я использую QuerySingle для подключения к базе данных, не знаю, имеет ли это значение. Я новичок в использовании Razor. Буду признателен за любую оказанную помощь.
код в вопросе:
var queryloan = "SELECT * FROM loans WHERE LoanId = @0";
var queryloandata = db.QuerySingle(queryloan, queryformstatus_submitted.doc_loanid);
<form class="jotform-form" action="[email protected](isadmin)&[email protected](loanid)" method="post" name="form_30905105572145" id="30905105572145" accept-charset="utf-8">
<input type="hidden" name="formID" value="30905105572145" />
<input type="hidden" name="doc_id" value="@doc_id" />
<div class="form-all">
<ul class="form-section">
<li id="cid_3" class="form-input-wide">
<div class="form-header-group">
<h2 id="header_3" class="form-header">
Borrower Sources & Uses Summary
</h2>
@if (queryformstatus_submitted.doc_approval == "Pending Approval" || queryformstatus_submitted.doc_approval == "Approved")
{
<text><br />
<br />
<div class="error">
This form has already been submitted and cannot be edited. It is for reference only.</div></text>
}
@if(userid != queryformstatus_submitted.doc_userid){
<text><br/><br/><div class="error">You may not edit this form. It is for reference only.</div></text>
}
</div>
</li>
<li class="form-line" id="id_4">
<label class="form-label-left" id="label_4" for="input_4">
1. Property Name:
</label>
<div id="cid_4" class="form-input">
<input type="text" class=" form-textbox" id="input_4" name="q4_1Property" size="40" value="@Helpers.checkEmptyPreFill(queryinputvalue,"q4_1Property",queryloandata.LoanName)"/>
</div>
</li>
Я не уверен, но я считаю, что это может быть что-то в этой вспомогательной функции, которая вызывает HTML код:
@helper checkEmptyPreFill(IEnumerable<dynamic> queryinputvalue, string field_id, string defaultval, int cloned = 0) {
var reqValue = queryinputvalue.FirstOrDefault(r => r.field_name.Equals(field_id));
var return_value = "";
if(reqValue != null){
return_value = reqValue.field_data;
} else {
return_value = defaultval;
}
if(cloned == 1){
return_value = "";
}
@return_value
}
Я предполагаю, что вы хотите отобразить & amp; as &. Вы пытались использовать [HtmlDecode] (https://msdn.microsoft.com/en-us/library/7c5fyk1k%28v=vs.110%29.aspx)? –
Да Я пробовал HtmlDecode. Я попытался использовать переменную во входном значении (то есть: WebUtility.HtmlDecode (queryloandata.LoanName)), но он ничего не делает. Есть что-то, что мне не хватает? Я просто пытаюсь декодировать его в неправильном месте? –
Я получил его для работы как этот '' где 'var htmlEncodedString =" Tom & Jerry ";' –