茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    ASP.NET中 ObjectDataSource控件的DataObjectTypeName屬性
    來源:易賢網(wǎng) 閱讀:1081 次 日期:2016-08-09 15:09:47
    溫馨提示:易賢網(wǎng)小編為您整理了“ASP.NET中 ObjectDataSource控件的DataObjectTypeName屬性”,方便廣大網(wǎng)友查閱!

    一、ObjectDataSource 控件說明

    獲取或設(shè)置某個類的名稱,ObjectDataSource 控件將該類用于更新、插入或刪除數(shù)據(jù)操作中的參數(shù),而不是從數(shù)據(jù)綁定控件傳遞個別的值。

    您不用指定傳遞給 Update、Insert 和 Delete 方法的多個參數(shù),而是可以創(chuàng)建一個累計(jì)多個數(shù)據(jù)字段值的對象。僅給方法傳遞這一個對象,而不是多個參數(shù)。

    綁定到數(shù)據(jù)綁定控件的 ObjectDataSource 控件的默認(rèn)行為是,數(shù)據(jù)綁定控件為數(shù)據(jù)源中的每個參數(shù)創(chuàng)建一個 Parameter 對象。如果業(yè)務(wù)對象有很多字段,則結(jié)果方法也有很多字段。DataObjectTypeName 屬性允許您為每個數(shù)據(jù)字段都指定一個具有屬性的類型。這樣,運(yùn)行時不是給方法傳遞多個參數(shù),而是創(chuàng)建一個對象并設(shè)置它的所有屬性。這一個對象添加到方法調(diào)用的參數(shù)集合中。

    二、DataObjectTypeName 屬性的使用

    DataObjectTypeName 屬性指定的類型必須有一個不帶參數(shù)的默認(rèn)構(gòu)造函數(shù),以便 ObjectDataSource 控件可以創(chuàng)建此類型的實(shí)例。此類型還必須具有可設(shè)置的屬性,允許 ObjectDataSource 控件用數(shù)據(jù)綁定控件傳遞的值填充對象。ObjectDataSource 控件的屬性名應(yīng)該與數(shù)據(jù)綁定控件傳遞的值的參數(shù)名完全匹配。

    當(dāng)設(shè)置了 DataObjectTypeName 屬性并且 ObjectDataSource 控件與數(shù)據(jù)綁定控件關(guān)聯(lián)時,由 InsertMethod 和 DeleteMethod 屬性指定的方法必須各有一個在 DataObjectTypeName 屬性中指定的類型的參數(shù)。如果 ConflictDetection 屬性設(shè)置為 OverwriteChanges 值,則由 UpdateMethod 屬性指定的方法必須有一個在 DataObjectTypeName 屬性中指定的類型的參數(shù)。如果 ConflictDetection 屬性設(shè)置為 CompareAllValues 值,則由 UpdateMethod 屬性指定的方法必須有兩個在 DataObjectTypeName 屬性中指定的類型的參數(shù)。第一個參數(shù)包含原始值;第二個參數(shù)包含新值。

    DataObjectTypeName 屬性委托給與 ObjectDataSource 控件關(guān)聯(lián)的 ObjectDataSourceView 的 DataObjectTypeName 屬性。

    三、示例代碼

    下面的代碼示例演示如何使用 DataObjectTypeName 屬性,實(shí)現(xiàn)一個將所有參數(shù)值合并為一個對象的類型。AggregateData 類的選擇方法返回一個有兩個名為 Name 和 Number 的列的 DataTable 對象。同樣,NewData 類定義兩個讀/寫屬性 Name 和 Number。AggregateData 類的 Insert 方法帶 NewData 類型的一個參數(shù)。ObjectDataSource 的 TypeName 屬性設(shè)置為 AggregateData,DataObjectTypeName 屬性設(shè)置為 NewData。

    前臺代碼:

    <%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="Samples.AspNet.CS" %>

    <%@ Page Language="C#" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

    <script runat="server">

    </script>

    <html xmlns="http://www.w3.org/1999/xhtml" >

    <head runat="server">

      <title>ObjectDataSource - DataObjectTypeName Property Example</title>

    </head>

    <body>

      <form id="form1" runat="server">

      <div>

        <asp:DetailsView 

          ID="DetailsView1"

          runat="server"

          AllowPaging="True"

          AutoGenerateInsertButton="True"

          DataSourceID="ObjectDataSource1"

          Height="50px"

          Width="125px">

        </asp:DetailsView>

        <asp:ObjectDataSource 

          ID="ObjectDataSource1"

          runat="server"

          DataObjectTypeName="Samples.AspNet.CS.NewData"

          InsertMethod="Insert"

          SelectMethod="Select"

          TypeName="Samples.AspNet.CS.AggregateData">

        </asp:ObjectDataSource>

      </div>

      </form>

    </body>

    </html>

    后臺代碼:

    using System;

    using System.Data;

    using System.Configuration;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    namespace Samples.AspNet.CS

    {

      /// <summary>

      /// Summary description for AggregateData

      /// </summary>

      public class AggregateData

      {

        public AggregateData()

        {

        }

        static DataTable table;

        private DataTable CreateData()

        {

          table = new DataTable();

          table.Columns.Add("Name", typeof(string));

          table.Columns.Add("Number", typeof(int));

          table.Rows.Add(new object[] { "one", 1 });

          table.Rows.Add(new object[] { "two", 2 });

          table.Rows.Add(new object[] { "three", 3 });

          return table;

        }

        public DataTable Select()

        {

          if (table == null)

          {

            return CreateData();

          }

          else

          {

            return table;

          }

        }

        public int Insert(NewData newRecord)

        {

          table.Rows.Add(new object[] { newRecord.Name, newRecord.Number });

          return 1;

        }

      }

      public class NewData

      {

        private string nameValue;

        private int numberValue;

        public string Name

        {

          get { return nameValue; }

          set { nameValue = value; }

        }

        public int Number

        {

          get { return numberValue; }

          set { numberValue = value; }

        }

      }

    }

    更多信息請查看網(wǎng)絡(luò)編程
    易賢網(wǎng)手機(jī)網(wǎng)站地址:ASP.NET中 ObjectDataSource控件的DataObjectTypeName屬性
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2026上岸·考公考編培訓(xùn)報班

    • 報班類型
    • 姓名
    • 手機(jī)號
    • 驗(yàn)證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機(jī)站點(diǎn) | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報警專用圖標(biāo)