Krishna Veni Ответов: 1

Не существует сопоставления типа объекта system.collections.generic.list`1 с известным собственным типом управляемого поставщика.


Я передал список идентификаторов в качестве параметра для процедуры хранения, но когда cal storeprocedure получил ошибку
"Никакого отображения не существует из системы типов объектов.Коллекции.Generic.List`1[[System.Nullable`1[[System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]] к известному собственному типу управляемого поставщика."


var idsparam=new sqlparameter
{
  parameterName="Ids",
  value=request.ids
}
var _addressSetiingspredicate=_dbcontext.database.SqlQuery<BaseNewBusinessAdressSettingModel>(@"Exec SP_AdressSettings @Ids",idsparam).ToList<BaseNewBusinessAdressSettingModel>



Пожалуйста, помогите мне
Спасибо

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

Я передал список идентификаторов в качестве параметра для процедуры хранения, но когда cal storeprocedure получил ошибку
"Никакого отображения не существует из системы типов объектов.Коллекции.Generic.List`1[[System.Nullable`1[[System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]] к известному собственному типу управляемого поставщика."

F-ES Sitecore

Какой тип sql является параметром для SP_AdressSettings?

1 Ответов

Рейтинг:
1

OriginalGriff

Вы пытаетесь передать коллекцию целых чисел в качестве одного значения параметра SQL: вероятно, отсюда:

value=request.ids

Вы не можете этого сделать: SQL не имеет понятия массивов или списков, он работает только с базовыми типами данных: Типы данных (Transact-SQL) - SQL Server | Microsoft Docs[^]

Я понятия не имею, что ваш SP собирается с ними делать, но вы не можете отправить их в качестве коллекции!


Krishna Veni

Мне нужно передать список целых чисел в качестве параметров sp.

OriginalGriff

Вы не можете: SP не имеет типа параметра, который принимает набор целых чисел - только основные типы данных, с которыми я связался.
Вам нужно переосмыслить, что именно вы делаете.