Title: "TypeError: No method matches given arguments" error for a virtual method with a template parameter · Issue #1522 · pythonnet/pythonnet · GitHub
Open Graph Title: "TypeError: No method matches given arguments" error for a virtual method with a template parameter · Issue #1522 · pythonnet/pythonnet
X Title: "TypeError: No method matches given arguments" error for a virtual method with a template parameter · Issue #1522 · pythonnet/pythonnet
Description: Environment Pythonnet version: 3.0.0.dev1 Python version: 3.9.6 (also tried on 3.7) Operating System: Ubuntu 20.04 .NET Runtime: mono-devel (Mono JIT compiler version 6.8.0.105) Open XML SDK 2.13.0 (from https://www.nuget.org/packages/Do...
Open Graph Description: Environment Pythonnet version: 3.0.0.dev1 Python version: 3.9.6 (also tried on 3.7) Operating System: Ubuntu 20.04 .NET Runtime: mono-devel (Mono JIT compiler version 6.8.0.105) Open XML SDK 2.13.0...
X Description: Environment Pythonnet version: 3.0.0.dev1 Python version: 3.9.6 (also tried on 3.7) Operating System: Ubuntu 20.04 .NET Runtime: mono-devel (Mono JIT compiler version 6.8.0.105) Open XML SDK 2.13.0...
Opengraph URL: https://github.com/pythonnet/pythonnet/issues/1522
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"\"TypeError: No method matches given arguments\" error for a virtual method with a template parameter","articleBody":"### Environment\r\n\r\n- Pythonnet version: 3.0.0.dev1\r\n- Python version: 3.9.6 (also tried on 3.7)\r\n- Operating System: Ubuntu 20.04\r\n- .NET Runtime: mono-devel (Mono JIT compiler version 6.8.0.105)\r\n- Open XML SDK 2.13.0 (from https://www.nuget.org/packages/DocumentFormat.OpenXml/)\r\n\r\n### Details\r\n\r\nTrying to re-implement example from [here](https://docs.microsoft.com/en-us/office/open-xml/how-to-create-a-presentation-document-by-providing-a-file-name) using Python.\r\n\r\nEverything works fine except this line of code:\r\n\r\n```python\r\n slideMasterPart1.AddPart(slideLayoutPart1, \"rId1\");\r\n````\r\n\r\nThere are two definitions of `AddPart`:\r\n\r\n```csharp\r\n public virtual T AddPart\u003cT\u003e(T part) where T : OpenXmlPart\r\n public virtual T AddPart\u003cT\u003e(T part, string id) where T : OpenXmlPart\r\n```\r\n\r\n` slideMasterPart1.AddPart.Overloads` output: \r\n```\r\nT AddPart[T](T)\r\nT AddPart[T](T, System.String)\r\n```\r\n\r\nWhat works:\r\n```python\r\n slideMasterPart1.AddPart(slideLayoutPart1)\r\n slideMasterPart1.AddPart[SlideLayoutPart](slideLayoutPart1)\r\n````\r\n\r\nWhat doesn't work:\r\n```python\r\n slideMasterPart1.AddPart(slideLayoutPart1, \"rId1\")\r\n slideMasterPart1.AddPart(slideLayoutPart1, System.String(\"rId1\"))\r\n slideMasterPart1.AddPart[SlideLayoutPart](slideLayoutPart1, \"rId1\")\r\n````\r\n\r\nError:\r\n```\r\nPython.Runtime.PythonException: DocumentFormat.OpenXml.Packaging.SlideLayoutPart value cannot be converted to T\r\n\r\nThe above exception was the direct cause of the following exception:\r\n\r\nSystem.ArgumentException: DocumentFormat.OpenXml.Packaging.SlideLayoutPart value cannot be converted to T in method T AddPart[T](T, System.String) ---\u003e Python.Runtime.PythonException: DocumentFormat.OpenXml.Packaging.SlideLayoutPart value cannot be converted to T\r\n --- End of inner exception stack trace ---\r\n\r\nThe above exception was the direct cause of the following exception:\r\n\r\nSystem.AggregateException: One or more errors occurred. (DocumentFormat.OpenXml.Packaging.SlideLayoutPart value cannot be converted to T in method T AddPart[T](T, System.String)) ---\u003e System.ArgumentException: DocumentFormat.OpenXml.Packaging.SlideLayoutPart value cannot be converted to T in method T AddPart[T](T, System.String) ---\u003e Python.Runtime.PythonException: DocumentFormat.OpenXml.Packaging.SlideLayoutPart value cannot be converted to T\r\n --- End of inner exception stack trace ---\r\n --- End of inner exception stack trace ---\r\n---\u003e (Inner Exception #0) System.ArgumentException: DocumentFormat.OpenXml.Packaging.SlideLayoutPart value cannot be converted to T in method T AddPart[T](T, System.String) ---\u003e Python.Runtime.PythonException: DocumentFormat.OpenXml.Packaging.SlideLayoutPart value cannot be converted to T\r\n --- End of inner exception stack trace ---\u003c---\r\n\r\nThe above exception was the direct cause of the following exception:\r\n...\r\nslideMasterPart1.AddPart(slideLayoutPart1, \"rId1\");\r\nTypeError: No method matches given arguments for AddPart: (\u003cclass 'DocumentFormat.OpenXml.Packaging.SlideLayoutPart'\u003e, \u003cclass 'str'\u003e)\r\n```\r\n\r\nmcve:\r\n```python\r\nimport clr\r\n\r\nclr.AddReference('DocumentFormat.OpenXml')\r\n\r\nfrom DocumentFormat.OpenXml.Packaging import (\r\n SlideLayoutPart,\r\n SlideMasterPart,\r\n)\r\n\r\nslideLayoutPart1: SlideLayoutPart = SlideLayoutPart()\r\nslideMasterPart1: SlideMasterPart = SlideMasterPart()\r\nslideMasterPart1.AddPart(slideLayoutPart1) # this works OK\r\nslideMasterPart1.AddPart(slideLayoutPart1, \"rId1\") # this raises a runtime exception\r\n```\r\n\r\nSo it's only when the second (string) parameter is provided, the first can't be converted. Looks like a pythonnet issue.","author":{"url":"https://github.com/rayrapetyan","@type":"Person","name":"rayrapetyan"},"datePublished":"2021-08-19T23:57:33.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":2},"url":"https://github.com/1522/pythonnet/issues/1522"}
| 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:0705e874-ab2c-9937-dfbb-bb45ddbded62 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | B926:7A5F:204E867:2BD64C2:697083AB |
| html-safe-nonce | d595d550eba7908f33d76898331042759add6c99672cffb6898242fb86041151 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCOTI2OjdBNUY6MjA0RTg2NzoyQkQ2NEMyOjY5NzA4M0FCIiwidmlzaXRvcl9pZCI6IjcxMjIyMDE1ODEzMjIyNzM3MDciLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | dbb97e032a7cd3bebf84ab16bdc0fd8bb98f34d568e75321c6e06ec9ff7a685c |
| hovercard-subject-tag | issue:975137730 |
| 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/pythonnet/pythonnet/1522/issue_layout |
| twitter:image | https://opengraph.githubassets.com/928f86d4a76ae4c92c2b60d506955e7f8291a701d842b52787363881e057af9a/pythonnet/pythonnet/issues/1522 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/928f86d4a76ae4c92c2b60d506955e7f8291a701d842b52787363881e057af9a/pythonnet/pythonnet/issues/1522 |
| og:image:alt | Environment Pythonnet version: 3.0.0.dev1 Python version: 3.9.6 (also tried on 3.7) Operating System: Ubuntu 20.04 .NET Runtime: mono-devel (Mono JIT compiler version 6.8.0.105) Open XML SDK 2.13.0... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | rayrapetyan |
| hostname | github.com |
| expected-hostname | github.com |
| None | 9920a62ba22d06470388e2904804fb7e5ec51c9e35f81784e9191394c74b2bd2 |
| turbo-cache-control | no-preview |
| go-import | github.com/pythonnet/pythonnet git https://github.com/pythonnet/pythonnet.git |
| octolytics-dimension-user_id | 6050430 |
| octolytics-dimension-user_login | pythonnet |
| octolytics-dimension-repository_id | 14748123 |
| octolytics-dimension-repository_nwo | pythonnet/pythonnet |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 14748123 |
| octolytics-dimension-repository_network_root_nwo | pythonnet/pythonnet |
| 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 | 7d6181066430cc06553c8396ca201e194ae33cb9 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width