Member 13440673 Ответов: 1

Фильтрация данных по getuserid


Всем привет

Я пытаюсь фильтровать записи по AspUserAssignedTo, которые будут иметь то же значение, что и пользователь.Идентичность.GetUserID()


crequests ВАР = от costingrequests в дБ.viewCostingRequests
там, где стоят затраты.AspUserAssignedTo == Пользователь.Идентичность.GetUserId()
выберите costingrequests ;

сообщение об ошибке, которое я получаю, таково:;

Система.NotSupportedException: 'LINQ to Entities не распознает метод 'system.Строка GetUserId(System.Безопасность.Главный.IIdentity)' метод, и этот метод не может быть переведен в выражение хранилища'.

Что я должен сделать, чтобы решить эту проблему или как я могу правильно решить эту ситуацию?

Что я уже пробовал:

crequests ВАР = от costingrequests в дБ.viewCostingRequests
там, где стоят затраты.AspUserAssignedTo == "HOWDOIGETUSERID"
выберите costingrequests ;

Afzaal Ahmad Zeeshan

Просто сохраните значение в переменной над запросом LINQ.

1 Ответов

Рейтинг:
7

F-ES Sitecore

Непроверено, но попробуйте вот это

var userid = User.Identity.GetUserId();
var crequests = from costingrequests in db.viewCostingRequests
where costingrequests.AspUserAssignedTo == userid
select costingrequests ;