MVC ActionLink 'Невозможно преобразовать лямбда-выражение в тип' string ', потому что это не тип делегата' - PullRequest
0 голосов
/ 11 августа 2011

Здравствуйте, у меня есть MVC View, и я хотел создать ActionLink.

На мой взгляд, у меня есть:

@foreach (var item in Model.Invoices) {
        <tr>
        <td>
        @Html.ActionLink(modelItem => item.Organisation.Name, "EditInvoice(" + item.Id + ")", "InvoiceController")
        </td>
        <td>
        @Html.DisplayFor(modelItem => item.InvoiceDate)
        </td>
        <td>
        @Html.DisplayFor(modelItem => item.TotalExcludingGst)
        </td>
        </tr>
    }
        </table>

Первый параметр метода ActionLink вызывает некоторые проблемы.Я хочу установить текст в название организации.Однако он выдает ошибку «Невозможно преобразовать лямбда-выражение в тип« строка », потому что это не тип делегата».Свойство name уже является строкой, поэтому я не уверен, о чем идет речь.

Кто-нибудь знает способ обойти эту ошибку?

1 Ответ

3 голосов
/ 11 августа 2011

Просто передайте аргумент linkText в виде строки.

Я думаю, вам также нужно исправить аргументы actionName и controllerName и передать идентификатор в аргумент routeValue. Что-то вроде:

@Html.ActionLink(item.Organisation.Name, "Edit", "Invoice", new { Id = item.Id }, null)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...