Skip to content
DataMiner DoJo

More results...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Search in posts
Search in pages
Search in posts
Search in pages
Log in
Menu
  • Blog
  • Questions
  • Learning
    • E-learning Courses
    • Open Classroom Training
    • Certification
      • DataMiner Fundamentals
      • DataMiner Configurator
      • DataMiner Automation
      • Scripts & Connectors Developer: HTTP Basics
      • Scripts & Connectors Developer: SNMP Basics
      • Visual Overview – Level 1
      • Verify a certificate
    • Tutorials
    • Video Library
    • Books We Like
    • >> Go to DataMiner Docs
  • Expert Center
    • Solutions & Use Cases
      • Solutions
      • Use Case Library
    • Markets & Industries
      • Media production
      • Government & defense
      • Content distribution
      • Service providers
      • Partners
      • OSS/BSS
    • DataMiner Insights
      • Security
      • Integration Studio
      • System Architecture
      • DataMiner Releases & Updates
      • DataMiner Apps
    • Agile
      • Agile Webspace
      • Everything Agile
        • The Agile Manifesto
        • Best Practices
        • Retro Recipes
      • Methodologies
        • The Scrum Framework
        • Kanban
        • Extreme Programming
      • Roles
        • The Product Owner
        • The Agile Coach
        • The Quality & UX Coach (QX)
    • DataMiner DevOps Professional Program
  • Downloads
  • More
    • Feature Suggestions
    • Climb the leaderboard!
    • Swag Shop
    • Contact
      • General Inquiries
      • DataMiner DevOps Support
      • Commercial Requests
    • Global Feedback Survey
  • PARTNERS
    • All Partners
    • Technology Partners
    • Strategic Partner Program
    • Deal Registration
  • >> Go to dataminer.services

How to resolve System.MissingMethodException

Solved2.17K views13th July 2022DLL
0
Stijn Declerck [SLC] [DevOps Advocate]800 12th July 2022 1 Comment

Hi all,

I keep getting the error below in the logging of a connector. I suspect the problem is in the loading of the referenced dll, but I can't figure out how to resolve it.

2022/07/12 14:14:08.301|SLManagedScripting.exe|ManagedInterop|CRU|-1|5|System.MissingMethodException: Method not found: 'Skyline.DataMiner.Library.Common.DmsElementId Meinberg.Nms.IAC.Communication.Generic.ElementInfoEvent.get_DmsElementId()'.
Stijn Declerck [SLC] [DevOps Advocate] Selected answer as best 13th July 2022
Stijn Declerck [SLC] [DevOps Advocate] commented 12th July 2022

Hi Jens, I’m working with Nuget packages

4 Answers

  • Active
  • Voted
  • Newest
  • Oldest
4
Avatar photo
Jan Staelens [SLC] [DevOps Advocate]889 Posted 13th July 2022 0 Comments

The cause:

The problem is that the Meinberg NuGet has a dependency on version 1.2.2.1 of the class library but in your solution (that uses meinberg nuget) you're installing the 1.2.2.4 nuget of the class library.

This means your QAction will have both dll's in the dllimport attribute and DataMiner will currently load up both version 1.2.2.1 and 1.2.2.4 of that library and the data returned from meinberg will expect the DmsElementId class of 1.1.2.1 but find 1.1.2.4 which causes errors.

The solution:

To fix this, you'll need to make sure all your libraries and solutions have a dependency on the same version of class library.

More details:

https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/redirect-assembly-versions

For normal programs during compilation it will perform something called unification where a automatically generated bindingredirect is added to a file next to the .exe. The binding redirect will say that any request at runtime to a method inside class library 1.2.2.1 should use 1.2.2.4 instead. Within DataMiner it's not possible to add that binding redirect because SLManagedScripting is a single process shared between all protocols and QActions. So any bindingredirect would impact all the protocol QActions.

Instead of unification, we use parallel loading where both versions of the assembly get loaded. This works between QActions and protocols, but as shown here it can cause strange behavior if multiple versions of the same assembly are needed in the same protocol.

We're brainstorming options to split up SLManagedScripting and protocols in general into more modular 'single' programs. That would also help fix this issue and allow us to add bindingredirects and use unification.

Stijn Declerck [SLC] [DevOps Advocate] Selected answer as best 13th July 2022
1
Maxim Bouckaert [SLC] [DevOps Member]169 Posted 12th July 2022 0 Comments

Just to build further on Jens' answer.
If you are using nuggets in the solution, you will have to place the DLL files/nuget folder in the "Skyline DataMiner\ProtocolScripts\DllImport" folder.

More information can be found here:

NuGet use in System Development

Maxim Bouckaert [SLC] [DevOps Member] Answered question 12th July 2022
1
Jens Vandewalle [SLC] [DevOps Enabler]9.44K Posted 12th July 2022 3 Comments

Hi Stijn,

It looks like you're missing the Meinbergh API dll. Can you confirm that it's available on your system?

Stijn Declerck [SLC] [DevOps Advocate] Posted new comment 12th July 2022
Stijn Declerck [SLC] [DevOps Advocate] commented 12th July 2022

The dll ‘SLC.CLib.Meinberg.Nms.IAC.dll’ is available under the folder “C\:Skyline DataMiner\ProtocolScripts\DllImport\slc.clib.meinberg.nms.iac\1.0.10325.21-1.0.0.x.21\lib\net462”. I uploaded the connector via the ‘.dmprotocol’ package, which contains that dll.

Jens Vandewalle [SLC] [DevOps Enabler] commented 12th July 2022

Can you verify in the uploaded protocol that the dllImport reference on the impacted QAction is correct?

Stijn Declerck [SLC] [DevOps Advocate] commented 12th July 2022

This is the dllImort reference: ‘slc.clib.meinberg.nms.iac\1.0.10325.21-1.0.0.x.21\lib\net462\SLC.CLib.Meinberg.Nms.IAC.dll’

0
Michiel Oda [SLC] [DevOps Enabler]3.58K Posted 13th July 2022 0 Comments

Hi Stijn

Based on the error I see that the class DmsElementId is being used, which is part of the Class Library. I assume that the Meinberg NuGet has a dependency to the Class Library NuGet? If not, then that would likely be the issue.

Michiel Oda [SLC] [DevOps Enabler] Answered question 13th July 2022
Please login to be able to comment or post an answer.

My DevOps rank

DevOps Members get more insights on their profile page.

My user earnings

0 Dojo credits

Spend your credits in our swag shop.

0 Reputation points

Boost your reputation, climb the leaderboard.

Promo banner DataMiner DevOps Professiona Program
DataMiner Integration Studio (DIS)
Empower Katas

Recent questions

Alarm Dashboard PDF/CSV Export 0 Answers | 0 Votes
Is the Microsoft SharePoint Connector Still Usable 0 Answers | 0 Votes
Is the Microsoft SharePoint Connector Still Usable 0 Answers | 0 Votes

Question Tags

adl2099 (115) alarm (62) Alarm Console (82) alarms (100) alarm template (83) Automation (223) automation scipt (111) Automation script (167) backup (71) Cassandra (180) Connector (108) Correlation (68) Cube (150) Dashboard (194) Dashboards (188) database (83) DataMiner Cube (57) DIS (81) DMS (71) DOM (139) driver (65) DVE (55) Elastic (83) Elasticsearch (115) elements (80) Failover (104) GQI (159) HTTP (76) IDP (74) LCA (151) low code app (166) low code apps (93) lowcodeapps (75) MySQL (53) protocol (203) QAction (83) security (88) services (51) SNMP (86) SRM (337) table (54) trending (87) upgrade (62) Visio (539) Visual Overview (345)
Privacy Policy • Terms & Conditions • Contact

© 2025 Skyline Communications. All rights reserved.

DOJO Q&A widget

Can't find what you need?

? Explore the Q&A DataMiner Docs

[ Placeholder content for popup link ] WordPress Download Manager - Best Download Management Plugin