पृष्ठभूमि वस्तु के लिए:मुद्दे स्थापना RDLC डेटा स्रोत
मैं ASP.Net सी # MVC के लिए एक एक्सेस डेटाबेस आवेदन परिवर्तित करने का काम सौंपा गया है। यह मेरा पहला एमवीसी एप्लीकेशन है।
10 रिपोर्टें हैं जिन्हें परिवर्तित करने की आवश्यकता है। हम आरडीएलसी फाइलों और रिपोर्टव्यूअर का उपयोग कर रहे हैं। मैं सभी नवीनतम पैच के साथ विजुअल स्टूडियो 2010 का उपयोग कर रहा हूं। हम मौजूदा SQL डेटाबेस द्वारा पॉप्युलेट किए गए SQL सर्वर डेटाबेस पर हुक कर रहे हैं, इसलिए तालिका संरचना पत्थर में बहुत अधिक सेट है, अन्यथा हमें 10 वर्षों के डेटा को कन्वर्ट करने की कोशिश करनी होगी।
मैंने दो रिपोर्टों को पूरा कर लिया है। अंतिम रिपोर्टों के लिए अधिक प्रसंस्करण की आवश्यकता होती है, और डेटाबेस से डेटा प्रदर्शित न करें। ऐसा करने का सबसे आसान तरीका सी # ऑब्जेक्ट बनाना और सभी प्रोसेसिंग सर्वर-साइड करना होगा, फिर परिणाम प्रदर्शित करने के लिए आरडीएलसी का उपयोग करें।
अंक
समस्या मैं आ रही हैं कि विजुअल स्टूडियो वस्तुओं मैं संभावित datasources के रूप में बना लिया है पहचान नहीं होगा। हर बार जब मैं "डेटासेट जोड़ने" का प्रयास करता हूं तो यह "डेटासोर्स कॉन्फ़िगरेशन विज़ार्ड" लाता है और केवल SQL सर्वर डेटाबेस को संभावित डेटा कनेक्शन के रूप में प्रदान करता है। मुझे पता है कि एक स्क्रीन है जो मौजूद है जो आपको किसी ऑब्जेक्ट को अपने डेटासेट के रूप में चुनने की अनुमति देती है, लेकिन मुझे वह स्क्रीन कभी नहीं दिखाई देती है।
यहाँ वस्तुओं (प्रसंस्करण कार्यों स्पष्टता के लिए निकाला गया) कर रहे हैं:
public class TurnAroundVal
{
// Registration Package information
public string dataType { get; set; }
// Calculated totals; values only set through constructor or calculation function
public int packageCount { get; private set; }
public int dayCount { get; set; }
public double avgTurnAround { get; private set; }
public int upperRange { get; private set; }
public int lowerRange { get; private set; }
}
public class TurnAroundVals
{
// Public Variables
public IEnumerable<TurnAroundVal> TurnArounds { get; private set; }
public DatePass dates { get; set; }
public int pkgTotal { get; private set; }
public double dayTotal { get; private set; }
public double avgAllTurnArounds { get; private set; }
}
मैं भी "TurnAroundVal" की IEnumerable उपयोग करने के लिए एक डेटा स्रोत के रूप में तैयार होगा, और सिर्फ पारित दिनांक, पूर्णांक, और युगल पैरामीटर के रूप में। या तो काम करेगा।
प्रश्न
वहाँ दृश्य स्टूडियो 2010 में एक सेटिंग है कि मैं RDLC डिजाइनर वस्तुओं मैं बनाया देखने के लिए अनुमति देने के लिए याद कर रहा हूँ है? क्या मैं यह सोचने में भी गलत हूं कि यह परिभाषित कक्षाओं के साथ काम करेगा?
उत्तर
दिए गए सुझाव के सभी मददगार थे, लेकिन अंत में क्या यह मेरे लिए काम मिल गया एक ही समाधान में एक अस्थायी गैर-वेब परियोजना बनाने और वहाँ RDLC बनाने के लिए किया गया था। जब मैं एक डेटासेट जोड़ने के लिए गया, तो यह एक विकल्प के रूप में "ऑब्जेक्ट्स" दिखाता है। आपको अपनी वेब प्रोजेक्ट में एक संदर्भ जोड़ना होगा ताकि आपकी ऑब्जेक्ट्स दिखाई दे सकें, लेकिन फिर आप जो चाहें उसे चुन सकते हैं और आरडीएलसी में इसका इस्तेमाल कर सकते हैं। इसके बाद, आप आरडीएलसी फ़ाइल को अपनी वेब प्रोजेक्ट में खींच सकते हैं, अस्थायी परियोजना को हटा सकते हैं, और आप जाने के लिए अच्छे हैं। बस याद रखें कि आपको कोड में मैन्युअल रूप से डेटा स्रोत जोड़ना होगा, और उन्हें आरडीएलसी में निर्दिष्ट जैसा ही नाम दिया जाना चाहिए।
पहले से ही यह सब कोशिश की है, लेकिन यह अभी भी अच्छी जानकारी है। मैंने जो किया वह घायल हो गया, उसी समाधान में एक नई गैर-वेब प्रोजेक्ट तैयार कर रहा था, जिसमें आरडीएलसी बनाया गया था, फिर इसे वेब प्रोजेक्ट में खींचें/छोड़ दें। ऐसा करने के लिए शायद कम कमजोर तरीका है, लेकिन यह काम किया। – War2d2