Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Dúvida no Ex. 1 da Aula 6 - Trabalhando Melhor com as views

Quando eu crio um ActionLink, o VS dá erro após a compilação (F5), diz que o primeiro parâmetro está vazio.

@Html.ActionLink(produto.Nome, "Visualiza", new { Id = produto.Id })

Value cannot be null or empty. Nome do parâmetro: linkText

Caso eu mude o código para

@produto.Nome

@Html.ActionLink("produto.Nome", "Visualiza", new { Id = produto.Id })

Todas as informações são exibidas normalmente. O nome de cada produto, seguido de "produto.Nome".

Alguma possível solução?

4 respostas

Olá Luiz,

Poderia postar todo o código da sua view, por favor?

solução!

@model IList

@{ Layout = null; }

<!DOCTYPE html>

ID NOME QUANTIDADE @foreach (var produto in Model) { @produto.Id

@Html.ActionLink(produto.Nome, "Visualiza", new { Id = produto.Id })

@produto.Quantidade

}

@model IList

@{ Layout = null; }

<!DOCTYPE html>

ID NOME QUANTIDADE @foreach (var produto in Model) { @produto.Id

@Html.ActionLink(produto.Nome, "Visualiza", new { Id = produto.Id })

@produto.Quantidade

}

Pela data imagino que o autor do tópico já tenha encontrado uma resposta, mas para deixar registrado para futuros usuários que tenham esse problema: acredito que o problema seja quando o produto esteja vazio no banco. Em alguns testes no começo do projeto, devo ter dado F5 na página logo depois de ter adicionado algo e como ainda não tinha validação para isso, um produto vazio foi salvo lá. Na hora de pedir para mostrar o nome desse produto, um erro acontecia. Ao usar 'produto.Nome + " " ' ao invés de 'produto.Nome' funcionou, pois com o espaço em branco ali, o nome "deixa" de ser nulo.