Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# под Web, ASP.NET

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
g8hyp
1 / 1 / 0
Регистрация: 01.06.2009
Сообщений: 38
#1

Про Html.ActionLink - C# ASP.NET

14.08.2013, 13:16. Просмотров 1602. Ответов 1
Метки нет (Все метки)

Читаю книгу Сандерса и Фримана по MVC3, они предлагают такой код:
В представлении:
C#
1
2
3
4
5
6
@model IEnumerable<SportStore.Domain.Entities.Product>
...
@foreach (var item in Model) {
...
<td>@Html.ActionLink(item.Name, "Edit", new { item.Id })</td>
...
В контролере:
C#
1
2
3
4
5
6
public ViewResult Edit(int productId)
{
  Product product = repository_.Products
  .FirstOrDefault(p => p.Id == productId);
  return View(product);
}
и класс Product для полной ясности:
C#
1
2
3
4
5
6
7
8
public class Product
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
        public decimal Price { get; set; }
        public string Category { get; set; }
    }
При нажатии на ссылку вылетает ошибка:
C#
1
Словарь параметров содержит запись со значением NULL для параметра "productId" типа "System.Int32", не допускающего значение NULL, для метода "System.Web.Mvc.ViewResult Edit(Int32)" в "SportStore.WebUI.Controllers.AdminController".
Как я понимаю, object не преобразуется в int. Или я не прав? И как это исправить?
Заранее спасибо за ответ.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.08.2013, 13:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Про Html.ActionLink (C# ASP.NET):

Про тег SELECT, про позиционирование на конкретном значении. - C# ASP.NET
Привет всем! Помогите мне, может кто сталкивался с таким. Ситуация: Выпадающий список - выбрали одно из значений - дальше переходим на...

.NET 4.x Как заблокировать windwos (нет, я не про вирус, а про win+l) - C#
Возможно такой вопрос уже задавали такой вопрос, но всё же как заблокировать компьютер (вызвать экран блокировки как win+l), а то везде...

Парс html строки с использованием Html Agility Pack - C#
Есть строка: &lt;ul&gt;&lt;li&gt;&lt;a href=&quot;./pm.php?action=inbox&quot; title=&quot;Всего сообщений: 0&quot;&gt;Входящие&lt;/a&gt;&lt;span class=&quot;tliul&quot;&gt;:&lt;/span&gt; &lt;span...

Что быстрее HTML или Response.Write (HTML) - C# ASP.NET
народ подскажите что работает быстрее: голый HTML или тот же самый HTML но через Response.Write() ? или вообще никакой разницы нет. ...

.NET 4.x Парсинг HTML. Получение "правильного" html - C#
Приветствую. Очевидно, парсю странички. Бигдата, разные сайты. Необходимо без использования webbrowser получить код с выполненными...

Про сети - C#
Решил по изучать работу с сетью, подскажите че почитать... а то чет нече толкового не найду...

1
g8hyp
1 / 1 / 0
Регистрация: 01.06.2009
Сообщений: 38
21.08.2013, 20:06  [ТС] #2
Разобрался.
Меняем:
C#
1
2
3
4
5
6
@model IEnumerable<SportStore.Domain.Entities.Product>
...
@foreach (var item in Model) {
...
<td>@Html.ActionLink(item.Name, "Edit", new { item.Id })</td>
...
На:
C#
1
2
3
4
5
6
@model IEnumerable<SportStore.Domain.Entities.Product>
...
@foreach (var item in Model) {
...
<td>@Html.ActionLink(item.Name, "Edit", new { productId = item.Id })</td>
...
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.08.2013, 20:06
Привет! Вот еще темы с ответами:

Как через Html.ActionLink передать значение в другом Html-элементе в MVC-приложении? - C# MVC
как через Html.ActionLink передать значение в другом Html-элементе в MVC-приложении? Есть форма: &lt;input id=&quot;FileUpload&quot; type=&quot;file&quot;...

Правильность написания html.raw() в html.Actionlink - C# MVC
Если пишу @Html.ActionLink(Html.Raw(post.Description), &quot;Details&quot;, &quot;Post&quot;, new { id = post.Id, user = post.UserId }, null) то...

Вопрос про ActionLink - C# MVC
У меня есть index.aspx в нем выводятся данные из бд, в контроллере есть метод ActionResult Index() который собственно и выводит данные...

@Html.ActionLink - C# MVC
Как с помощью Html.ActionLink передавать параметр?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru