为什么根据ReSharper将double-int-cast转换为冗余的动态变量?

时间:2016-02-03 10:05:37

标签: c# .net casting resharper

我有一个动态viewbag变量的赋值,必须是一个整数(是,整数,没有一个小数部分,这打破了我的库使用):

ViewBag.Autosubmit = (int)(SomeDate.Subtract(new DateTime(1970, 1, 1)).TotalSeconds);

TimeSpan.TotalSeconds返回double,并使用它,我将其投射到int。但ReSharper说,向int施放是多余的。如果我没有强制转换,则该数字保持为双精度,而我的页面无效。

为什么ReSharper告诉我演员是多余的?

1 个答案:

答案 0 :(得分:-1)

我认为这是因为就c#而言,演员阵容是多余的..你正在施放它但是把它放到一个动态中,如果它是一个int或一个双子就不关心..

如果你明确地将它转换为int ..就像Lasse V. Karlsen提到的那样

int autoSubmit = (int)(SomeDate.Subtract(new DateTime(1970, 1, 1)).TotalSeconds);
ViewBag.Autosubmit = autoSubmit;

我相信这条消息会消失。