WCF WebInvoke ResponseFormat

Это работает для меня:

@section SomeSection {
   @if (!Model.ReadOnly)
   {

   }
}

По существу переворачивается там, где находится условное. По сути, это приводит к пустому разделу, если Model.ReadOnly верно.


Обновление:

Итак, как насчет того, чтобы переместить этот раздел в PartialView и сделать что-то вроде:

@Html.Partial("MyAction")

в вашем View, а затем позволить MyAction вернуть вам соответствующий PartialView на основе значения ReadOnly? Нечто подобное:

public PartialViewResult MyAction()
{
   ...

   // determine readonly status - could have passed this to the action I suppose    
   if (ReadOnly)
   {
      return PartialView("TheOneThatDefinesTheSection");
   }
   else
   {
      return PartialView("TheOneThatDoesNotDefineTheSection");
   }
}

Похоже, что это будет работать просто отлично.

5
задан Mark Seemann 27 February 2012 в 09:27
поделиться

1 ответ

Нет, я не думаю, что вы можете делать это программно во время выполнения. Что вы можете сделать, конечно, если предоставить две отдельные конечные точки из вашей службы - одна возвращает XML, другая возвращает JSON, а затем программно выбирать, какую из них вызывать из вашего клиентского приложения.

Marc

Обновление: как правильно указывает Стив Микелотти, это автоматическое переключение между JSON и XML теперь может быть достигнуто в WCF 4.0. WCF 4.0 имеет улучшенную поддержку REST, которая также включает функцию выбора сообщения формата на основе принимаемых заголовков HTTP.

Дополнительные сведения о новых функциях WCF 4.0 см .: Введение разработчика в WCF 4.0

6
ответ дан 14 December 2019 в 01:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: