2017-11-11 14 views
0

나는 .netcore에서 아주 새로운데, 나에겐 새로운 것들이있다. 나는이 특성을 가진 DLL이 : 나는 .netcore을위한 휴대용 라이브러리이 라이브러리의 기능 중 일부를 게시하려고.net에서 uwp에 이르는 Portable 라이브러리의 System.dll에서이 예외를 피할 수 있습니까?

**[assembly: Extension] 
[assembly: CompilationRelaxations(8)] 
[assembly: RuntimeCompatibility(WrapNonExceptionThrows=true)] 
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] 
[assembly: AssemblyCompany("XXX")] 
[assembly: AssemblyProduct("XXX")] 
[assembly: AssemblyConfiguration("Release")] 
[assembly: AssemblyCopyright("Copyright \xxx 2017 XXX")] 
[assembly: AssemblyTrademark("")] 
[assembly: NeutralResourcesLanguage("en-US")] 
[assembly: AssemblyTitle("XXXXXX.Services.XXXX.Desktop")] 
[assembly: AssemblyDescription("")] 
[assembly: TargetFramework(".NETFramework,Version=v4.6.1", FrameworkDisplayName=".NET Framework 4.6.1")]** 

합니다.

휴대용 라이브러리가 완벽하게 컴파일되어 라이브러리가 추가됩니다. UWP 애플 리케이션에서 실행하자마자 예외가 발생합니다 (아래). 이 dll은 아래 예외에서 나타나는 PublicKeyToken을 사용하여 System.xml 라이브러리에 일부 종속됩니다.

파일 또는 어셈블리 'System, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = xxxxx'을로드 할 수 없습니다. 찾은 어셈블리의 매니페스트 정의가 어셈블리 참조와 일치하지 않습니다. (HRESULT에서 예외 : 0x80131040) "

내가 뭔가 잘못하고있는 중이 야 내가 메인 DLL 코드에 액세스 할 수없는이 문제를 해결 할 수있는 방법이 있습니다

내 휴대용 클래스는 매우 간단하다?.

using XXXXX.Services.XXXX.Desktop; 
namespace RobAPIDesktop 
{ 
    public static class RobAPiPortable 
    { 
     public static void Initialize() 
     { 
      try 
      { 

       DesktopInit.Initialize(); 

      } 
      catch (Exception ex) 
      { 

      } 
     } 
    } 
} 
+2

.net 표준 2.0 라이브러리를 사용하고 있습니까? 그게 더 좋을거야 pcl –

+0

나는 당신이 옳다고 생각합니다. 어쨌든 'System.AggregateException'과 같은 다른 오류가 발생합니다. System.Private.CoreLib.dll하지만 그 다른 것은 ... – ronconsoda

답변

0

PCLs는 죽은 당신은 .NET 표준 라이브러리를 사용해야

이 페이지의 매트릭스를 살펴보세요 -.. https://docs.microsoft.com/en-us/dotnet/standard/net-standard

netstandard 2.0 라이브러리를 만들면 더 많은 API 세트에 액세스 할 수 있지만 해당 라이브러리를 사용할 수있는 UWP 플랫폼의 최소 버전은 10.0.16299입니다.

필요한 API 사이의 적절한 지점을 찾고 해당 API가있는 가장 낮은 netstandard 버전을 선택하면 더 많은 사용자가 라이브러리에 액세스 할 수 있습니다. 따라서 netstandard 1.4에 필요한 모든 API가 있으면 모든 UWP 프로젝트에서 사용할 수 있습니다.