SqlList <dynamicpoco>从存储过程</dynamicpoco>返回动态类型结构

时间:2013-10-16 10:21:55

标签: c# servicestack ormlite-servicestack

首先,我要感谢您保存Gotham。

我正在调用存储过程

    dbConn.SqlList<UNKNOWN>("exec MY_SP 122254")

但我不知道从SP返回的数据类型,因为它可以根据输入参数值进行更改。

不幸的是,我无法更改基础SPROC并为其提供固定的返回类型。

有人知道如何在不知道其结构的情况下映射(比如说)“通用对象”吗?

感谢蝙蝠侠!

1 个答案:

答案 0 :(得分:1)

即使蝙蝠侠没出现,我也是自己找到的。下次我打开BatSignal

我刚刚使用了“Massive”Orm(下面的链接),它使用ExpandoObjects可以很好地工作,并在运行时将数据映射到类型。

https://github.com/robconery/massive

    var massiveModel = new DynamicModel(dbConn.ConnectionString);
    var connection = new SqlConnection(@"Data Source=127.0.0.1;Initial Catalog=TEST;User ID=as;Password=;Application Name=BRUCE_WAYNE");
        connection.Open();
    var massiveConnection = connection;
    var tmp = massiveModel.Query("exec MY_SP 4412 '20131016' ", MassiveConnection).ToList();

BTW我会发布另一个问题因为我的存储过程返回了2个数据表。这是链接:Servicestack ORMLite/Massive managing multiple DataTables with Expandos / Dynamic?

HTH