Проблема с синтаксисом — Razor MVC4

Я пытаюсь отобразить частичное представление, используя пользовательский вспомогательный метод. Единственная проблема в том, что я не могу пройти мимо этой проблемы с синтаксисом. Набор моделей для этого файла cshtml представляет собой набор моделей IEnumerable, которые я определил как Operation. Я уверен, что это легко исправить. Вот пример того, что я вижу:

У меня есть этот блок кода:

    @using(Html.BeginForm()) {
       <div id="editor_rows">
          @foreach (var item in Model){
             Html.RenderPartial("OperationEditorRow", item);
          }
       </div>
    }

Это дает мне следующую ошибку во время выполнения:

    Unexpected "{" after "@" character. Once inside the body of a code block (@if {}, @{}, etc.) you do not need to use "@{" to switch to code.

Но если я удалю знак @ перед оператором foreach, все интерпретируется как обычный текст. Поэтому я попытался поместить @ перед Html следующим образом:

    @using(Html.BeginForm()) {
       <div id="editor_rows">
          @foreach (var item in Model){
             @Html.RenderPartial("OperationEditorRow", item);
          }
       </div>
    }

Это возвращается с ошибкой компиляции, которая говорит:

    Cannot implicitly convert type void to object

Если я запускаю проект отсюда, я получаю ошибку времени выполнения, которая говорит:

    The best overloaded method match for 'System.Web.WebPages.WebPageExecutingBase.Write(System.Web.WebPages.HelperResult)' has some invalid arguments

I' m, предполагая, что это связано с предыдущей ошибкой. Если у кого-то есть предложение для меня, пожалуйста, помогите.

6
задан Mr Jones 26 July 2012 в 12:59
поделиться