2009-12-04 4 views
0

По причинам, которые в настоящее время неизвестны, в строго типизированном частичном представлении, которое обрабатывает редактирование, которое было создано с использованием авто-леса для шаблона «Редактировать», отказывается отображать любые данные в текстовом поле.Редактировать текстовое поле в приложении ASP.Net MVC не работает?

Но строка заголовка testtext отображает релевантное содержимое.

<% using (Html.BeginForm()) { 

try 
{ 
%> 

<fieldset> 
<legend>Fields</legend> 

<p> 

<% 
string titletext = Model.Title.ToString(); 
%> 

<%= titletext %> 

<label for="Title">Title:</label> 
<%= Html.TextBox("Title", Model.Title) %> 
<%= Html.ValidationMessage("Title", "*") %> 

</p> 
+0

Refactored имя столбца таблицы базы данных QuestionTitle и переработан частичное представление

\t <ярлык для = "QuestionTitle"> Название: <% = Html.TextBox ("QuestionTitle", Model.QuestionTitle)%> <% = Html.ValidationMessage ("QuestionTitle", "*")%>

и теперь это работает. Благодаря! (Все еще не могу понять, почему конфликты Model.Title и Page.Title хотя бы!) –

ответ

1

Убедитесь, что текст вы положили в текстовое поле не содержит HTML-теги - попробуйте Html.Encode текст.

В MVC 2 это обрабатывается автоматически.

Редактировать: Не является ли свойство Model.Title конфликтом с переменной уровня страницы?

+0

Пробовал <% = Html.TextBox («Заголовок», Html.Encode (Model.Title))%> и остается пустым. Кстати, Заголовок содержит чисто текст. –

+0

Не является ли свойство Model.Title конфликтом с переменной уровня страницы? - Не уверен, что вы имеете в виду? –

+0

Попробуйте иначе назвать свойство Title модели. Просто попробуйте MyTitle, например. В asp.net mvc некоторые имена определяются по соглашению, может быть конфликт там. – twk

Смежные вопросы