Title: ExplicitVisit method for some TSqlFragment descendant classes is never called · Issue #145 · microsoft/SqlScriptDOM · GitHub
Open Graph Title: ExplicitVisit method for some TSqlFragment descendant classes is never called · Issue #145 · microsoft/SqlScriptDOM
X Title: ExplicitVisit method for some TSqlFragment descendant classes is never called · Issue #145 · microsoft/SqlScriptDOM
Description: For example, TSqlFragmentVisitor has virtual method for visiting DataModificationStatement - ExplicitVisit(DataModificationStatement) which can be overridden and "used" for whatever reason in an app... The thing is - it is never called. ...
Open Graph Description: For example, TSqlFragmentVisitor has virtual method for visiting DataModificationStatement - ExplicitVisit(DataModificationStatement) which can be overridden and "used" for whatever reason in an ap...
X Description: For example, TSqlFragmentVisitor has virtual method for visiting DataModificationStatement - ExplicitVisit(DataModificationStatement) which can be overridden and "used" for whatever reaso...
Opengraph URL: https://github.com/microsoft/SqlScriptDOM/issues/145
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"ExplicitVisit method for some TSqlFragment descendant classes is never called","articleBody":"For example, [TSqlFragmentVisitor](https://learn.microsoft.com/en-us/dotnet/api/microsoft.sqlserver.transactsql.scriptdom.tsqlfragmentvisitor?view=sql-dacfx-160) has virtual method for visiting DataModificationStatement - `ExplicitVisit(DataModificationStatement)` which can be overridden and \"used\" for whatever reason in an app... The thing is - it is never called. There is no code invoking `ExplicitVisit` for this abstract class and many others. These methods are stillborn and it takes some time to realize that the code does not work and to discover why. For concrete descendants of DataModificationStatement (InsertStatement etc.) it does work as expected.\n\nConsider removing such stillborn methods from `TSqlFragmentVisitor` or mark them `sealed` or start invoking them. \n\nAlso it'd be great to improve documentation: please elaborate scenarios in which `ExplicitVisit` method should be used instead of `Visit`, when `TSqlConcreteFragmentVisitor` should be utilized.","author":{"url":"https://github.com/IVNSTN","@type":"Person","name":"IVNSTN"},"datePublished":"2025-07-10T13:38:06.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/145/SqlScriptDOM/issues/145"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:2cefb349-c3de-d0fe-4b6d-82d398f395ba |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | AE0A:152038:20F190:2D3413:698F2D97 |
| html-safe-nonce | 2a1d26a312f5af6372a4b76e6a249cb6909ad2097f2c3f063d195f821ef44392 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBRTBBOjE1MjAzODoyMEYxOTA6MkQzNDEzOjY5OEYyRDk3IiwidmlzaXRvcl9pZCI6Ijc0MTY4NDExODY4NDc5NjA0NzEiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 3ea7a0cdb66fcd450aa9feac5985d0b7e255f1e914ef10875bb9990e5d5ad8aa |
| hovercard-subject-tag | issue:3219408446 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/microsoft/SqlScriptDOM/145/issue_layout |
| twitter:image | https://opengraph.githubassets.com/392e07f924cb144d16a9c19538540942fe85b80d54642b369868cc62bdc1b838/microsoft/SqlScriptDOM/issues/145 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/392e07f924cb144d16a9c19538540942fe85b80d54642b369868cc62bdc1b838/microsoft/SqlScriptDOM/issues/145 |
| og:image:alt | For example, TSqlFragmentVisitor has virtual method for visiting DataModificationStatement - ExplicitVisit(DataModificationStatement) which can be overridden and "used" for whatever reason in an ap... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | IVNSTN |
| hostname | github.com |
| expected-hostname | github.com |
| None | 6102991c714c1a6a27d05fb4f96ea6ca87a6750b4f093b95cc57ed1b84b145a1 |
| turbo-cache-control | no-preview |
| go-import | github.com/microsoft/SqlScriptDOM git https://github.com/microsoft/SqlScriptDOM.git |
| octolytics-dimension-user_id | 6154722 |
| octolytics-dimension-user_login | microsoft |
| octolytics-dimension-repository_id | 543316377 |
| octolytics-dimension-repository_nwo | microsoft/SqlScriptDOM |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 543316377 |
| octolytics-dimension-repository_network_root_nwo | microsoft/SqlScriptDOM |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | e2fe82f90e107669021e243add8f74ea2a9be1b3 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width