SqlDataReader指定轉(zhuǎn)換無效的解決方法
SqlDataReader指定轉(zhuǎn)換無效的解決方法,具體內(nèi)容如下

//獲取最新顯示順序數(shù)據(jù)
string str = string.Format(@"if exists(select ShowOrder from GIS_FuncDefaultLayer where GISFuncId = {0})
select max(ShowOrder) as ShowOrder from GIS_FuncDefaultLayer where GISFuncId ={0}
else select '0' as ShowOrder", GISFuncId);
IDataReader dataReader = helper.ExecuteReader(CommandType.Text, str);
if (dataReader.Read())//判斷當(dāng)前功能Id下是否有數(shù)據(jù)
{
//讀取賦值
try
{
showOrder = dataReader.GetInt32(0);
}
catch (Exception ex)
{
HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(ex.Message) };
return result;
}
}
dataReader.Close();//關(guān)閉
SqlDataReader 自帶的GetInt32(以及其他的比如GerString等)方法
只是獲取數(shù)據(jù)庫中對(duì)應(yīng)數(shù)據(jù)類型的列,并不具有類型轉(zhuǎn)化的功能,所以不能這樣使用
解決方法有兩種
1.如需要返回int類型的,那么數(shù)據(jù)庫中的字段就定義為int類型,則用GetInt32可行
2.若數(shù)據(jù)庫中定義的不是int類型,又想要返回int類型的,那么就先用數(shù)據(jù)庫中對(duì)應(yīng)的類型Get出來,然后轉(zhuǎn)化
如int.Parse(selectunitidread.GetString(0))
如果不需要返回int類型的,就如你上面寫的到的,最后是又轉(zhuǎn)化為了string
而數(shù)據(jù)庫中的類型就是與string對(duì)應(yīng)的varchar,那么你可以直接給下面的賦值
如:rmoutbackinfo.UnitId = selectunitidread.GetString(0)
而不用再轉(zhuǎn)化為string
//解決 showOrder=int.Parse(dataReader.GetString(0));
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ASP.net中保持頁面中滾動(dòng)條狀態(tài)的代碼
在ASP.Net頁面中,每次回發(fā)都會(huì)造成頁面回到頂部,那么怎樣讓它保持刷新頁面前的位置上,使得頁面提交后還在原來的位位置。2011-06-06
HttpRequest Get和Post調(diào)用其他頁面的方法
HttpRequest Get和Post調(diào)用其他頁面的方法,需要的朋友可以參考一下2013-03-03
ASP.NET中readonly與const的區(qū)別詳解
如果你學(xué)過ASP.NET理論知識(shí)都會(huì)知道,在ASP.NET中 readonly和const修飾的變量都是恒量,它們的值是不可以被修改的。但是他們之間到底有什么區(qū)別?下面小編就它們的區(qū)別用例子來進(jìn)行說明。2015-10-10
.Net中的Http請(qǐng)求調(diào)用詳解(Post與Get)
在我們服務(wù)端調(diào)用第三方接口時(shí),如:支付寶,微信支付,我們服務(wù)端需要模擬http請(qǐng)求,下面這篇文章主要給大家介紹了關(guān)于.Net中Http請(qǐng)求調(diào)用(Post與Get)的相關(guān)資料,需要的朋友可以參考下2022-09-09
.NET?高性能緩沖隊(duì)列實(shí)現(xiàn)?BufferQueue的操作過程
BufferQueue 是一個(gè)用 .NET 編寫的高性能的緩沖隊(duì)列實(shí)現(xiàn),支持多線程并發(fā)操作,這篇文章主要介紹了.NET?高性能緩沖隊(duì)列實(shí)現(xiàn)?BufferQueue,需要的朋友可以參考下2024-07-07
asp.net網(wǎng)站底部的版權(quán)信息實(shí)現(xiàn)代碼且可維護(hù)
網(wǎng)站底部的版權(quán)信息在特殊情況還是比較重要的所以在實(shí)現(xiàn)的時(shí)候一定要盡可能的做到可維護(hù)性,接下來將介紹一些技巧可達(dá)到可維護(hù)效果,感興趣的你可不要錯(cuò)過了哈2013-02-02
asp.net實(shí)現(xiàn)簡單分頁實(shí)例
這篇文章主要介紹了asp.net實(shí)現(xiàn)簡單分頁的方法,實(shí)例分析了asp.net分頁的基本原理與實(shí)現(xiàn)流程,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01
Repeater全選刪除和分頁實(shí)現(xiàn)思路及代碼
Repeater控件想必熟悉.net web開發(fā)的人員是很了解不過的了,接下來將與大家共同學(xué)習(xí)下它的全選刪除和分頁,感興趣的你可不要錯(cuò)過了哈,希望可以幫助到你2013-03-03
.net 像hao123的快捷郵箱登陸的實(shí)現(xiàn)代碼
.net實(shí)現(xiàn)的像hao123的快捷郵箱登陸的代碼,需要的朋友可以參考下。2010-03-03

