SOチャットでの議論によると:
SELECT
sprocs.ROUTINE_NAME,
parms.PARAMETER_NAME,
parms.DATA_TYPE
FROM
INFORMATION_SCHEMA.ROUTINES sprocs
LEFT OUTER JOIN INFORMATION_SCHEMA.PARAMETERS parms ON parms.SPECIFIC_NAME = sprocs.ROUTINE_NAME
WHERE
sprocs.ROUTINE_TYPE = 'PROCEDURE'
--AND PATINDEX('/*<SomeKeyToSearch>*/', sprocs.ROUTINE_DEFINITION) > 0
これにより、すべてのsprocとそのパラメーターおよびデータ型のリストが表示されます。データ型(精度、スケール、最大長など)にも細心の注意を払う必要があることに注意してください。これは、ユーザーが任意のストアドプロシージャを呼び出すために使用されるためです。このテーブル全体をC#アプリケーションで取得したら、必要な基準に基づいてグループ化/並べ替え/制限できます。上記のクエリから特定のsprocのみが返されるようにする場合は、検索可能な何らかのキーを使用して、トップレベルのコメントをsprocに追加するだけです。
幸運を。