2017-12-04 6 views
-1

Nuget 패키지를 설치하려면 다음 명령을 찾았 으면 System.Security.Cryptography.Pkcs를 사용해야합니다. Install-Package System.Security.Cryptography.Pkcs -Version 4.4.0 with 4.5System.Security.Cryptography.Pkcs for .NET Framework 4.5를 설치하는 방법

PM에서 이것을 실행할 때. 'System.Security.Cryptography.Pkcs 4.4.0'패키지를 설치할 수 없습니다. 이 패키지를 '.NETFramework, Version = v4.5'를 대상으로하는 프로젝트에 설치하려고하지만 해당 프레임 워크와 호환되는 어셈블리 참조 또는 컨텐트 파일이 패키지에 포함되어 있지 않습니다. 자세한 내용은 패키지 작성자에게 문의하십시오.

+1

메시지 자체가 분명합니다. NuGet 패키지는 .NET Framework 4.5에서는 지원되지 않지만 4.6 이상에서 지원됩니다. –

+0

네,하지만 의존 프로젝트는 엄격하게 4.5에서만 실행되므로 프로젝트 프레임 워크를 변경할 수 없습니다. –

답변

0

.NET Framework 4.5를 사용하는 경우 System.Security.Cryptography.Pkcs 패키지가 필요하지 않습니다. .NET Framework에 이미있는 유형 만 포함되어 있기 때문에 System.Security.dll입니다.

여기 ILDASM 당, 라이브러리의 net46 구현의 전체입니다 :

.class extern forwarder System.Security.Cryptography.CryptographicAttributeObject 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.CryptographicAttributeObjectCollection 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.CryptographicAttributeObjectEnumerator 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.AlgorithmIdentifier 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.CmsRecipient 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.CmsRecipientCollection 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.CmsRecipientEnumerator 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.ContentInfo 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.EnvelopedCms 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.KeyAgreeRecipientInfo 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.KeyTransRecipientInfo 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.Pkcs9AttributeObject 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.Pkcs9ContentType 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.Pkcs9DocumentDescription 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.Pkcs9DocumentName 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.Pkcs9MessageDigest 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.Pkcs9SigningTime 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.PublicKeyInfo 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.RecipientInfo 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.RecipientInfoCollection 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.RecipientInfoEnumerator 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.RecipientInfoType 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.SubjectIdentifier 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.SubjectIdentifierOrKey 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.SubjectIdentifierOrKeyType 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Pkcs.SubjectIdentifierType 
{ 
    .assembly extern System.Security 
} 
.class extern forwarder System.Security.Cryptography.Xml.X509IssuerSerial 
{ 
    .assembly extern System.Security 
} 

는 .NET 표준은 적어도 .NET 프레임 워크 4.6으로 업그레이드해야 사용하여 무언가와 상호 운용 할 필요가있는 경우, (.NET Framework 4.6에 맞춰진) .NET Standard 1.3 이전에 암호화 유형이 정의되어 있지 않기 때문에

+0

업데이트 해 주셔서 감사합니다. 두 개의 프로젝트가 분리되었습니다. 서비스 모델 브릿지가이 두 가지 사이에 이미 존재하기 때문에 하나는 4.5이고 다른 하나는 4.6.2입니다. 다시 한번 감사합니다 –