Аргументы типа не могут быть выведены из использования mvc3 - PullRequest
8 голосов
/ 08 сентября 2011

Я пытаюсь использовать строго типизированное представление с методами расширений как

<% using (Html.BeginForm()) { %>
    <%: Html.ValidationSummary(true) %>
    <fieldset>
        <legend>MyUsageViewModel</legend>

        <div class="editor-label">
            <%= Html.LabelFor(model => model.test) %>
        </div>   
                              <p>
            <input type="submit" value="Save" />
        </p>
    </fieldset>
<% } %>
    <div>
    <%: Html.ActionLink("Back to List", "Index") %>
</div>

Я получаю следующую ошибку:

Аргументы типа для метода «System.Web.Mvc.Html.LabelExtensions.LabelFor (System.Web.Mvc.HtmlHelper, System.Linq.Expressions.Expression>)» не может быть выведено из использования. Попробуйте указать аргументы типа явно.

Помощь будет оценена

Ответы [ 4 ]

0 голосов
/ 12 апреля 2016

После перемещения некоторого кода в разные пространства имен я обнаружил ту же проблему, хотя я правильно обновил ссылки на модели и т. Д.Решение состояло в том, чтобы создать и выполнить « Чистое решение », а затем « Восстановить решение »

0 голосов
/ 08 августа 2013

Убедитесь, что свойства вашей модели общедоступны:

public class LocationModel
{
    public double Latitude { get; set; }
    public double Longitude { get; set; }
    public string Name { get; set; }
}
0 голосов
/ 08 августа 2013

Пример кода не показывает определение типа, который может быть проблемой. Убедитесь, что это вверху страницы. Я сейчас на своем планшете и у меня нет образца для копирования / вставки, но синтаксис должен быть @model modelType

Если это не проблема, можете ли вы добавить определение модели и полное содержание представления?

0 голосов
/ 08 сентября 2011

Кажется, у вашей модели нет свойства 'test', которое вы пытаетесь использовать в вспомогательном методе Html.LabelFor.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...