问题描述
基本问题是我需要将 LinqTosql 更改为另一种技术,该技术允许我以类似的方式将存储过程的结果映射到类。
using (var dataContext = new ProductsDataContext())
{
var linqResult = dataContext.GetProducts(productIds);
foreach (var linqItem in linqResult)
{
}
}
直到现在,我一直在考虑创建一个将结果集映射到实体的工具。为此,我意识到我从数据库中获得了足够的信息来创建它,例如:
-- SCHEMES
SELECT * FROM sys.schemas
WHERE principal_id = 1
AND schema_id <> 1
-- PROCEDURES BY SCHEME
SELECT * FROM sys.procedures
WHERE schema_id = 17
-- ParaMETERS BY PROCEDURE
SELECT REPLACE(name,'@','') name,user_type_id
FROM sys.parameters
WHERE object_id = 15339119
-- RESULT SET FROM SP
EXECUTE sp_describe_first_result_set N'EXECUTE GetProducts'
到目前为止,我有足够的信息来创建一个工具,该工具允许我将 SP 的结果转换为 c# 实体。
问题是我有一些返回 2 个表的 SP,对于这些情况,sp_describe_first_result_set 对我不起作用
LinqTosql 技术变更要求
我尝试过的替代方案
问题 1:
- 有没有我没有考虑的替代方案,可以为我们的需求提供更好的解决方案?
问题 2:
最后的考虑
- 我并不担心 SP 会返回不同的结果,因为所有 SP 的构建方式都是这样,如果我们得到肯定的响应,我们将始终拥有相同的响应结构。
非常感谢您的时间
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)