WebSrevice創建過程+LINQ學習總結

1.WebService 創建過程總結

創建一個用戶的管理驗證的接口

①打開vs2008,進入新建項目,在項目類型下的visual C#下選擇web後,在模板中選擇ASP.NET Web服務應用程序,命名項目名稱如圖.

②刪除自己生成的Service1.asmx文件,鼠標右鍵單擊項目名稱,添加->新建文件夾並命名爲WS_DataBase.
③添加鏈接      在右側的項目解決方案中選中WS_Database,依次單擊試圖->服務器資源管理器。在彈出的服務器資源管理器中,右鍵單擊“數據鏈接”彈出“選擇數據源對話框”,在
對話框中選擇“Microsoft SQl Server”->繼續,然後在服務對應文本框中鍵入“loaclhost”,在”選中或輸入一個數據庫名“下拉框中選中自己已經建立的數據庫。(數據庫的創建
④添加LINQ to SQL類 選中WS_Database文件夾,單擊鼠標右鍵,選擇”新建項“在新建項中選擇“Visual C#”下的“數據”下的“LINQ to SQL類”子節點命名爲WS_DataBaseData。
將數據庫下的UserInfo表拖入到剛剛建的WS_databaseData服務中。
⑤添加web服務   右鍵單擊項目資源管理器的項目名稱->新建項->visual C#->web->web服務,命名爲WS_Base.asmx.
⑥添加驗證用戶登錄的方法   
 

  /// <summary>
        /// 用戶登錄驗證
        /// </summary>
        /// <param name="userName">登錄用戶名</param>
        /// <param name="password">登錄密碼</param>
        /// <returns>驗證後返回true或false</returns>
        [WebMethod]
        public bool AuthenticateLogin(string userName, string password)///形參爲用戶名和登錄密碼
        {
            using(WS_DataBaseDataDataContext context = new WS_DataBaseDataDataContext())
            {
                var user = from userRow in   context.UserInfo
                           where userRow.LOGIN_NAME == userName && userRow.PASSWORD == password
                           select userRow;
                return user.Count() > 0 ? true : false;
            }
        }

⑦Webservice驗證  運行後在WebService界面選擇AuthenticateLogin 進入後輸入數據庫中存在的用戶登錄信息,返回值爲true,否則返回false。

⑧Webservice發佈  新建一個文件夾命名爲WebService,鼠標右鍵單擊項目解決方案名稱,選擇“發佈”,在”目標位置“中輸入剛剛新建文件夾的絕對路徑->完成。

打開IIS管理器,在連接中右鍵單擊網站->添加網站。在添加網站對話框中輸入自定義網站名稱,在物理路徑中輸入Webservice的絕對路徑。設置端口(大於2000),在主機

名稱中輸入localhost 確定完成。

⑨驗證Webservice  打開IE,在網址中輸入“http://localhost:2000/WS_Base.asmx”->確定。參照⑦驗證WebService是否創建成功。

2.LINQ小結

①from指定數據源和範圍變量,select指定當執行查詢時返回的序列中的元素將具有的類型和形式。

where 根據一個或多個由邏輯“與”和邏輯“或”運算符(&&或||)分割的布爾表達式篩選源元素。

②創建LINQ to SQL 類->添加服務連接,將服務器下的相關表格添加到服務器資源管理器中。

③InsertOnSubmit方法用於將處於pending insert狀態的實體添加到SQL數據表中,

SubmitChanges方法用於記錄要插入,更新或刪除的對象,並執行相應命令以實現對數據庫的更改。

實例:

[WebMethod]

public void AddUserInfo(string userName,string passWord )

{

         using(WS_DataBaseDataDataContext context = new WS_DataBaseDataDataContext())

         {

                 UserInfo user = new UserInfo()

                 {LOGIN_NAME=userName,PASSWORD=passWord};

                 context.UserInfo.InsertOnSubmit(user);

                 context.UserInfo.SubmitChanges();

         }

}

④DeleteAllOnSubmit方法用來將集合中的所有實例置於pending delete狀態,刪除SQL Server數據庫中的數據。

實例:

[WebMethod]

public void DeleteUserInfo(string userName)

{

        using(WS_DataBaseDataDataContext context = new WS_DataBaseDataDataContext())

        {

           var user = context.UserInfo.Where((userinfo)=>userinfo.LOGIN_NAME==userName);

           context.UserInfo.DeleteAllOnSubmit(user);

           context.SubmitChanges();

         }

}

發佈了18 篇原創文章 · 獲贊 8 · 訪問量 30萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章