NЗависимые методы / типы запросов в сборке фреймворка, используемой другими сборками / типами. - PullRequest
2 голосов
/ 02 апреля 2010

Я пытаюсь определить, какие типы или методы в базовой сборке фреймворка используются другими сборками в прикладной системе. Кажется, я не могу найти прямой запрос для этого.

Что мне нужно сделать, это сначала определить, какие сборки непосредственно используют сборку фреймворка, а затем вручную перечислить их во втором запросе

SELECT TYPES FROM ASSEMBLIES "IBM.Data.DB2"
WHERE IsDirectlyUsedBy "ASSEMBLY:FirstDirectUsedByAssebmly"
OR IsDirectlyUsedBy "ASSEMBLY:SecondDirectUsedByAssebmly"
OR IsDirectlyUsedBy "ASSEMBLY:ThirdDirectUsedByAssebmly"
OR IsDirectlyUsedBy "ASSEMBLY:FourthDirectUsedByAssebmly"

Есть ли лучший / более быстрый способ сделать запрос?

Кроме того, результаты запроса ориентированы только на совпадающие типы. Экспортированный график или матрица зависимостей показывает только их детали. Я не знаю, как отобразить график, который показывает эти типы или методы плюс показывают зависимые типы / методы из других сборок, которые их потребляют?

UPDATE

Я не могу использовать запрос типа

SELECT METHODS/TYPES WHERE IsPublic AND !CouldBeInternal

потому что результаты возвращают очень странные результаты использования запутанных типов в сборке IBM.Data.DB2.

SELECT TYPES
FROM ASSEMBLIES "IBM.Data.DB2"
WHERE IsPublic AND !CouldBeInternal


48 items 

--------------------------------------------------+--------------+
types                                             |# IL instructi|
                                                  |ons           |
--------------------------------------------------+--------------+
IBM.Data.DB2.ae+m                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+x                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+f                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+ac                                |0             |
                                                  |              |
IBM.Data.DB2.ae+aa                                |0             |
                                                  |              |
IBM.Data.DB2.ae+u                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+z                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+e                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+b                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+g                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+ab                                |0             |
                                                  |              |
IBM.Data.DB2.ae+h                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+r                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+p                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+ad                                |0             |
                                                  |              |
IBM.Data.DB2.ae+i                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+j                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+t                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+af                                |0             |
                                                  |              |
IBM.Data.DB2.ae+k                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+l                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+y                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+a                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+q                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+n                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+d                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+c                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+ae                                |0             |
                                                  |              |
IBM.Data.DB2.ae+o                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+w                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+s                                 |0             |
                                                  |              |
IBM.Data.DB2.ae+v                                 |0             |
                                                  |              |
IBM.Data.DB2.DB2Command                           |2 527         |
                                                  |              |
IBM.Data.DB2.DB2Connection                        |3 246         |
                                                  |              |
IBM.Data.DB2.DB2DataAdapter                       |520           |
                                                  |              |
IBM.Data.DB2.DB2DataReader                        |4 220         |
                                                  |              |
IBM.Data.DB2.DB2_UDF_PLATFORM                     |0             |
                                                  |              |
IBM.Data.DB2.DB2Enumerator+DB2EnumInstance        |19            |
                                                  |              |
IBM.Data.DB2.DB2Enumerator+DB2EnumDatabase        |15            |
                                                  |              |
IBM.Data.DB2.DB2Error                             |98            |
                                                  |              |
IBM.Data.DB2.DB2ErrorCollection                   |55            |
                                                  |              |
IBM.Data.DB2.DB2Exception                         |185           |
                                                  |              |
IBM.Data.DB2.DB2Parameter                         |1 853         |
                                                  |              |
IBM.Data.DB2.DB2ParameterCollection               |1 383         |
                                                  |              |
IBM.Data.DB2.DB2RowUpdatedEventHandler            |0             |
                                                  |              |
IBM.Data.DB2.DB2RowUpdatedEventArgs               |14            |
                                                  |              |
IBM.Data.DB2.DB2Type                              |0             |
                                                  |              |
IBM.Data.DB2.DB2XmlReader                         |500           |
                                                  |              |
--------------------------------------------------+--------------+
Sum:                                              |14 635        |
                                                  |              |
Average:                                          |304.9         |
                                                  |              |
Minimum:                                          |0             |
                                                  |              |
Maximum:                                          |4 220         |
                                                  |              |
Standard deviation:                               |868.22        |
                                                  |              |
Variance:                                         |753 808       |
                                                  |              |
--------------------------------------------------+--------------+

Наш код не использует эти типы и перечисляет напрямую.

1 Ответ

0 голосов
/ 05 апреля 2010

Этот запрос возвращает методы (соответственно типы), которые являются открытыми и не могут быть внутренними. Следовательно, он возвращает методы / типы, которые действительно используются вне их декларируемой сборки.

SELECT METHODS/TYPES WHERE IsPublic AND !CouldBeInternal
...