- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试解决一些 fxcop 问题,但我对这个问题真的很困惑。
在派生类的 setter 中,我正在检查是否应该进行赋值
if (!(value is TypeA))
{
throw new ArgumentException("value is not of TypeA type");
}
_action = (TypeA)value;
FxCop 正在提示:
'value', a parameter, is cast to type 'TypeA' multiple times in method. Cache the result of the 'as' operator or direct cast in order to eliminate the redundant castclass instruction.
但是,在 this 中msdn 示例(是
定义)我看到了这个:
if (o is Class1)
{
Console.WriteLine("o is Class1");
a = (Class1)o;
}
这和我做的完全一样。那么,有解决办法吗?
我能想到的是:
TypeA tmpAction = value as TypeA;
if(tmpAction == null)
{
throw new ArgumentException();
}
_action = tmpAction;
最佳答案
TypeA tmpAction = value as TypeA;
if(tmpAction == null)
{
throw new ArgumentException();
}
你给出的例子是正确的 - 如果你需要转换和使用你转换到的类型的变量,使用 as
和 null
检查而不是 是
所以你不必做两次。
关于c# - FxCop 对如何消除多余的 castclass 感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8695834/
我的服务层有如下方法 public ModuleResponse GetModules(ModuleRequest request) { var response = new ModuleRe
我构建的工具栏与大多数工具栏一样,minHeight 设置为 actionBarSize: 但是,如果我删除这个属性,就完全没有区别了。工具栏保持其 actionBarSize,即使我删除菜单并将
我已经为 SVG 和剪辑路径苦苦挣扎了一段时间。 我正在尝试创建一个三 Angular 形剪辑路径,它将覆盖照片以给顶部一个“三 Angular 形”边缘。 我试图实现与照片完全相同的效果,但三 An
我有一个带有 2 个索引的 PostgreSQL 表。其中一个索引涵盖了 website_id 和 tweet_id 列,是一个唯一的 B 树索引。第二个索引只覆盖 website_id 列,是一个非
我是一名优秀的程序员,十分优秀!