首页 文章

我怎样才能在使用树冠时等待工作?

提问于
浏览
1

我'm using canopy, and I can' t让 waitFor 方法起作用 .

我试图像这样使用它:

waitFor noBlockUI

noBlockUI函数的位置是:

let noBlockUI () =
    (someElement "div.blockUI").IsNone

现在waitFor调用是在F#模块中的一个函数中,我从C#项目调用该函数 .

我发现我必须将FSharp.Core添加到我的C#项目中以使任何调用工作 . FSharp有几个Microsoft编写的NuGet包:

如果我使用4.0.0包,那么当执行命中waitFor方法时,我得到这个错误:

System.MissingMethodException:找不到方法:'Microsoft.FSharp.Core.FSharpOption`1 canopy.core.someElement(System.String)' .

但是如果我使用4.3.0.0软件包,那么当我尝试运行测试时,我会立即得到:

System.TypeInitializationException:' . $ canopy.core'的类型初始值设定项引发了异常 . ----> System.IO.FileLoadException:无法加载文件或程序集'FSharp.Core,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一 . 定位的程序集的清单定义与程序集引用不匹配 . (HRESULT异常:0x80131040)

任何想法我能做什么让 waitFor 工作?

1 回答

  • 1

    尝试添加包含以下内容的app.config文件:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="FSharp.Core" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0" />
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    </configuration>
    

相关问题