2017-01-21 3 views
1

Я разработал простую стандартную библиотеку .net.System.Runtime (.net 4.6) и mscorlib (.net Standard 1.6)

Затем я ссылался на эту сборку в проекте .net 4.6, который в основном работает нормально.

Но когда я пытаюсь вызвать метод в этом .net Standard-библиотеку с BOOL (или Guid) параметрическим Я получаю эту ошибку:

Cannot convert source type 'bool [mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]' to target type 'bool [System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a]'

Этих типы определены в обеих УЗЛАХ : mscorlib и System.Runtime ... как я могу это исправить?

UPDATE

здесь является очень простой пример, чтобы показать эту ошибку:

.net Portable Library -> преобразуется в .NET Standard через язычок собственности

public class MyClass 
{ 
    public void CallMe(Guid guid) 
    { 
     //so something 
    } 
} 

Проект.json

{ 
    "supports": {}, 
    "dependencies": { 
    "Microsoft.NETCore.Portable.Compatibility": "1.0.1", 
    "NETStandard.Library": "1.6.0" 
    }, 
    "frameworks": { 
    "netstandard1.6": {} 
    } 
} 

Я также должен добавить это к моему csproj-файл, outerwise он не работает на всех:

<PropertyGroup> 
    <NuGetTargetMoniker>.NETStandard,Version=v1.6</NuGetTargetMoniker> 
    </PropertyGroup> 

чистый 4.6.1 Проект (ссылка на .net, стандартной библиотеки непосредственно через Библиотеки DLL-файл (Проект ссылка не работает)

public class Class1 
    { 
     private void Call() 
     { 
      var c = new MyClass(); 
      c.CallMe(Guid.NewGuid()); 
     } 
    } 

И это ошибка-сообщение: enter image description here

+0

Можете ли вы дать [mcve], в том числе и файл проекта, если он по-прежнему, как project.json? Когда вы говорите «проект .net 4.6», вы имеете в виду .NET 4.6 или 4.6.1 или 4.6.2? И это проект стиля .NET Core, или обычный csproj? В принципе, здесь есть много деталей - было бы очень полезно узнать о них всех. –

+0

Я добавил простой пример, чтобы показать эту ошибку –

+2

Вы ориентируетесь на библиотеку netstandard1.6 из проекта .NET 4.6.1 - это не * предполагается * для работы - см. Https://docs.microsoft.com/ ан-нас/DotNet/статьи/стандарт/библиотека. Вместо этого попробуйте настроить netstandard1.4. –

ответ