如何将收集数据的收集传递到SQL Server中的存储过程?

时间:2018-10-15 06:32:42

标签: c# sql sql-server stored-procedures dapper

我有三节课:

 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);

但是我不知道如何创建用于收集数据的临时表/用户定义表。

0 个答案:

没有答案