錯誤1無法將型別「int 」隱式轉換為「int」。存在顯式轉換 是否缺少強制轉換

時間 2022-03-13 23:35:05

1樓:嘉奇

var votes = (from v in db.voteitem where v.titleid == (int32)parse(request.

querystring["titleid"].tostring()) select v.itemcount).

sum();

2樓:雨月藍

var 是.net framework 3.5新出的一個定義變數的型別

其實也就是弱化型別的定義。

var可代替任何型別

編譯器會根據上下文來判斷你到底是想用什麼型別的你使用的 linq的sum(),最終返回的型別為 int?

所以 var votes ,votes的型別就為int?

值型別後面加問號表示可為空null(nullable 結構)nullable是.net 2.0中新提供的一種用於標明一個值型別是否可以為空的技術。

即 votes 可以為空,

一般來說,你的變數votecount 宣告的型別應該為int一個可以為空,一個不能為空,自然不能互相轉換解決有2

int? votecount = votes;//將接受引數設為可空int

votecount = votes.vaule;//將votes的值賦值給votecount,但votes為空,執行時便會出錯

最佳解決方式

votecount = -1;//或者0代表預設值if(votes != null)

錯誤 1 無法將型別「double」隱式轉換為「int」。存在一個顯式轉換(是否缺少強制轉換?) 怎麼寫?

3樓:

這裡你就要注意以下了,你報錯的位置確定一個那裡到底是不是真的要從double轉化為int。如果不是的話,你就要好好改一下。如果是的話,按照報錯資訊所說,改為強制型別轉換就行了。

強制型別轉化是這樣表示的:

int a;

double b=100;

a=(int)b

4樓:匿名使用者

double a=12.2;

要把a轉換成int 就寫成

(int)a 或者convert.toint32(a)

5樓:影月藍魔

額,什麼怎麼寫?

你可以將你現在的double型別改成int,把你的int改成double,這樣他能從int轉化為double

6樓:別駿琛

需要的。因為double比int佔得位元組多,可以使用convert函式,或先把double型別轉為string型別,然後,再轉為int型別。

7樓:匿名使用者

強制轉換,比如

double x = 3.0;

int y = (int)x;

8樓:天地英雄

double a=9.1;

int.parse(a.tostring());

9樓:崇清雅

將double型的賦值給int型的了?int,parse(double型)的就行

c# 無法將型別「double」隱式轉換為「int」。存在一個顯式轉換(是否缺少強制轉換?)

10樓:為啥啊不能重名

(int)(5.0 / 9 * (n - 32))

錯誤 無法將型別「bool?」隱式轉換為「bool」。存在一個顯式轉換(是否缺少強制轉換?)

11樓:匿名使用者

articledata.imgnews

articledata.headline

這兩個屬性加入強制 轉化。估計本身不是bool型別

12樓:龍過雞年

articledata.imgnews == true

articledata.headline == true

由於 bool? 可以為 null 值,所以 if(null) 是無法作為 true / false 判斷的,當然報錯

13樓:聞心法師

bool? 判斷不能直接if

如:bool? headline=(bool?)true;

if(headline.getvalueordefault(false))

14樓:

加一個(bool)

來強型別試試能不能成

c中無法將 int 型別隱式轉換為 string

完整 如下 using system using system.collections.generic using system.linq using system.text namespace sd a tostring c 無法將型別int隱式轉換為string怎麼解決?直接強制轉換就行了,把s...

c語言如何理解「c將字元常量視為int型別而非char型別」這句話

每一個字元常量都對應一個ascii碼值,事實上c在記憶體中儲存的也是數值。每個字元常量在ascii碼錶中都能找到它對應的十進位制和十六進位制值,所以給字元變數賦值既可以用字元,也可以用數字。 金色潛鳥 char grade 8 這是宣告 grade 是 char 型變數,它的允許數值範圍 是 1位元...

c中怎樣將型別「float」隱式轉換為「string」

convert.tostring object null convert.tostring null null 通常 object 到 string 有四種方式 假設有object obj obj.tostring convert.tostring string obj,obj as string....