亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何修復 C# 中的“指定轉換無效”錯誤?

如何修復 C# 中的“指定轉換無效”錯誤?

C#
幕布斯6054654 2022-11-21 15:53:40
問題是,我需要在我的應用程序中顯示一個列表。我按照要求制作了一個 SQLint類型IsAdmin,在學校里他們告訴我在應用程序中制作 int show bool,更準確地說是顯示IsAdmin=True或False?但是當我啟動應用程序并通過登錄屏幕時,異常顯示為消息:“指定的演員表無效!”我需要做什么?我嘗試轉換它(bool)reader["IsAdmin"].ToInt32,但它顯示錯誤。我嘗試將其更改為整數,但它顯示了 1 和 0。     public static List<Korisnik> GetAllUsers() {            List<Korisnik> korisnici = new List<Korisnik>();            Korisnik korisnik = null;            using (SqlConnection conn = new SqlConnection()) {                conn.ConnectionString = ConfigurationManager.ConnectionStrings["ConnString"].ToString();                conn.Open();                SqlCommand command = new SqlCommand("SELECT ID, UserName, UserPass, IsAdmin FROM Users01", conn);                using (SqlDataReader reader = command.ExecuteReader()) {                    while (reader.Read()){                        korisnik = new Korisnik((int)reader["ID"], (string)reader["UserName"], (string)reader["UserPass"], (bool)reader["IsAdmin"]);                        korisnici.Add(korisnik);                    }                }            }            return korisnici;        }
查看完整描述

1 回答

?
拉丁的傳說

TA貢獻1789條經驗 獲得超8個贊

更改此行:


korisnik = new Korisnik((int)reader["ID"], 

                        (string)reader["UserName"], 

                        (string)reader["UserPass"], 

                        (bool)reader["IsAdmin"]);

...至:


korisnik = new Korisnik((int)reader["ID"], (string)reader["UserName"], 

                        (string)reader["UserPass"], 

                        ((int)reader["IsAdmin"]) > 0 ? true : false ); // convert from int to bool

轉換是必要的,因為您不能只將 an 分配int給 a bool。我假設在數據庫中,大于0意味著用戶是管理員。


我知道這是一個家庭作業問題,但展望未來,最好在數據庫中使用布爾類型(在本例中BIT),因為

  1. 他們在數據庫中占用的空間更少(效率更高)

  2. 使專欄的目的更加明顯

  3. 消除了問題中發布的轉換問題

告訴我更多關于BIT


查看完整回答
反對 回復 2022-11-21
  • 1 回答
  • 0 關注
  • 277 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號