使用Data Access Application Block 得到存儲過程的返回值_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:ASP.NET2.0服務器控件之捕獲回傳事件
      1、實現捕獲回傳事件 如果服務器控件需要捕獲來自客戶端的回傳事件,并想為該回傳事件自定義服務器端事件處理邏輯,那么控件必須實現 System.Web.UI.IPostBackEventHandler接口。下面列舉了該

      今天有位朋友問我如何在Data Access Application Block中得到存儲的過程的返回值,我才發現自己以前寫的文章中確實沒提到這方面的問題,現在來補充一下,具體的解決方法如下:

      1、首先建立一個具有返回值的存儲過程,作為示例,我就簡單的建一個存儲過程,如下:

      以下為引用的內容:create proc test
      (
      @id int
      )
      as
      declare @flag int
      select * from person where
      id=@id
      if @@rowcount > 0
      set @flag=1
      else
      set @flag=0
      return @flag

      我們要在程序中獲得這個返回值的方法如下:

      以下為引用的內容:
      [TestMethod]
      public void TestReturnValue()
      {
      Database db = DatabaseFactory.CreateDatabase();
      DbCommand dbcomm = db.GetStoredProcCommand("test");
      db.AddInParameter(dbcomm, "@id", DbType.Int32,1);
      //關鍵在這里,添加一個參數,類型為ReturnValue
      db.AddParameter(dbcomm, "@RETURN_VALUE", DbType.String, ParameterDirection.ReturnValue, "", DataRowVersion.Current, null);
      db.ExecuteNonQuery(dbcomm);
      int testvalue = (int)dbcomm.Parameters["@RETURN_VALUE"].Value;
      Assert.AreEqual(testvalue, 1);
      }

      通過上面的代碼我們就能夠在程序中獲得存儲過程的返回值了。以前寫的文章可能還有很多地方沒說到,希望能有更多的朋友提意見,謝謝!

      分享:ASP.NET的底層的工作機制介紹
      關于ASP.NET的底層的工作機制,最近園子里討論的甚是火熱。相信很多人都看過Rick Strahl先生的一篇經典之作:A low-level Look at the ASP.NET Architecture,經Rick Strahl同意,我把他的這篇

      來源:模板無憂//所屬分類:.Net教程/更新時間:2008-08-22
      相關.Net教程