1

首先我要感谢你拯救了哥谭。

我正在调用存储过程

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

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

不幸的是,我无法更改底层 SPROC 并给它们一个固定的返回类型。

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

谢谢...蝙蝠侠!

4

1 回答 1

1

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

我刚刚使用了“大规模”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();

顺便说一句,我会发布另一个问题,因为我的存储过程返回 2 个数据表。这是链接:Servicestack ORMLite/Massive 使用 Expandos / Dynamic 管理多个 DataTables?

高温高压

于 2013-10-17T09:30:38.763 回答