2011-08-17 2 views
12

नियंत्रण 'विशेषता से डेटासोर्सिड और डेटासोर्स का अंतर क्या है? क्या मैं उन्हें एक दूसरे के साथ उपयोग कर सकता हूं?एएसपी.नेट - डेटासोर्सिड और डेटासोर्स का अंतर क्या है?

जब मैं डिजाइन समय पर DataSource संपत्ति सेट करने की कोशिश करता हूं, इसे एएसपीएक्स पेज पर टाइप करके, मुझे एक अपवाद मिलता है जो कहता है "डेटासोर्स" संपत्ति को घोषणात्मक रूप से सेट नहीं किया जा सकता है। " लेकिन जब मैं DataSource को बदलने के लिए प्रॉपर्टी विंडो का उपयोग करता हूं, तो इसमें कोई अपवाद नहीं होता है।

+1

http://blog.tylerholmes.com/2008/06/datasource-vs-datasourceid-internals.html –

उत्तर

10

DataSource की स्थापना करके datasourceID स्पष्ट करने के लिए है वास्तविक डेटा स्रोत ऑब्जेक्ट जो इस तरह के रूप में प्रदान की ObjectDataSource डेटा स्रोत नियंत्रण (नेट किया जा सकता है को संदर्भित करता है , एसक्लडाटासोर्स) या वास्तविक डेटा ऑब्जेक्ट्स जैसे डाटाटेबल, ऑब्जेक्ट्स का संग्रह इत्यादि।

DataSourceID .NET प्रदान किए गए डेटा स्रोत नियंत्रण के लिए स्ट्रिंग पहचानकर्ता है और यह गुण मौजूद है ताकि डेटा-बाध्य नियंत्रण और संबंधित डेटा स्रोत को जोड़ा जा सके मार्कअप में डिजाइन समय। आंतरिक रूप से, प्रदान की गई आईडी का उपयोग करके नियंत्रण वास्तविक डेटा स्रोत नियंत्रण के लिए देखेगा।

6

DataSourceID को ObjectDataSourceXmlDataSource जैसे अन्य डेटा स्रोत नियंत्रण की एक आईडी असाइन की जा सकती है।

डेटा स्रोत सिंहावलोकन नियंत्रित करता है:

http://msdn.microsoft.com/en-us/library/ms227679.aspx

रूप में अच्छी तरह डेटा स्रोत नियंत्रण के विभिन्न अन्य प्रकार के होते हैं या आप अपने स्वयं के विकसित कर सकते हैं।

Datasource प्रयोग किया जाता है जब आप सीधे स्रोत जैसे DataSet या एक DataTable

1

DataSource: हो जाता है या वस्तु डेटा-बाउंड नियंत्रण जहाँ से डेटा आइटम की अपनी सूची को पुन: प्राप्त सेट को नियंत्रित करने देना चाहते हैं। (BaseDataBoundControl से विरासत।)

DataSourceID: नियंत्रण के आईडी को प्राप्त या सेट करता है जिससे डेटा-बाध्य नियंत्रण डेटा आइटम की अपनी सूची पुनर्प्राप्त करता है। (DataBoundControl से विरासत।)

दूसरा, उन्हें interchangeably का उपयोग किया जा सकता है, लेकिन आपको ध्यान से उपयोग करना होगा। जैसे आप पहली बार dataSourceID आवंटित और फिर उसके बाद DataSource उपयोग करने से पहले DataSource, का उपयोग करना चाहते हैं, तो आप ControlID.DataSourceID = ""

संबंधित मुद्दे