這篇文章給大家分享的是有關(guān)C#怎么實現(xiàn)航班查詢及預(yù)訂功能的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)專業(yè)提供綿陽服務(wù)器托管服務(wù),為用戶提供五星數(shù)據(jù)中心、電信、雙線接入解決方案,用戶可自行在線購買綿陽服務(wù)器托管服務(wù),并享受7*24小時金牌售后服務(wù)。具體代碼如下所示:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Data.SqlClient; namespace FrmHangBanUser { public partial class FrmUser : Form { //1.連接字符串 string connString = "Data Source = .;Initial Catalog=Ticket;User ID = sa; Pwd = sa"; //3.創(chuàng)建DataSet對象 DataSet set = new DataSet(); public FrmUser() { InitializeComponent(); } #region 窗體加載事件 ////// 窗體加載事件!! /// /// /// private void FrmUser_Load(object sender, EventArgs e) { //FlightInfo(); AirwaysInfo(); CityInfo(); } #endregion #region 出發(fā)地 ////// 出發(fā)地 /// public void AirwaysInfo() { try { //2.創(chuàng)建Connection對象 SqlConnection conn = new SqlConnection(connString); //4.創(chuàng)建DataAdapter對象 StringBuilder _sb = new StringBuilder(); _sb.AppendLine(@"SELECT Id,CityName FROM CityInfo"); SqlDataAdapter adapter = new SqlDataAdapter(_sb.ToString(), conn); //5.填充數(shù)據(jù)集 adapter.Fill(set, "CityUser"); //6.綁定數(shù)據(jù)源到ComboBox控件中 this.cboAirways.DataSource = set.Tables["CityUser"]; this.cboAirways.ValueMember = "Id"; this.cboAirways.DisplayMember = "CityName"; //7.添加行對象 DataRow row = set.Tables["CityUser"].NewRow(); row["Id"] = -1; row["CityName"] = "請選擇"; set.Tables["CityUser"].Rows.InsertAt(row, 0); //8.默認(rèn)選中一行 this.cboAirways.SelectedIndex = 0; } catch (Exception ex) { MessageBox.Show(ex.Message); } } #endregion #region 非空驗證 ////// 非空驗證 /// public void Check() { if(this.cboAirways.SelectedIndex == 0) { MessageBox.Show("請輸入你要出發(fā)的城市啊??!","操作提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question); } else if (this.cboMudidi.SelectedIndex == 0) { MessageBox.Show("請輸入你的目的地啊啊啊?。?, "操作提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); } } #endregion #region 目的地 ////// 目的地 /// public void CityInfo() { try { //2.創(chuàng)建Connection對象 SqlConnection conn = new SqlConnection(connString); //4.創(chuàng)建DataAdapter對象 StringBuilder _sb = new StringBuilder(); _sb.AppendLine(@"SELECT Id,CityName FROM CityInfo"); SqlDataAdapter adapter = new SqlDataAdapter(_sb.ToString(), conn); //5.填充數(shù)據(jù)集 adapter.Fill(set, "City"); //6.綁定數(shù)據(jù)源到ComboBox控件中 this.cboMudidi.DataSource = set.Tables["City"]; this.cboMudidi.ValueMember = "Id"; this.cboMudidi.DisplayMember = "CityName"; //7.添加行對象 DataRow row = set.Tables["City"].NewRow(); row["Id"] = -1; row["CityName"] = "請選擇"; set.Tables["City"].Rows.InsertAt(row, 0); //8.默認(rèn)選中一行 this.cboMudidi.SelectedIndex = 0; } catch (Exception ex) { MessageBox.Show(ex.Message); } } #endregion #region 航班信息 ////// 航班信息 /// public void FlightInfo() { try { //2.創(chuàng)建Connection對象 SqlConnection conn = new SqlConnection(connString); //4.創(chuàng)建DataAdapter對象 StringBuilder _sb = new StringBuilder(); _sb.AppendLine(@"SELECT F.FlightNO,A.Airways,F.LeaveTime,F.LandTime,F.Price FROM FlightInfo AS F INNER JOIN AirwaysInfo AS A ON F.AirwaysId = A.Id"); SqlDataAdapter adapter = new SqlDataAdapter(_sb.ToString(), conn); //5.填充數(shù)據(jù)集 if (set.Tables["Airways"]!=null) { set.Tables["Airways"].Clear(); } adapter.Fill(set, "Airways"); //6.綁定數(shù)據(jù)源 this.dvgUserInfo.DataSource = set.Tables["Airways"]; } catch (Exception ex) { MessageBox.Show(ex.Message); } } #endregion #region 查詢按鈕功能 ////// 查詢按鈕功能 /// /// /// private void btnChaXun_Click(object sender, EventArgs e) { Check(); Filter(); } #endregion #region 按選擇的條件篩選 ////// 按選擇的條件篩選 /// public void Filter() { try { SqlConnection conn=new SqlConnection(connString); //篩選條件 DataSet ds = new DataSet(); int city = Convert.ToInt32(cboAirways.SelectedValue); int Destination = Convert.ToInt32(cboMudidi.SelectedValue); StringBuilder sb = new StringBuilder(); if(city!=-1 && Destination!=-1) { sb.AppendLine(@"SELECT F.FlightNO,A.Airways,F.LandTime,F.LeaveTime,F.Price FROM FlightInfo AS F INNER JOIN AirwaysInfo AS A ON F.AirwaysId = A.Id"); sb.AppendFormat(@"WHERE LeaveCity = {0} AND Destination = {1}", city, Destination); } SqlDataAdapter adapter = new SqlDataAdapter(sb.ToString(),conn); adapter.Fill(ds,"User"); this.dvgUserInfo.DataSource = ds.Tables["User"]; } catch (Exception ex) { MessageBox.Show(ex.Message); } } #endregion #region 關(guān)閉按鈕功能 ////// 關(guān)閉按鈕功能 /// /// /// private void btnGuanbi_Click(object sender, EventArgs e) { DialogResult result = MessageBox.Show("你確定要退出程序嘛~","退出提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Stop); if(result == DialogResult.OK) { Application.Exit(); //退出程序了。。 - - ||| } } #endregion #region 實現(xiàn)航班選擇功能 ////// 實現(xiàn)航班選擇功能 /// private void dvgUserInfo_MouseClick(object sender, MouseEventArgs e) { txtHNo.Text = dvgUserInfo.SelectedRows[0].Cells["FlightNO"].Value.ToString(); txtGongSi.Text = dvgUserInfo.SelectedRows[0].Cells["Airways"].Value.ToString(); this.txtChuFa.Text = this.cboAirways.Text; this.txtMuDi.Text = this.cboMudidi.Text; txtShijian.Text = dvgUserInfo.SelectedRows[0].Cells["LeaveTime"].Value.ToString(); txtDaoDa.Text = dvgUserInfo.SelectedRows[0].Cells["LandTime"].Value.ToString(); txtPiaoJia.Text = dvgUserInfo.SelectedRows[0].Cells["Price"].Value.ToString(); } #endregion #region 航班預(yù)定功能 ////// 航班預(yù)定功能 /// ///public bool Insert() { Random _dom = new Random(); int no = _dom.Next(100000, 1000000); SqlConnection conn = null; string No = this.txtHNo.Text; DateTime LeaveDate = this.dateTimePicker1.Value; string Number = this.nuShang.Value.ToString(); try { conn = new SqlConnection(connString); //構(gòu)建插入學(xué)生記錄的SQL的語句 StringBuilder _sbu = new StringBuilder(); _sbu.AppendLine("INSERT INTO OrderInfo(OrderId,FlightNo,LeaveDate,Number)"); _sbu.AppendFormat("VALUES('{0}','{1}','{2}','{3}')", no, No, LeaveDate, Number); _sbu.AppendFormat("SELECT @@IDENTITY"); //創(chuàng)建Command對象 SqlCommand command = new SqlCommand(_sbu.ToString(), conn); //打開連接 conn.Open(); //調(diào)用方法 int result = command.ExecuteNonQuery(); //對返回值進(jìn)行處理 if (result > 0) { MessageBox.Show("恭喜你!預(yù)定成功!訂單編號為"+no); return true; } else { MessageBox.Show("預(yù)定失??!請重試!"); return false; } } catch (Exception ex) { MessageBox.Show(ex.Message); return false; } finally { //關(guān)閉連接 conn.Close(); } } #endregion #region 預(yù)定按鈕 /// /// 預(yù)定按鈕! /// /// /// private void btnYuDing_Click(object sender, EventArgs e) { Insert(); } #endregion } }
C#是一個簡單、通用、面向?qū)ο蟮木幊陶Z言,它由微軟Microsoft開發(fā),繼承了C和C++強(qiáng)大功能,并且去掉了一些它們的復(fù)雜特性,C#綜合了VB簡單的可視化操作和C++的高運(yùn)行效率,以其強(qiáng)大的操作能力、優(yōu)雅的語法風(fēng)格、創(chuàng)新的語言特性和便捷的面向組件編程從而成為.NET開發(fā)的選語言,但它不適用于編寫時間急迫或性能非常高的代碼,因為C#缺乏性能極高的應(yīng)用程序所需要的關(guān)鍵功能。
感謝各位的閱讀!關(guān)于“C#怎么實現(xiàn)航班查詢及預(yù)訂功能”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。