2010-03-31 15 views
10

में बाल ऑब्जेक्ट्स मैं स्टूडियो 2010 रिपोर्ट में फ़ील्ड एक्सप्रेशन में उप-ऑब्जेक्ट को संदर्भित करने का प्रयास कर रहा हूं। यह पूर्व संस्करणों में काम करता था। जब खाता गुणों के साथ एक और वस्तु का संदर्भ देता है तो निम्नलिखित काम करने के लिए उपयोग किया जाता है।rdlc (स्टूडियो 2010 आरसी)

=Fields!Account.Value.Name 

एक ही अभिव्यक्ति वाक्यविन्यास अब काम नहीं करता (नाम बच्चे वस्तु की संपत्ति है, खाता पैरेंट ऑब्जेक्ट है)। कैसे मैं स्टूडियो में एक RDLC में रिपोर्टिंग सेवा 2010

धन्यवाद

+1

मैं एक ही चीज़ में चल रहा हूं। मुझे समझ में नहीं आता कि उन्होंने इस कार्यक्षमता को दूर क्यों लिया, बहुत परेशान! – AKoran

+1

स्पष्ट रूप से वीएस 2010 एसपी 1 में तय किया जाएगा, जब तक कि आपकी कक्षाएं सार्वजनिक और क्रमबद्ध हों। –

उत्तर

4

में एक उप ऑब्जेक्ट के गुणों को संदर्भित करते हैं दुर्भाग्य से आप नहीं (अभी तक), और काम के आसपास गुण बनाने के लिए है सकते हैं मूल वस्तु में।

और जानकारी:

5

मैं पुष्टि कर सकता है कि इस बग VS2010 SP1 में तय किया गया है ... लेकिन आप सभी प्रासंगिक के चिह्नित करने के लिए है Serializable के रूप में वर्गों।

आप जो काम कर रहे संस्करण से पता चलता इस साइट पर एक नमूना परियोजना पा सकते हैं: http://wraithnath.blogspot.com/2011/04/reportviewer-object-datasource-nested.html

लेखक भी कहा गया है कि अपनी कक्षाओं एक parameterless निर्माता की आवश्यकता होगी, लेकिन मैं यह एक डिफ़ॉल्ट निर्माता के बिना वर्गों का उपयोग काम करने के लिए मिल गया है । फिर भी, अगर आपने सब कुछ को क्रमबद्ध के रूप में चिह्नित किया है और अभी भी "# त्रुटि" संदेश देख रहे हैं, तो इसे पैरामीटर रहित कन्स्ट्रक्टर के साथ आज़माएं।

1

यह शायद एक उचित उत्तर नहीं है, लेकिन जब मुझे लगता है कि इस विषय पर सामग्री की कमी मुझे मेरे निष्कर्षों के बारे में पोस्ट करने के लिए प्रोत्साहित करती है।

मान लें कि अगर मेरे पास मूल वस्तु के भीतर बच्चों की नेस्टेड सूची है। उदाहरण के लिए यह एक बहुत ही सामान्य स्थिति है, यदि आपके पास ऑर्डर ऑब्जेक्ट (पैरेंट) है, तो आपके पास ऑर्डर आइटम (बच्चों) की एक सूची होगी, आप rdlc के साथ सभी जानकारी कैसे प्रदर्शित करते हैं? Subreport का उपयोग कर दो तरीके हैं, और 2 समूह का उपयोग करना है। मुझे एहसास है कि वे दोनों एक ही चीज़ को प्राप्त कर सकते हैं जो एक रिपोर्ट पर विवरण की सूची प्रदर्शित कर रहा है।

public class Order{ 
    public int OrderID {get; set;} 
    public string Descrpition {get; set;} 
    public List<OrderItem> OrderItems {get; set;} 
} 
public class OrderItem{ 
    public int OrderItemID {get; set;} 
    public decimal Price{get; set;} 
} 

समूह का उपयोग करना सबसे आसान तरीका है। समूहबद्ध करने के साथ, आपको एक नया डेटाटाइप बनाना होगा जिसमें माता-पिता और बच्चों के गुण शामिल हों। मेरा मानना ​​है कि इस तरह वस्तुओं की बहु-स्तर की नेस्टेड सूची के साथ भी काम करता है। यह बेवकूफ लग सकता है, लेकिन समय के सबसे तुम वैसे भी एक नया डेटाप्रकार बनाने के लिए है, क्योंकि प्रकार आप रिपोर्ट पर प्रदर्शित करने के लिए की जरूरत है व्यापार वस्तुओं से अलग हैं:

public class OrderReport{ 
    public int OrderID {get; set;} 
    public string Description {get; set;} 
    public int OrderItemID {get; set;} 
    public decimal Price {get; set;} 
} 

फिर RDLC पर, तुम बस है अभिभावक पंक्ति समूह और एक बाल पंक्ति समूह बनाने के लिए, माता-पिता को ऑर्डर आईडी द्वारा समूहीकृत किया जाना चाहिए, बाल पंक्ति समूह को "विवरण दिखाएं" पर सेट किया जाना चाहिए। मुझे लगता है कि आप वस्तुओं की बहु-स्तर की नेस्टेड सूची प्राप्त करने के लिए यह कई बार कर सकते हैं।

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