2012-01-23 18 views
8

मैं एक एएसपीनेट वेब ऐप लिख रहा हूं जिसमें FileUpload नियंत्रण का उपयोग शामिल है।फ़ाइल अपलोड के साथ फ़िल्टर फ़ाइल एक्सटेंशन

अभी, यह विशेष FileUpload नियंत्रण केवल .zip या .gz फ़ाइल प्रकारों की अपेक्षा करता है। फ़ाइल का ग़लत प्रकार अपलोड की गई है, तो एक त्रुटि संदेश उपयोगकर्ता के लिए प्रदर्शित किया जाता है। इस कार्यशीलता को पहले से ही लागू किया गया है।

मैं जो करना चाहता हूं वह उस दृश्य फ़ाइल प्रकार को फ़िल्टर करना है जिसे उपयोगकर्ता "ब्राउज़" पर क्लिक करते समय देखता है।

आपने निम्न के जैसा फ़ाइल खोलने वाला संवाद देखा होगा।
enter image description here

मैंने उस क्षेत्र को घेर लिया है जो फ़ाइल एक्सटेंशन फ़िल्टर का प्रतिनिधित्व करता है।

यह एक सुविधा है, इसलिए आम है कि मैं उम्मीद यह वर्तमान FileUpload नियंत्रण करने के लिए, लेकिन कुछ ऑनलाइन खोज करने के बाद बनाया जाना है, मैं कुछ पदों है कि कहते हैं कि यह नहीं किया जा सकता मिल गया है।

उन पदों अधिक से अधिक 2 साल पहले, 2009 से थे।

अब, मेरा सवाल है: क्या वर्तमान Asp.Net 4.0 इस सुविधा का समर्थन करता है ?, और यदि ऐसा नहीं होता है, तो क्या आप चाहते हैं कि कार्यक्षमता प्राप्त करने के लिए आप किसी भी सरल समाधान के बारे में जानते हैं।

मैं फिर से यह इंगित करना चाहता हूं कि मैं यह सत्यापित करने में सक्षम हूं कि उपयोगकर्ता समर्थित फ़ाइल प्रकार चुनता है या नहीं। सभी मैं तलाश कर रहा हूँ एक कॉस्मेटिक परिवर्तन, कि बाहर अनावश्यक फ़ाइल प्रकारों फिल्टर करेगा खुले फ़ाइल संवाद में है।

+0

यह डेस्कटॉप एप्लिकेशन के लिए उपलब्ध है, लेकिन अभी तक वेब अनुप्रयोगों के लिए नहीं है! –

+0

तथाकथित "डुप्लिकेट" पर स्वीकृत उत्तर ऐसा लगता है कि यह सत्यापन करता है, लेकिन फ़िल्टर नहीं करता है। –

+1

मैं डुप्लिकेट के उत्तर से सहमत हूं कि आप जो खोज रहे हैं वह नहीं है। – Jon

उत्तर

5

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

यह सवाल पहले से ही stackoverflow.Please में पूछा क्लिक filter the file type with the file upload control

+0

मैंने इसे देखा, लेकिन माइक्रोसॉफ्ट ने अपने नेट फ्रेमवर्क 4.0 को जारी किया है, उस प्रश्न के कुछ सप्ताह बाद, और अधिकांश उत्तरों पोस्ट किए जाने के बाद। –

+0

नीचे दिया गया यह उत्तर ब्राउज़र के उप-समूह के लिए काम करता है: https://stackoverflow.com/a/23589176/12601 – Greg

0

आप ASP.NET FileUpload नियंत्रण

मेरा मानना ​​है कि आप इस समाधान

Validate File Extension for ASP.NET FileUpload Control

के लिए जा सकते हैं से सत्यापित करें फाइल एक्सटेंशन बना सकते हैं
+0

मेरे प्रश्न के दो स्थानों में, मैंने उल्लेख किया है कि मैं पहले से ही इस तरह की सत्यापन करने में सक्षम हूं। यह वह कार्यक्षमता नहीं है जिसे मैं –

0

यह ग्राहक पक्ष पर संभव है! लेकिन, सर्वर साइड सत्यापन करने के लिए याद है।

यह दो लिंक यह दिखाने: http://aspalliance.com/1614_Adding_Filter_Action_to_FileUpload_Control_of_ASPNET_20.all http://www.codeshode.com/2011/07/validate-file-extension-for-aspnet.html

+0

के बारे में पूछ रहा हूं अच्छा जवाब @Stephan। बहुत से लोग भूल जाते हैं कि इस तरह का काम ब्राउज़र में किया जाता है, न कि सर्वर पर। –

5

fileupload नियंत्रण में छवियों का चयन करने के लिए ..

आशा है कि यह मदद से आप

asp:RegularExpressionValidator ID="rexp" runat="server" ControlToValidate="fupProduct" 
    ErrorMessage="Only .gif, .jpg, .png, .tiff and .jpeg" 
    ValidationExpression="(.*\.([Gg][Ii][Ff])|.*\.([Jj][Pp][Gg])|.*\.([Bb][Mm][Pp])|.*\.([pP][nN][gG])|.*\.([tT][iI][iI][fF])$)"></asp:RegularExpressionValidator 
12

आप नीचे दिए गए कोड की कोशिश कर सकते हैं।

<asp:FileUpload ID="UploadFile" accept="image/*" multiple="false" runat="server" BorderStyle="None" /> 

यह आधुनिक ब्राउज़रों के साथ काम करता है।

प्रक्रियाओं के पीछे कोड का उपयोग कर एक्सटेंशन को सत्यापित करना न भूलें।

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