Reputation: 2472
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
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