“无法将 void 分配给隐式类型的局部变量”错误

Posted

技术标签:

【中文标题】“无法将 void 分配给隐式类型的局部变量”错误【英文标题】:"Cannot assign void to an implicitly-typed local variable" error 【发布时间】:2017-02-17 07:37:04 【问题描述】:
using (ZipFile zip = ZipFile.Read(fu.PostedFile.InputStream))                    
    string extractPath = Server.MapPath("~/Uploads/");
    string oldPathImg = Server.MapPath("~/Uploads/RubbishData/");
    zip.ExtractSelectedEntries("name = *.docx", "",extractPath, ExtractExistingFileAction.OverwriteSilently);
    var x = zip.ExtractSelectedEntries("name = *.png");   

最后一行给了我错误“无法将 void 分配给隐式类型的局部变量”,我不明白为什么。

【问题讨论】:

我一定是因为期待而错过了这个问题。你的问题是什么?另外,请尝试阅读 ExtractSelectedEntries dotnetzip.herobo.com/DNZHelp/html/… 的 API 你可以指定类型而不是使用 var @AntDC ExtractSelectedEntries 没有回报,是void 啊哈 ;) 哎呀..... 是的,没有回报 【参考方案1】:

正如我在评论中提到的,您正在使用的库有一个 Ionic API Guide,它明确指出 ExtractSelectedEntries 的所有重载都没有返回类型,只是 void

public void ExtractSelectedEntries(
    string selectionCriteria,
    ExtractExistingFileAction extractExistingFile
)

这意味着你的代码应该是这样的

using (ZipFile zip = ZipFile.Read(fu.PostedFile.InputStream))                    
    string extractPath = Server.MapPath("~/Uploads/");
    string oldPathImg = Server.MapPath("~/Uploads/RubbishData/");
    zip.ExtractSelectedEntries("name = *.docx", "",extractPath, ExtractExistingFileAction.OverwriteSilently);
    zip.ExtractSelectedEntries("name = *.png"); // Cannot assign void to a variable, remove the assignment.

【讨论】:

但我希望这个图像名在变量中调整大小 好的,正如我所说,ExtractSelectedEntries 返回 void,您的问题是关于尝试将 void 分配给变量的错误。 我有包含图片的 zip 文件,我想调整它的大小,你能帮我吗? 发布另一个关于该问题的问题,如果这解决了Cannot assign void to an implicitly-typed local variable的问题,请将其标记为答案 您是否对我的回答投了反对票,因为它没有解决您在评论中陈述的问题,这与这个问题无关?答案应该被标记为不正确,这不是 - 阅读上面链接的 API 指南。

以上是关于“无法将 void 分配给隐式类型的局部变量”错误的主要内容,如果未能解决你的问题,请参考以下文章

Pig 安装错误:错误 pig.Main:错误 2998:未处理的内部错误

Informix 错误:发生了语法错误。错误代码:-201

我收到一个错误:“MetaMask - RPC 错误:错误:错误:[ethjs-rpc] rpc 错误与有效负载”

错误精灵错误跟踪器错误

网页打开显示错误500是啥意思

PHP错误处理