当前位置:  开发笔记 > 编程语言 > 正文

ReSharper - 空分配问题

如何解决《ReSharper-空分配问题》经验,为你挑选了1个好方法。

JetBrains ReSharper问题

我们有以下C#代码,我们从图像资源文件填充图像列表.ReSharper指示"可能"null"赋值给具有"NotNull"属性的实体".

这个问题向我们表明,我们只需要检查以确保我们的ResMan_Graphics不是null,但是当我们检查null为止时......问题仍然存在.

以下是生成ReSharper问题的代码;

ResourceManager ResMan_Graphics = new ResourceManager("_Graphics", Assembly.ReflectionOnlyLoad("lib"));
ImageList Icons = new ImageList();

Icons.Images.Add((Image)ResMan_Graphics.GetObject("ICON_Main"));

有没有人之前遇到过这个ReSharper评论,你对如何从资源填充imageList而不产生这个问题有任何建议吗?

注意:如果我们将一个imageList组件放在一个表单上,然后从代码中的资源填充imageList,ReSharper不会产生注释.



1> Roger Lipsco..:

这是因为GetObject可能会返回null.你想这样做:

Image image = (Image)ResMan_Graphics.GetObject("ICON_Main");
if (image != null)
    Icons.Images.Add(image);

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有