【问题标题】:Servicestack ORMLite/Massive managing multiple DataTables with Expandos / Dynamic?Servicestack ORMLite/Massive 使用 Expandos/Dynamic 管理多个 DataTables?
【发布时间】:2023-03-23 09:28:01
【问题描述】:

我有一个存储过程,它根据输入返回多个具有动态类型的数据表,我无法修改或拆分它。

我其实是这样检索数据的:

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

如何处理这些多个数据表,同时保持动态检测每个表列的类型的能力?

谢谢

【问题讨论】:

  • 一定要用ORMLite吗?
  • 不,我只是在试验它,因为 Servicestack/ORMlite 看起来真的很强大。您有什么替代方案建议?
  • Dapper dot net 支持动态类型和多个结果集。我给你写一个例子。

标签: servicestack ormlite-servicestack expandoobject dynamicobject massive


【解决方案1】:

我会试试 dapper dot net。

using (var connection = new SqlConnection(@"Data Source=127.0.0.1;Initial Catalog=TEST;User ID=as;Password=;Application Name=BRUCE_WAYNE"))
using (var multi = connection.QueryMultiple("exec MY_SP 4412 '20131016' "))
{
    var resultSetOne = multi.Read().ToList();
    // Do something to determine the type returned...

    var resultSetTwo = multi.Read().ToList();
    // Do something to determine the type returned...
}

我还没有尝试过这个确切的场景,但它应该会给你一个开始的提示。如需更多信息,请参阅dapper dot net project site

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多