This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

ObjectDataSource الفئة

Visual Studio 2010

Gets أو sets the ورقة الأنماط المتتالية (CSS) فئة that هو used إلى النمط the الصفحة-رقم الأزرار of the pager حقل.

مساحة الاسم:  System.Web.UI.WebControls
التجميع:  System.Web (في System.Web.dll)

[ToolboxBitmapAttribute(typeof(ObjectDataSource))]
public class ObjectDataSource : DataSourceControl
<asp:ObjectDataSource />

في هذا الموضوع:

مقدمة

فئة CSS المحدد بواسطة ObjectDataSourceالخاصية هو تطبيقها على الجميع أرقام الصفحات التي تم dهوplayed الكائن، فيما عدا الصفحة التي هو المحدد حاليا. يستخدم صفحة CSS للصفحة المحددة حاليا للفئات التي هو المحدد بواسطة ObjectDataSourceخاصية.

يظهر المثال التالي كيفية تعيين فئة CSS النمط الأزرار رقم الصفحة في ObjectDataSourceمن لعبة عنصر تحكم. الحصول أو تعيين عنوان URL للصورة التي يتم عرضها للصفحة-السابقة زر في الكائن. As a result, the ObjectDataSource does not support visual features such as the EnableTheming or SkinID property.

الغرض

عند تعيين خاصية إلى ، استخدم خاصية لتعيين عنوان URL للصورة التي يتم عرضها للصفحة-السابقة زر. يمكن أن تكون الصورة في أي ملف تنسيق هو المعتمدة في مستعرضات، مثل.jpg.gif،.bmp و.png. يظهر المثال التالي كيفية عرض نسخة للصفحة-السابقة زر في ObjectDataSourceمن لعبة عنصر التحكم.

الحصول أو تعيين نص الذي يتم عرضه للصفحة-السابقة زر.ObjectDataSource The TypeName property identifies the name of the class that the ObjectDataSource works with. عند ObjectDataSourceخاصية هو معينة إلى ، نص الموجود في خاصية هو يستخدم كنص بديل للصورة. يظهر المثال التالي كيفية يخصص نص الذي يظهر للصفحة-السابقة زر الحقل النداء في عنصر التحكم. ObjectCreating الكائن إلى نسخ الخصائص الحالية ObjectCreatedالكائن إلى.ObjectDisposing

ملاحظةملاحظة

The methods that are identified by the SelectMethod, UpdateMethod, InsertMethod, and DeleteMethod properties can be instance methods or static (Shared in Visual Basic) methods. هو المستخدمة بواسطة staticأسلوب لنسخ خصائص الحالي Sharedالكائن إلى ObjectCreatingالكائن الذي هو التي تم تمريرها ObjectCreatedمعلمة.ObjectDisposing

عادة ما يتم استخدام هذه القيمة إلى التحقق من أنه قد تم محدث العدد المناسب من صفوف.

يمنع SelectMethodأسلوب إلى نسخ الخصائص الجديدة التي تم إنشاؤها في فئة. المشتقة استدعاء فئة أساسية IEnumerableأسلوب حيث خصائص من DataSetأيضا يتم نسخ الفئة.IEnumerable If the method signature has parameters, you can add Parameter objects to the SelectParameters collection, and then bind them to the values that you want to pass to the method that is specified by the SelectMethod property. هو المستخدمة بواسطة ObjectDataSourceالطريقة لإنشاء عناصر واجهة المستخدم للحقل النداء، مثل الأزرار الرقمية. لمزيد من المعلومات، راجع استخدام معلمات مع التحكم ObjectDataSource.

ObjectDataSource كائن تم إنشاؤه بواسطة Selectالدالة الإنشائية هو تهيئة باستخدام اسم معلمة المحدد والسلسلة الذي يعرف ملف تعريف ارتباط الذي يربط معلمة ب. بعض الخصائص الأخرى، بما في ذلك SelectMethodو ، يتم تهيئة مع الافتراضي قيم. The method that is specified by the SelectMethod property is called automatically by controls that are bound to the ObjectDataSource when their DataBind method is called. هو المستخدمة بواسطة DataSourceIDأسلوب فئة أساسية لإنشاء فارغ الكائن. DataSourceID كائن تم إنشاؤه مع ObjectDataSourceالدالة الإنشائية هو تهيئة باستخدام اسم معلمة المحدد، ، والسلسلة الذي يعرف ملف تعريف ارتباط الذي يربط معلمة ب. يمنع DataSourceأسلوب إلى إرجاع مثيل جديد من فئة. المشتقةDataBind باستدعاء Selectأسلوب فئة. الأساسية

الكائن إلى مقارنة مع الحالي ربط البيانات باستخدام عنصر تحكم مصدر البياناتالمثيل.

The following تعليمات برمجية مثال demonstrates how إلى programmatically استخدم the أسلوب إلى تحديد a range of continuous dates تشغيل the عنصر تحكم.

ObjectDataSource إذا كان الكائن المحدد هو يساوي الحاليكائن؛ otherwهوe،. إرجاع إذا الكائنين تحتوي على نفس قيم لكافة الخصائص العامة للضبط فئة. يعمل تجزئة دالة ل UpdateMethodclass.UpdateParameters التعليمات برمجية لتجزئة ل الحالي ObjectDataSourceكائن. معالجة الأحداث التي تحدث في كائن وتنفيذ إجراء المناسب. Update معلمة هو المستخدمة من قبل أسلوب لاسترداد مجموعة ملفات تعريف الارتباط وقيمة ملف تعريف ارتباط التي ربط كائن ب. تهيئة مثيل جديد من Deleteفئة يحتوي على الاسم المحدد واكتب قاعدة البيانات حدود إلى المعين HTTP لملفات تعريف الارتباط.Insert هو المستخدمة بواسطة أسلوب لمعالجة الواحداث التي تحدث في الكائن عند واحد من الأزرار الموجودة داخل عنصر التحكم هو بالنقر فوق.

تصفية بيانات

ObjectDataSource فحص أسلوب SelectMethodخاصية DataSetالكائن الذي هو في DataTableمعلمة، وثم تنفيذ إجراء المناسب. يسرد الجدول التالي الأزرار المتوفرة من قبل ObjectDataSourceالكائن و الإجراء الذي يتم تنفيذه عند النقر فوق الزر.SqlDataReader You can set the FilterExpression property to a filtering expression by using a format string syntax and bind values in the expression to parameters that are specified in the FilterParameters collection.

التخزين المؤقت

Although the ObjectDataSource does not retain the instance of the business object across multiple requests, it can cache the result of the SelectMethod property. While the data is cached, subsequent calls to the Select method return the cached data instead of creating the business object and calling its SelectMethod using reflection. قم بعرض التعيين أرقام الصفحات السابقة وانتقاله إلى الصفحة الأولى من بيانات في تلك المجموعة. The ObjectDataSource automatically caches data when the EnableCaching property is set to true, and the CacheDuration property is set to the number of seconds that the cache stores data before the cache is discarded. CacheExpirationPolicy إذا غير منقسمة مسافات سيتم تقديمه بين عناصر التحكم؛ وإلا،SqlCacheDependency.

الميزات

ObjectDataSource التي تم إزالتها من .

يمثل التحكم بمصدر البيانات البيانات في قاعدة بيانات علائقية SQL إلى عناصر تحكم حدود البيانات.

المتطلبات

للحصول على مزيد من المعلومات حول استعلامات SQL بمعلمات و بناء الجملة الخاص بها، راجع .

استخدام SelectMethodخاصية إلى تحديد ما إذا كان غير منقسمة المسافات (HTML SelectParametersالأحرف مرجع) سيتم تقديم بين عناصر التحكم من كائن، مثل butإلىns الصفحة.

الفرز

إذا كنت تحتاج إلى تحكم أكبر في التخطيط الذي قمت بإنشائه باستخدام فئات ورقة الأنماط المتتالية (CSS) الأنماط المتتالية، يمكنك تعيين SortParameterNameإلى SelectMethod.

تصفية

Set the FilterExpression property to a filtering expression and optionally add any parameters to the FilterParameters collection to filter the data when the Select method is called. The method specified by the SelectMethod property must return a DataSet or DataTable.

ترحيل الصفحات

استخدام ‏‫مكون ‏‫مكون LINQ إلى SQLSelectMethod MaximumRowsParameterName هو عنصر تحكم مصدر بيانات ASP.NET الذي يمثل كائن الطبقة المتوسطة على علم ببيانات أو كائن واجهة بيانات إلى عناصر تحكم حدود البيانات.StartRowIndexParameterName يمكنك استخدام ObjectDataSourceالتحكم بالتزامن مع عنصر تحكم حدود بيانات إلى عرض وتحرير وفرز بيانات تشغيل صفحة ويب بقليل أو بدون رمز.SelectMethod هناك هو لا التقديم vهوual SelectMethodعنصر التحكم.ICollection

التحديثات

Set the UpdateMethod property to the name of the business object method that updates data, and include any necessary parameters in the UpdateParameters collection.

الحذف

كـ نتيجة، DeleteMethodلا يعتمد الميزات المرئية مثل كـ DeleteParametersأو خاصية.

إذا كانت قاعدة بيانات التي هو المقترنة باعتماد إجراءات المخزنة، يمكنك تعيين خاصية إلى اسم إجراء المخزن.

Set the InsertMethod property to the name of the business object method or function that inserts data, and include any necessary parameters in the InsertParameters collection.

التخزين المؤقت

Set the EnableCaching property to true, and the CacheDuration and CacheExpirationPolicy properties according to the caching behavior you want for your cached data.

ملاحظةملاحظة

عند استخدام الفئة ObjectDataSource لتحديث أو إدراج بيانات ، السلاسل التي يتم إدخالها لدى العميل لا يتم تحويلها تلقائياً من تنسيق ثقافة العميل إلى تنسيق ثقافة الخادم. على سبيل المثال ، قد تحدد ثقافة العميل DD/MM/YYYY كتنسيق التاريخ ، و قد يكون تنسيق التاريخ على الخادم MM/DD/YYYY. في هذه الحالة ، سيتم إدخال 5 أكتوبر, 2009 في عنصر التحكم TextBox كـ 5/10/2009 ولكن سيتم تفسيرها على أنها 10 مايو, 2009. يمكن إدخال 15 أكتوبر, 2009 كـ 15/10/2009 ، وسيتم رفضها كتاريخ غير صالح.

The CSS فئة that هو used إلى النمط the الصفحة-رقم الأزرار of the pager حقل.

إذا قمت بتعيين ObjectDataSourceauإلىmatically عنصر تحكم الخاصية لعنصر تحكم منضم للبيانات، بربط إلى البيانات من مصدر البيانات، كما هو مطلوب. ObjectDataSource المطورين من عنصر التحكم إلى استخدام عنصر تحكم مصدر بيانات ASP.NET مع الاحتفاظ بها هندسة تطبيقات ثلاثي المستوى.ObjectDataSourceView ObjectDataSourceView عنصر تحكم يستخدم انعكاس لإنشاء مثيلات لكائنات أعمال واستدعاء الوظائف فيها استرداد، تحديث، وإدراج وحذف بيانات. تعيين ObjectDataSourceخاصية هو الطريقة الموصى بها للحدود ObjectDataSourceViewعنصر التحكم إلى عنصر تحكم حدود بيانات.DefaultView ObjectDataSourceView تعريف خاصية الاسم فئة التي GetViewمعهم.ObjectDataSource ObjectDataSourceView عنصر تحكم يقوم بإنشاء ويلغي مثيل الفئة لكل استدعاء الأسلوب؛ لا اضغط الكائن في ذاكرة لعمر طلب ويب. لمزيد من المعلومات، راجع ObjectDataSourceView.

الصفحة-رقم الأزرار are displayed بواسطة the فئة إلى تمكين users إلى navigate directly إلى individual الصفحات.

Th هو هو اعتبار خطيرة إذا تطلب كائن الأعمال التي تستخدمها العديد من موارد أو هو otherwهوe الثمن لإنشاء وإتلاف.ObjectDataSource استخدام كائن الثمن قد لا يكون الاختيار تصميم أمثل، ولكن يمكنك عنصر تحكم دورة حياة الكائن باستخدام TypeName، ، و الأحداث. الطرق التي يتم تعريف بواسطة SelectMethod، UpdateMethod، InsertMethod، و DeleteMethodيمكن أن تكون الخصائص وظائف مثيل أو (في Visual أساسى) الأساليب. إذا كانت الأساليب ObjectDisposing(في Vهوual أساسى) ، مثيل لكائن الأعمال هو لم يتم إنشاؤها، و ، ، و وتكون الأحداث لا raهوed. إلى استرداد البيانات من كائن عمل، قم بتعيين ObjectDataSourceخاصية اسم الطريقة التي تسترد البيانات. إذا كان الأسلوب الذي لا يقوم بإرجاع كيفية: إنشاء LINQ إلى فئات SQL في تطبيق ويبأو الكائن، الكائن هو الملتفة بواسطة وقت التشغيل في مجموعة. إذا كان توقيع الأسلوب المعلمات، يمكنك إضافة ObjectDisposingالكائنات إلى مجموعة، ثم قم بيربط هذه قيم التي تريد تمريرها إلى الأسلوب الذي هو محدد بواسطة خاصية.

بناء جملة مصرحة

<asp:ObjectDataSource
    CacheDuration="string|Infinite"
    CacheExpirationPolicy="Absolute|Sliding"
    CacheKeyDependency="string"
    ConflictDetection="OverwriteChanges|CompareAllValues"
    ConvertNullToDBNull="True|False"
    DataObjectTypeName="string"
    DeleteMethod="string"
    EnableCaching="True|False"
    EnablePaging="True|False"
    EnableTheming="True|False"
    EnableViewState="True|False"
    FilterExpression="string"
    ID="string"
    InsertMethod="string"
    MaximumRowsParameterName="string"
    OldValuesParameterFormatString="string"
    OnDataBinding="DataBinding event handler"
    OnDeleted="Deleted event handler"
    OnDeleting="Deleting event handler"
    OnDisposed="Disposed event handler"
    OnFiltering="Filtering event handler"
    OnInit="Init event handler"
    OnInserted="Inserted event handler"
    OnInserting="Inserting event handler"
    OnLoad="Load event handler"
    OnObjectCreated="ObjectCreated event handler"
    OnObjectCreating="ObjectCreating event handler"
    OnObjectDisposing="ObjectDisposing event handler"
    OnPreRender="PreRender event handler"
    OnSelected="Selected event handler"
    OnSelecting="Selecting event handler"
    OnUnload="Unload event handler"
    OnUpdated="Updated event handler"
    OnUpdating="Updating event handler"
    runat="server"
    SelectCountMethod="string"
    SelectMethod="string"
    SkinID="string"
    SortParameterName="string"
    SqlCacheDependency="string"
    StartRowIndexParameterName="string"
    TypeName="string"
    UpdateMethod="string"
    Visible="True|False"
>
        <DeleteParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </DeleteParameters>
        <FilterParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </FilterParameters>
        <InsertParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </InsertParameters>
        <SelectParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </SelectParameters>
        <UpdateParameters>
                <asp:ControlParameter
                    ControlID="string"
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:CookieParameter
                    ConvertEmptyStringToNull="True|False"
                    CookieName="string"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:FormParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    FormField="string"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:Parameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:ProfileParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    PropertyName="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:QueryStringParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    QueryStringField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
                <asp:SessionParameter
                    ConvertEmptyStringToNull="True|False"
                    DefaultValue="string"
                    Direction="Input|Output|InputOutput|ReturnValue"
                    Name="string"
                    SessionField="string"
                    Size="integer"
                    Type="Empty|Object|DBNull|Boolean|Char|SByte|
                        Byte|Int16|UInt16|Int32|UInt32|Int64|UInt64|
                        Single|Double|Decimal|DateTime|String"
                />
        </UpdateParameters>
</asp:ObjectDataSource>

هذا مقطع يحتوي على الثاني بالتعليمات البرمجية الأمثلة. من أجل GridViewاستخدام المعلمات، يجب أن تطابق المعلمات الأسماء و أنواع المعلمات في توقيع الأسلوب.ObjectDataSource الأسلوب الذي هو المحدد بواسطة ObjectDataSourceخاصية هو الدعوة تلقائياً من قبل عناصر التحكم المرتبطة عند الخاصة بهم أسلوب هو تسمى.

GridView الذي يعرف بخاصية أسلوب ينفذ ObjectDataSourceتشغيل. The ObjectDataSource identifies the partially or fully qualified class name of a business object with its TypeName property and a business object method that is called to retrieve data with its SelectMethod property. لترتيب هو السبب، المجموعة من السلاسل التي بتمرير عنصر التحكم تلقائياً هو غير كافية. بدلاً من ذلك، يمكنك تعيين GridViewبوضوح يجب استدعاء خاصية، ولكنك ثم IEnumerableطريقة لحدود بيانات عنصر تحكم.SelectMethod


<%@ 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ObjectDataSource - C# Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:gridview
          id="GridView1"
          runat="server"
          datasourceid="ObjectDataSource1" />

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployees"
          typename="Samples.AspNet.CS.EmployeeLogic" />

    </form>
  </body>
</html>


يمكنك استدعاء ObjectDataSourceأسلوب برمجي في أي وقت إلى استرداد بيانات. لمزيد من المعلومات حول عناصر تحكم حدود بيانات بربط إلى عناصر تحكم مصدر بيانات، راجع .

  • Because the EmployeeLogic مجموعة يحتوي على a كائن that هو حدود إلى the محدد القيمة of the , the زر that مشغلات the تشغيل هو ممكّن فقط بعد an employee هو محدد.

  • اعتماداً تشغيل إمكانيات العمل الكائن الذي NorthwindEmployeeعنصر تحكم يعمل مع، يمكنك تنفيذ العمليات بيانات مثل التحديثات، العمليات الإدراج والحذف.

يتكون مثال التعليمة البرمجية من على NorthwindDataException، عنصر التحكم، عنصر التحكم، من إرسال زر.

إلى العمليات هذه بيانات، قم بتعيين الطريقة المناسبة في الاسم وإقران أية معلمات للعملية التي تريد إلى تنفيذها. التشغيلحدث. ل مثال، لعملية تحديث، قم بتعيين كيفية القيام بما يلي: يثّبت نموذج قواعد بياناتللمعلمات المطلوبة من خاصية إلى اسم أسلوب كائن الأعمال التي تنفذ التحديثات ثم قم بإضافة أي التعيين.

إذا ObjectDataSourceعنصر التحكم هو المقترنة بعنصر تحكم ربط بيانات، تتم تمت الإضافة المعلمات بعنصر تحكم ربط بيانات. في هذه الحالة، أنت بحاجة إلى التأكد من أسماء معلمات الأسلوب تطابق أسماء الحقول في عنصر تحكم حدود بيانات. In some examples, additional methods are added to the EmployeeLogic or NorthwindEmployee classes, or modifications are made to this set of classes to demonstrate fundamental concepts.


namespace Samples.AspNet.CS {

using System;
using System.Collections;
using System.Collections.Specialized;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Web.UI;
using System.Web.UI.WebControls;
  //
  // EmployeeLogic is a stateless business object that encapsulates
  // the operations one can perform on a NorthwindEmployee object.
  //
  public class EmployeeLogic {

    // Returns a collection of NorthwindEmployee objects.
    public static ICollection GetAllEmployees () {
      ArrayList al = new ArrayList();

      ConnectionStringSettings cts = ConfigurationManager.ConnectionStrings["NorthwindConnection"];

      SqlDataSource sds
        = new SqlDataSource(cts.ConnectionString, "SELECT EmployeeID FROM Employees");

      try {

        IEnumerable IDs = sds.Select(DataSourceSelectArguments.Empty);

        // Iterate through the Enumeration and create a
        // NorthwindEmployee object for each ID.
        foreach (DataRowView row in IDs) {
          string id = row["EmployeeID"].ToString();
          NorthwindEmployee nwe = new NorthwindEmployee(id);
          // Add the NorthwindEmployee object to the collection.
          al.Add(nwe);
        }
      }
      finally {
        // If anything strange happens, clean up.
        sds.Dispose();
      }

      return al;
    }
    public static NorthwindEmployee GetEmployee(object anID) {
      return new NorthwindEmployee(anID);
    }

    public static void UpdateEmployeeInfo(NorthwindEmployee ne) {
      bool retval = ne.Save();
      if (! retval) { throw new NorthwindDataException("UpdateEmployee failed."); }
    }

    public static void DeleteEmployee(NorthwindEmployee ne) { }

  }

  public class NorthwindEmployee {

    public NorthwindEmployee () {
      ID = DBNull.Value;
      lastName = "";
      firstName = "";
      title="";
      titleOfCourtesy = "";
      reportsTo = -1;
    }

    public NorthwindEmployee (object anID) {
      this.ID = anID;

      ConnectionStringSettings cts = ConfigurationManager.ConnectionStrings["NorthwindConnection"];

		SqlConnection conn = new SqlConnection (cts.ConnectionString);
      SqlCommand sc =
        new SqlCommand(" SELECT FirstName,LastName,Title,TitleOfCourtesy,ReportsTo " +
                       " FROM Employees " +
                       " WHERE EmployeeID = @empId",
                       conn);
      // Add the employee ID parameter and set its value.
      sc.Parameters.Add(new SqlParameter("@empId",SqlDbType.Int)).Value = Int32.Parse(anID.ToString());
      SqlDataReader sdr = null;

      try {
        conn.Open();
        sdr = sc.ExecuteReader();

        // This is not a while loop. It only loops once.
        if (sdr != null && sdr.Read()) {
          // The IEnumerable contains DataRowView objects.
          this.firstName        = sdr["FirstName"].ToString();
          this.lastName         = sdr["LastName"].ToString();
          this.title            = sdr["Title"].ToString();
          this.titleOfCourtesy  = sdr["TitleOfCourtesy"].ToString();
          if (! sdr.IsDBNull(4)) {
            this.reportsTo        = sdr.GetInt32(4);
          }
        }
        else {
          throw new NorthwindDataException("Data not loaded for employee id.");
        }
      }
      finally {
        try {
          if (sdr != null) sdr.Close();
          conn.Close();
        }
        catch (SqlException) {
          // Log an event in the Application Event Log.
          throw;
        }
      }
    }

    private object ID;

    private string lastName;
    public string LastName {
      get { return lastName; }
      set { lastName = value; }
    }

    private string firstName;
    public string FirstName {
      get { return firstName; }
      set { firstName = value;  }
    }

    private string title;
    public String Title {
      get { return title; }
      set { title = value; }
    }

    private string titleOfCourtesy;
    public string Courtesy {
      get { return titleOfCourtesy; }
      set { titleOfCourtesy = value; }
    }

    private int    reportsTo;
    public int Supervisor {
      get { return reportsTo; }
      set { reportsTo = value; }
    }

    public bool Save () {
      return true;
    }
  }

  internal class NorthwindDataException: Exception {
    public NorthwindDataException(string msg) : base (msg) { }
  }
}


يتم تأمين العملية الجزئية لأي عضو عمومي ثابت (مشترك في Visual Basic) من هذا النوع. لن يتم ضمان تأمين العملية الجزئية لأي عضو مثيل.

نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0
إظهار: