熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

C#高級編程:會議登記 Web服務[2]

2013-11-13 10:49:44  來源: .NET編程 
    ——此文章摘自《C#高級編程(第版)》定價元 特價元 購買

    上面代碼使用與Application_Load()相同的語法來訪問dataset這樣就可以簡單地將數據轉換為正確的類型並返回

    AddEvent()方法稍微有點復雜從概念上講需要做下面的事情
    ● 接受來自客戶的事件數據
    ● 使用那些數據創建SQL INSERT語句
    ● 連接數據庫並且執行SQL語句
    ● 如果添加成功就需要刷新Application[ds]中的數據
    ● 把成功或失敗的通知返回給客戶(如果有必要允許客戶刷新他們的DataSet)

    從現在開始把所有的字段作為字符串來接受
          [WebMethod]
          public int AddEvent(String eventName String eventRoom
                              String eventAttendees String eventDate)
          {
          }

    下面聲明訪問數據庫連接數據庫以及執行查詢時需要的對象完成這些工作所使用的代碼與PCSWebApp中的代碼相似(此外這裡也需要連接字符串但是並沒有給出)
          [WebMethod]
          public int AddEvent(String eventName String eventRoom
                              String eventAttendees String eventDate)
          {
             SystemDataOleDbOleDbConnection oleDbConnection;
             SystemDataOleDbOleDbDataAdapter daEvents;
             DataSet ds;
     
             oleDbConnection = new SystemDataOleDbOleDbConnection();
             oleDbConnectionConnectionString = @ ;
             String oleDbCommand = INSERT INTO Events (Name Room AttendeeList EventDate) VALUES ( + eventName + + eventRoom + + eventAttendees + +  eventDate + );
             SystemDataOleDbOleDbCommand insertCommand =
                   new SystemDataOleDbOleDbCommand(oleDbCommand
                                                      oleDbConnection);
             oleDbConnectionOpen();
             int queryResult = insertCommandExecuteNonQuery();
          }

    如以前一樣使用queryResult保存受查詢影響的行數如果queryResult的結果是則說明查詢成功然後就可以對數據庫進行新的查詢以便刷新DataSet中的Events表在執行更新時必須把應用程序數據加鎖確保在更新過程中其他線程不可以訪問Application[ds]使用Application對象的Lock()和Unlock()方法可以實現對數據的加鎖和解鎖
          [WebMethod]
          public int AddEvent(String eventName String eventRoom
                              String eventAttendees String eventDate)
          {
            
             int queryResult = insertCommandExecuteNonQuery();
             if (queryResult == )
             {
                daEvents = new SystemDataOleDbOleDbDataAdapter(
                               SELECT * FROM Events oleDbConnection);

[]  []  []  


From:http://tw.wingwit.com/Article/program/net/201311/14591.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.