Michele mpp Marostica
Michele mpp Marostica

Reputation: 2472

Runtime MissingMethodException

We're experiencing a weird problem at runtime when running code that uses the CSharpScripting classes.

Here a sample code to reproduce the error:

[TestClass]
public class UnitTest1
{
    [TestMethod]
    public void TestMethod1()
    {
        try
        {
            // Creating the script
            var compiled = CSharpScript.Create<string>(@"return ""ciao"";");
            compiled.Compile();
            var runner = compiled.CreateDelegate();

            var result = runner().GetAwaiter().GetResult();

            Assert.AreEqual("ciao", result);
        }
        catch (Exception ex)
        {

        }
    }
}

The test does not run, it compiles but throw at runtime

System.MissingMethodException: Method not found: 'System.Collections.Immutable.ImmutableArray1<Microsoft.CodeAnalysis.Diagnostic> Microsoft.CodeAnalysis.Scripting.Script.Compile(System.Threading.CancellationToken)'.`

Any help is appreciated!

Upvotes: 0

Views: 275

Answers (1)

Ibrahem Uwk
Ibrahem Uwk

Reputation: 135

Try Update assembly Like this

 <dependentAssembly>
    <assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-1.1.37.0" newVersion="1.1.37.0" />
  </dependentAssembly>

Refrenced This answer

Upvotes: 1

Related Questions