2012-07-20 16 views
5

My Questionफ़ाइल अपलोड नियंत्रण दूसरे क्लिक पर काम कर रहा है लेकिन पोस्ट फ़ाइल को सहेजने का पहला प्रयास नहीं है?

मैं अपने आप को जवाब देने में कामयाब रहा, हालांकि कार्यक्षमता के एक ही सेट में एक और समस्या है। किसी कारण से पोस्ट की गई सहेजी गई घटना की पहली पोस्टबैक ओल ऑब्जेक्ट को किसी ऑब्जेक्ट त्रुटि के उदाहरण पर सेट नहीं करती है, लेकिन फ़ाइल अपलोड करने और मेरे सहेजने की घटना को फायर करने के दूसरे प्रयास पर (बाइट [] में परिवर्तित होती है एसक्यूएल सर्वर बीएलओबी के रूप में संग्रहीत) यह सब कुछ करने के लिए किया जाता है।

Same problem here

लेकिन मैं कारण को दूर करने और समस्या का इलाज नहीं की एक फर्म आस्तिक हूँ AJAX AsyncUpload नियंत्रण का उपयोग करने का एक अच्छा सुझाव है। मैं एएसपीनेट इत्यादि की मेरी समझ को सर्वोत्तम रूप से जारी रखने के लिए इस मार्ग को जारी रखूंगा।

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

आपके विचार लोग क्या हैं?

उत्तर

12

समस्या (जैसा कि यहां देखा गया है http://forums.asp.net/t/1060363.aspx) ऐसा लगता है जब आप आसपास के पैनल पर दृश्यता संपत्ति का उपयोग करते हैं (जैसा कि ऐसा लगता है कि आप जुड़े प्रश्न से हैं)।

सुझाव दिया समाधान का बजाय सीएसएस दृश्यता का उपयोग करें ताकि इस का उपयोग यह अदृश्य बनाने के लिए है - धागे से इस बात के लिए

<asp:Panel ID="pnlUpload" runat="server" class="workerDetailsPanelLeft" style="display:none"> 

स्पष्टीकरण है

अपने कंटेनर अदृश्य करने के लिए सेट है, तो अपलोड नियंत्रण वास्तव में एचटीएमएल के रूप में प्रस्तुत नहीं किया जाता है, जिससे फॉर्म का एनटीपीपी enctype = "मल्टीपार्ट/फॉर्म-डेटा" पर सेट नहीं होता है, जिससे फ़ाइल अपलोड नियंत्रण सर्वर को चयनित फ़ाइल को वापस पोस्ट नहीं करता है। , या मैन्युअल enctype

तो एक और वैकल्पिक हल को बदलने के लिए किया जाएगा की स्थापना द्वारा: वैकल्पिक हल या तो (दर्शनीय = false की जगह में कोई भी प्रदर्शित करने के लिए अपनी शैली की स्थापना करके) सुनिश्चित करें कि FileUpload नियंत्रण HTML के लिए प्रदान की गई है बनाने के लिए है इस

<form id="form1" enctype="multipart/form-data" runat="server"> 

पर आपका फॉर्म टैग मुझे लगता है कि इनमें से किसी एक को आपकी समस्या का समाधान करना चाहिए।

+1

उत्कृष्ट, अब मैं समझता हूं। इसे इंगित करने के लिए बहुत बहुत धन्यवाद। मैंने इसे स्पष्ट रूप से अनदेखा किया। +1 और उत्तर :-) – dotnetnewb

4

आप पेज_लोड ईवेंट पर कोड के माध्यम से एक ही काम कर सकते हैं .. इस कोड को दर्ज करें और यह समस्या हल करेगा।

Page.Form.Attributes.Add("enctype", "multipart/form-data"); 
संबंधित मुद्दे