Title: Recursive binding of interfaces, custom method naming rules · Issue #130 · Astn/JSON-RPC.NET · GitHub
Open Graph Title: Recursive binding of interfaces, custom method naming rules · Issue #130 · Astn/JSON-RPC.NET
X Title: Recursive binding of interfaces, custom method naming rules · Issue #130 · Astn/JSON-RPC.NET
Description: We've been using your library for a while for our Space Engineers plugin: https://github.com/iv4xr-project/iv4xr-se-plugin We are trying to keep very clean and tree-structured interface, most of it can be seen here: https://github.com/iv...
Open Graph Description: We've been using your library for a while for our Space Engineers plugin: https://github.com/iv4xr-project/iv4xr-se-plugin We are trying to keep very clean and tree-structured interface, most of it...
X Description: We've been using your library for a while for our Space Engineers plugin: https://github.com/iv4xr-project/iv4xr-se-plugin We are trying to keep very clean and tree-structured interface, most o...
Opengraph URL: https://github.com/Astn/JSON-RPC.NET/issues/130
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Recursive binding of interfaces, custom method naming rules","articleBody":"We've been using your library for a while for our Space Engineers plugin:\r\nhttps://github.com/iv4xr-project/iv4xr-se-plugin\r\n\r\nWe are trying to keep very clean and tree-structured interface, most of it can be seen here:\r\nhttps://github.com/iv4xr-project/iv4xr-se-plugin/blob/main/Source/Ivxr.SpaceEngineers/ISpaceEngineers.cs\r\n\r\nWe want to keep method naming in this dotted fashion. Ex call `Blocks.Build` and that is our method naming convention.\r\nWe've been using your JsonRpcMethod annotation and had mapping class for it:\r\nhttps://github.com/iv4xr-project/iv4xr-se-plugin/blob/main/Source/Ivxr.SePlugin/Communication/AustinJsonRpcSpaceEngineers.cs\r\n\r\nThis was fine for a while, but this class is basically only boilercode to do the mapping. We are adding a lot more methods and this is getting annoying and feels unnecessary. We have very clear and simple interface, that already says everything and mapping could be generated straight ouf of it, no need to mark anything (all methods are supposed to be exposed).\r\n\r\nWould be cool if there was a mechanism to do that - just bind interface, pass implementation and let the library bind everything, which is part of the interface (that way it also doesn't mess with GetType, Equals, ToString and other generated methods).\r\n\r\nI created our own way, based on your ServiceBinder as a working proof. In case you are interested in putting some parts of it into your library too, I am happy to assist.\r\nhttps://github.com/iv4xr-project/iv4xr-se-plugin/pull/127","author":{"url":"https://github.com/hovi","@type":"Person","name":"hovi"},"datePublished":"2022-02-10T11:53:58.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":1},"url":"https://github.com/130/JSON-RPC.NET/issues/130"}
| 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:c6b9b4ca-bb42-0db8-f8a2-b17984b6012a |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | E982:160B47:35E9C9:497232:698F608E |
| html-safe-nonce | cf42a0b3580665b1e2b0d108e91ccbc6e5227920180c1905c04e2af4dd9bc8fa |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFOTgyOjE2MEI0NzozNUU5Qzk6NDk3MjMyOjY5OEY2MDhFIiwidmlzaXRvcl9pZCI6IjU1OTIzNzM2NDU0MDM5NzE3MjYiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 3ee0027bd1431a40e70bb861bae499f69d0e451ee9e71b1dd595a445c66038ae |
| hovercard-subject-tag | issue:1129919689 |
| 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/Astn/JSON-RPC.NET/130/issue_layout |
| twitter:image | https://opengraph.githubassets.com/a1436be02dc26ba1d07d95f611dd506aa7595b82c2ce102012375fe1f9c623a5/Astn/JSON-RPC.NET/issues/130 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/a1436be02dc26ba1d07d95f611dd506aa7595b82c2ce102012375fe1f9c623a5/Astn/JSON-RPC.NET/issues/130 |
| og:image:alt | We've been using your library for a while for our Space Engineers plugin: https://github.com/iv4xr-project/iv4xr-se-plugin We are trying to keep very clean and tree-structured interface, most of it... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | hovi |
| hostname | github.com |
| expected-hostname | github.com |
| None | 7ab1c9acb90dba91d5e994ebfb6bfb1130e0e0e6aca329cdbbd934d636e22ab6 |
| turbo-cache-control | no-preview |
| go-import | github.com/Astn/JSON-RPC.NET git https://github.com/Astn/JSON-RPC.NET.git |
| octolytics-dimension-user_id | 6857743 |
| octolytics-dimension-user_login | Astn |
| octolytics-dimension-repository_id | 17465376 |
| octolytics-dimension-repository_nwo | Astn/JSON-RPC.NET |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 17465376 |
| octolytics-dimension-repository_network_root_nwo | Astn/JSON-RPC.NET |
| 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 | 04a785903b8c8db66e4594aee5b2e56cf7232706 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width