How can I add an assembly binding redirect to a .net core unit test project?

前端 未结 3 1237
天涯浪人
天涯浪人 2020-12-30 00:48

I\'m trying to create a .net core unit test project against framework 4.6.1 which tests an project dependent on Microsoft.SqlServer.Types (10.0.0.0). Prior to .net core I\'d

相关标签:
3条回答
  • 2020-12-30 01:19

    If you reference Microsoft.NET.Test.Sdk >= 15.3.0 in your project it automatically turns on the required MSBuild properties, as Fabian says below. See here.


    You can add the following settings to your .csproj file:

    <PropertyGroup>
      <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
      <GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
    </PropertyGroup>
    

    Otherwise adding them to an app.config in the root of the solution, as Joao says, works too. Make sure you set its Copy to Output Directory setting to Copy always or Copy if Newer.

    0 讨论(0)
  • 2020-12-30 01:37

    In my case none of the solutions mentioned above helped (even if the binding redirects are generated automatically or added manually, looks like these hacks are really not working anymore as @Joao suggested).

    So I added the desired version of the package to my project, even if it is not used directly and this resolved the issue. I don't like this approach, but this was the only way working for me.

    Hopefully this method can help others as well.

    0 讨论(0)
  • 2020-12-30 01:41

    Referencing the NuGet package Microsoft.NET.Test.Sdk >= 15.3.0 (I used Microsoft.NET.Test.Sdk 15.3.0-preview-20170601-03) solved this problem for me. That package automatically turns on the MSBuild properties mentioned in @Mardoxx's answer.

    (I got this info from Martin Andreas Ullrich at https://github.com/NuGet/Home/issues/5335#issuecomment-306318810.)

    0 讨论(0)
提交回复
热议问题