.net core 有没有办法在.net内核中派生存储过程的参数?

.net core 有没有办法在.net内核中派生存储过程的参数?,.net-core,sqlclient,.net-standard-2.0,.net Core,Sqlclient,.net Standard 2.0,SqlCommandBuilder.DeriveParameters在.net core中不可用(甚至在.NETCoreApp 2.0中也不可用),因此是否有任何方法可以检索.net core中存储过程的参数列表?您可以随时检查SQL Server目录视图以获取此信息-例如,使用此查询: SELECT pr.name, -- Procedure name pa.name, -- Parameter name pa.parameter_id, t

SqlCommandBuilder.DeriveParameters
在.net core中不可用(甚至在.NETCoreApp 2.0中也不可用),因此是否有任何方法可以检索.net core中存储过程的参数列表?

您可以随时检查SQL Server目录视图以获取此信息-例如,使用此查询:

SELECT  
    pr.name,     -- Procedure name
    pa.name,     -- Parameter name
    pa.parameter_id,
    ty.name,     -- Parameter datatype name 
    pa.max_length,    -- Max length (of string parameters)
    pa.precision,     -- Precision (total num of digits) for numeric parameters
    pa.scale,         -- Scale (num of digits after decimal point) for numeric parameters
    pa.is_output,            
    pa.has_default_value,    
    pa.is_readonly,
    pa.is_nullable
FROM 
    sys.procedures pr
INNER JOIN 
    sys.parameters pa ON pa.object_id = pr.object_id
INNER JOIN 
    sys.types ty ON ty.user_type_id = pa.user_type_id
这是可以扩展的——如果你对这些信息感兴趣的话,周围还有很多信息


有关SQL Server中不可或缺的目录视图的更多信息和详细信息,请参见

,由于我们公司的政策,用于web代码的SQL帐户没有访问这些系统对象(过程、参数、类型等)的权限。我们有很多数据库服务器,所以用您建议的t-sql创建存储过程并部署到所有DB服务器并不是一个好的选择。那么我们有没有办法在web代码(cry)中实现它?那么我们有没有办法在web代码(cry)中实现它?没有,很遗憾,这些信息存储在SQL Server中,可以通过这些目录视图访问。如果你不能检查这些,恐怕你就太倒霉了……我只是想知道
SqlCommandBuilder.DeriveParameters
(full.net framewok)是如何处理的。把它移植到.net标准有什么问题吗?我们正在将我们的一些库移植到.NETCore,但这似乎不是一件容易的工作:(它将在NetStandard2.1中提供,我正在玩弄它的日常构建。感谢上帝,它与我的代码完美配合