2011-03-29 19 views
5

डेल्फी एक्सई में डेटास्नाप के बारे में एक नया article बताता है कि डेटा स्नैप अब पीओजेओ के जावा एंटरप्राइज़ संस्करण अवधारणा के समान सर्वर और क्लाइंट के बीच टॉब्जेक्ट-अवरोधकों को स्थानांतरित करने में सक्षम है ("सादा पुराना जावा ऑब्जेक्ट्स ")।डेटास्नाप "सादा ओल्ड डेल्फी ऑब्जेक्ट्स" और नेस्टेड ऑब्जेक्ट्स

क्या यह नई सुविधा काम करती है यदि ऐसे पॉडो में घोंसला वाले ऑब्जेक्ट-प्रकार गुण होते हैं जिन्हें प्रारंभ करने की आवश्यकता होती है, उदाहरण के लिए एक टीएसट्रिंग्स संपत्ति? क्या इन सभी उप-वस्तुओं को क्रमबद्ध किया जाएगा और उनके वर्तमान मूल्यों के साथ स्थानांतरित किया जाएगा? सिस्टम संसाधन गुणों के बारे में क्या, जैसे TFileStream, Thandle या TThread, जो एक धारावाहिक वस्तु में कोई समझ नहीं लेता है, क्या उन्हें 'serializable' के रूप में टैग नहीं किया जा सकता है?


कुछ जानकारी DocWiki में है, ये शामिल हैं: पूर्णांक, स्ट्रिंग, चार, गणन:

ये फील्ड जिसके लिए वहाँ पहले से ही एक अंतर्निहित रूपांतरण/प्रत्यावर्तन है , फ्लोट, ऑब्जेक्ट, रिकॉर्ड। निम्न प्रकारों के लिए, फ़ील्ड मानों को अनदेखा किया जाता है और उपयोगकर्ता रूपांतरण अपेक्षित है: सेट, विधि, संस्करण, इंटरफ़ेस, सूचक, dynArray, classRef, सरणी।

+0

कहाँ डेविड है जब आप उसे जरूरत है ...

+1

@Lieven वह विषय है जिस पर वह पूरी तरह से कुछ नहीं से ज्यादा जानता है पर ध्यान केंद्रित कर रहा है! –

+2

हालांकि यह स्टैक ओवरफ्लो सिस्टम के साथ किसी समस्या को हाइलाइट करता है। जब डेल्फी और एंड्रियास अन्य सभी डेल्फी प्रश्नों को छीन लिया जाता है तो प्रश्नों के उत्तर देने के लिए यहां आने की आदत में न आएं। मैं केवल उसी कारण से हर दो दिनों में एक बार रुकता हूं, मुझे बस इसकी आवश्यकता नहीं है। हमें एक प्रश्न मिलता है जो डेविड और एंड्रियास विशेषज्ञता के बाहर है और नियमित रूप से डेल्फी प्रश्नों के उत्तरदाताओं की कमी के कारण यह काफी हद तक अनुत्तरित नहीं है। – LachlanG

उत्तर

4

मैंने खुद की कोशिश नहीं की है लेकिन documentation पढ़ रहा है ऐसा प्रतीत होता है कि यह केवल कुछ भी क्रमबद्ध करेगा हालांकि आपको एक कस्टम कनवर्टर लिखने की आवश्यकता हो सकती है। उप-ऑब्जेक्ट्स वाले निम्न कोड को एक कस्टम कन्वर्टर की आवश्यकता वाले ऑब्जेक्ट का उदाहरण दिया जाता है।

type 
    TAddress = record 
    FStreet: String; 
    FCity: String; 
    FCode: String; 
    FCountry: String; 
    FDescription: TStringList; 
    end; 

    TPerson = class 
    private 
    FName: string; 
    FHeight: integer; 
    FAddress: TAddress; 
    FSex: char; 
    FRetired: boolean; 
    FChildren: array of TPerson; 
    FNumbers: set of 1..10; 
    public 
    constructor Create; 
    destructor Destroy; override; 

    procedure AddChild(kid: TPerson); 
    end; 
संबंधित मुद्दे