Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Передать sum в ViewBag как float / 15 сообщений из 15, страница 1 из 1
02.02.2014, 17:44
    #38546425
kim-kong
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
Нужно передать во вью вот такую сумму, и использовать ее во вью как float
Код: c#
1.
2.
3.
4.
ViewBag.Sum = (from il in db.IngLists
                          where (il.ArticleId == id)
                          group il by il.ArticleId
                          into i select new NewIngredient { Amount = i.Sum(il => il.amount) }).ToString();


как использовать int, а не клас NewIngredient ?
...
Рейтинг: 0 / 0
02.02.2014, 20:15
    #38546519
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
kim-kong, попробуй так:
Код: c#
1.
2.
3.
4.
5.
ViewBag.Sum = (from il in db.IngLists
                          where il.ArticleId == id
                          group il by il.ArticleId
                          into i
                          select i.Sum(il => il.amount)).SingleOrDefault();
...
Рейтинг: 0 / 0
02.02.2014, 20:16
    #38546520
Boneshock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
kim-kong,
помоему тут лишний код в linq'е, разве вот так не проще?

Код: c#
1.
ViewBag.Sum = db.IngLists.Where(x => x.ArticleId == id).Sum(x => x.amount);
...
Рейтинг: 0 / 0
02.02.2014, 20:31
    #38546524
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
Boneshockпомоему тут лишний код в linq'е, разве вот так не проще?

Код: c#
1.
ViewBag.Sum = db.IngLists.Where(x => x.ArticleId == id).Sum(x => x.amount);


Кстати да! :) И итоговый SQL запрос будет проще.
...
Рейтинг: 0 / 0
02.02.2014, 20:33
    #38546525
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
bazileBoneshockпомоему тут лишний код в linq'е, разве вот так не проще?

Код: c#
1.
ViewBag.Sum = db.IngLists.Where(x => x.ArticleId == id).Sum(x => x.amount);



Кстати да! :) И итоговый SQL запрос будет проще.

и, наконец, корректный вариант:

Код: c#
1.
db.IngLists.Where(x => x.ArticleId == id).Sum(x => (int?)x.amount);



ппц...
...
Рейтинг: 0 / 0
02.02.2014, 20:33
    #38546526
kim-kong
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
Boneshock,

спасибо, все никак не освою linq
...
Рейтинг: 0 / 0
02.02.2014, 21:16
    #38546561
Boneshock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
hVostt
Код: c#
1.
db.IngLists.Where(x => x.ArticleId == id).Sum(x => (int?)x.amount);



ппц...

ну и к чему тут лишнее приведение к (int?), м?
...
Рейтинг: 0 / 0
02.02.2014, 21:19
    #38546564
kim-kong
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
hVostt,

Да, так намного лучше.
...
Рейтинг: 0 / 0
02.02.2014, 21:20
    #38546565
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
Зачем тут ViewBag?
...
Рейтинг: 0 / 0
02.02.2014, 21:22
    #38546567
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
МСУЗачем тут ViewBag?
...
Рейтинг: 0 / 0
02.02.2014, 21:23
    #38546570
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
Boneshockну и к чему тут лишнее приведение к (int?), м?

чтоб не отхватить исключение, если там нечего суммировать
...
Рейтинг: 0 / 0
02.02.2014, 21:23
    #38546571
Boneshock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
/popcorn
...
Рейтинг: 0 / 0
02.02.2014, 21:26
    #38546578
Boneshock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
hVosttBoneshockну и к чему тут лишнее приведение к (int?), м?

чтоб не отхватить исключение, если там нечего суммировать
не понял, имеешь ввиду если поле amount null? так Sum нормально суммирует и nullable значения
к тому же, человек просил на выходе int , а не int?
...
Рейтинг: 0 / 0
02.02.2014, 21:28
    #38546580
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
Boneshockне понял, имеешь ввиду если поле amount null? так Sum нормально суммирует и nullable значения
к тому же, человек просил на выходе int , а не int?

если нет ни одного элемента, при чем тут amount null? мозги включаем

если человеку нужен int, а не int?, то он добавит ?? 0 и получит свой int.
...
Рейтинг: 0 / 0
02.02.2014, 21:40
    #38546589
kim-kong
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передать sum в ViewBag как float
hVostt,

я очепятался, мне нужен (float?)
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Передать sum в ViewBag как float / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]