Как передать сбор данных в хранимую процедуру в SQL Server? - PullRequest
0 голосов
/ 15 октября 2018

У меня есть три класса:

 public class Variant : IHaveId
    {
        public int Id { get; set; }
        public int VersionId { get; set; }       

    }

и

public class ElementVariant:IHaveId
    {
        public int Id { get; set; }
        public int VariantId { get; set; }        
    }

и

 public class Translation : IHaveId
    {
        public int Id { get; set; }
        public string LanguageCode { get; set; }
        public int ElementVariantId { get; set; }
    }

Это моя коллекция с внутренним объектом класса

public class collectionOfVariant()
{
        public int Id { get; set; }
        public int VersionId { get; set; } 
        public List<ElementVariant> ElementVariant{ get; set; }
        public List<Translation> Translation { get; set; }
}

Я знаю, что мы можем передать объект набора данных, используя таблицу пользовательских типов для хранения процедуры.Но если я хочу знать, как мы можем передать данные с данными справочной таблицы, что означает, я хочу передать данные как collectionOfVariant формат класса.

Я пробовал это следующим образом

List<collectionOfVariant> variantDetailsList = collectionOfVariant.ToList();// list of variant data collection 

 pars = new DynamicParameters();
            pars.Add("@VariantData", dtOperationIndicatorSource.AsTableValuedParameter("dbo.temptable or dbo.userdefinetable"));// not sure how to write a temp table for this scenario 
 operatePopUpSP = "dbo.SPMaintainPopUpPlaceholderVersion";
ExecSproc<Version>(operatePopUpSP, pars, new Version()).ConfigureAwait(false);

Но я не знаю, как создать временную таблицу / пользовательскую таблицу для сбора данных сбора.

...