VS2015 - Nuget - 包与UAP不兼容,版本= v10.0

时间:2016-12-01 15:41:32

标签: c# uwp nuget nuget-package nuget-package-restore

当我在Windows 10 UWP应用上安装SevenzipSharp.Net45时,收到此消息:

  

Package SevenZipSharp.Net45 1.0.5与uap10.0(UAP,Version = v10.0)不兼容。 Package SevenZipSharp.Net45 1.0.5支持:net45(.NETFramework,Version = v4.5)   一个或多个程序包与UAP不兼容,版本= v10.0。

此消息也与其他包一起出现 我用Framework 4.6制作了我的UWP应用程序,但我也尝试过使用4.5,问题是一样的吗?

我必须改变什么吗? 非常感谢。

1 个答案:

答案 0 :(得分:0)

要在UWP中提取7Zip文件,我们可以使用SharpCompress。该软件包支持.NETStandard 1.3,因此可以在UWP应用程序中使用。要使用此库,我们可以安装它from NuGet

  

Install-Package sharpcompress

请注意使用此软件包,我们现在还需要至少使用 5.2.2 版本的Microsoft.NETCore.UniversalWindowsPlatform

以下是一个简单的样本。

using (var stream = await (await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(@"Assets\test.7z")).OpenStreamForReadAsync())
{
    using (var archive = SharpCompress.Archives.SevenZip.SevenZipArchive.Open(stream))
    {
        var entry = archive.Entries.First();
        using (var entryStream = entry.OpenEntryStream())
        {
            var file = await ApplicationData.Current.LocalFolder.CreateFileAsync(entry.Key, CreationCollisionOption.OpenIfExists);
            using (var fileStream = await file.OpenStreamForWriteAsync())
            {
                entryStream.CopyTo(fileStream);
            }
        }
    }
}