Конфликт молчания между версиями сборки Предупреждение в VS - PullRequest
0 голосов
/ 02 ноября 2018

Использование кроссплатформенного решения C # Xamarin.Forms. myproject.Android генерирует два предупреждения.

Обнаружен конфликт между одной и той же версией сборки. В visual studio дважды щелкните это предупреждение и нажмите клавишу ввода, чтобы решить проблему, или добавьте его в файл приложения:

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"><dependentAssembly><assemblyIdentity name="System.Net.Http" culture="neutral" publicKeyToken="b03f5f7f11d50a3a" /><bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" /></dependentAssembly></assemblyBinding>

Это предупреждение повторяется дважды, оно дважды относится к «myproject.Android» (это часть решения xamarin.forms)

Так что я следовал инструкциям; двойной щелчок + ввод ничего не делает

Я отредактировал мой файл app.config для myproject.Android, и теперь он выглядит следующим образом: (Я ничего не удалял, поэтому, если я допустил ошибку в другом месте файла, кто-нибудь мог бы его обнаружить)

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="B03F5F7F11D50A3A" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="System.IO" publicKeyToken="B03F5F7F11D50A3A" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="System.Runtime" publicKeyToken="B03F5F7F11D50A3A" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-4.1.0.0" newVersion="4.1.0.0" />
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="System.Net.Http.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-4.2.29.0" newVersion="4.2.29.0" />
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="XLabs.Serialization" publicKeyToken="d65109b36e5040e4" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-2.0.5782.15703" newVersion="2.0.5782.15703" />
        </dependentAssembly>
    </assemblyBinding>
</runtime>

Это убрало одно предупреждение, другое все еще здесь Поэтому я попытался сделать то же самое в app.config в myproject.PortablePCL:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <dependentAssembly>
    <assemblyIdentity name="XLabs.Serialization" publicKeyToken="d65109b36e5040e4" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-2.0.5782.15703" newVersion="2.0.5782.15703" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
  </dependentAssembly>
</assemblyBinding>

На этот раз ничего не изменилось, все еще одно предупреждение. Я нашел где-то другое предупреждение, относящееся к той же самой проблеме, я думаю:

Если возможно, переназначить app.config сборки "System.Net.Http, Culture = нейтральный, PublicKeyToken = b03f5f7f11d50a3a" версии "1.5.0.0" [] до версии "4.0.0.0" [/ Library / Frameworks / Mono .framework / External / xbuild-frameworks / MonoAndroid / v1.0 / System.Net.Http.dll], чтобы разрешить конфликт и больше не получать это предупреждение.

Я перевел каждое сообщение об ошибке с французского на английский, поэтому приношу свои извинения, если я сделал какую-то ошибку при этом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...