/ / CSV के साथ समस्या IE 6 में डाउनलोड करें - asp.net

CSV के साथ समस्या IE 6 में डाउनलोड करें - asp.net

मेरे पास एक मित्र है जो मेरी एक वेब साइट का परीक्षण करने में समस्याओं का सामना कर रहा है जो एक रिपोर्ट के लिए एक सीएसवी निर्यात प्रदान करता है। वह कहते हैं कि CSV स्क्रीन पर आउटपुट है, और कोई फ़ाइल नहीं बनाई गई है।

यह मेरे IIS7, विस्टा और IE7 सेटअप पर ठीक काम करता है। मैं वर्तमान में अधिक विवरण प्राप्त नहीं कर सकता हूं, लेकिन मैं कम से कम पूछना चाहता हूं: क्या मेरा कोड नीचे है, सीएसवी भेजने के लिए ब्राउज़र / संस्करण स्वतंत्र होने के लिए पर्याप्त है?

    Response.Clear();
Response.Buffer = true;
Response.ContentType = "text/csv";
string fileName = GetExportFileName();
Response.AddHeader("Content-Disposition", "filename=" + fileName);
dt.WriteCsv(Response.Output, false);
Response.End();

मैं एक तारीख के साथ शामिल करने के लिए फ़ाइल का निर्माण कर रहा हूँ /विभाजक, जो एक समस्या पैदा कर सकता है, लेकिन यह मेरी मशीन को प्रभावित नहीं करता है, और / स्वचालित रूप से बदल दिया जाता है _.

उत्तर:

उत्तर № 1 के लिए 1

मैंने भी इस्तेमाल किया है

Response.AddHeader("content-disposition", "attachment;filename=FileName.csv");

जो "अनुलग्नक" पाठ जोड़ता है। आप यह देखने की कोशिश कर सकते हैं कि क्या यह आपके दोस्त के लिए कोई फर्क पड़ता है।


उत्तर № 2 के लिए 1

IE6 में एक ज्ञात समस्या यह है कि सामग्री-वितरण मेटा टैग का सही ढंग से समर्थन नहीं करते हैं और विभिन्न मेटा टैग को बनाने के लिए कुछ गोचर्स हैं।

स्कॉट हैंसेलमैन के इस लिंक में मुद्दे के बारे में सब कुछ बताया गया है।

सादर मास्सिमो


उत्तर № 3 के लिए 1

पार्टी के लिए बहुत देर से यहां आए, इसलिए बाद में इस मुद्दे पर आने वाले किसी भी व्यक्ति के लिए यह अधिक है। यह उद्धरण के संबंध में है "कोई HTTP हेडर IE6 को डाउनलोड की पेशकश करने के लिए मजबूर नहीं करेगा।"

PHP में मेरे पास "सहेजें" बटन दिखाने के लिए IE के लिए हेडर के रूप में सेट है, और न केवल फ़ाइल डाउनलोड करें - या ब्राउजर विंडो में फ़ाइल प्रदर्शित करें।

Response.AddHeader("X-Download-Options", "noopen");
Response.AddHeader("X-Content-Type-Options", "nosniff");

एक्स हेडर का उपयोग यह इंगित करने के लिए किया जाता है कि यह एक गैर-मानक हेडर प्रकार है। IE6 में काम करता है।


जवाब के लिए 0 № 4

एक डाउनलोड के लिए संकेत देने के लिए IE प्राप्त करने के लिए एकमात्र निश्चित आग रास्ता CSV फ़ाइल संपीड़ित (यानी file.csv.zip या file.zip) है।

देख

कोई HTTP हेडर IE6 को डाउनलोड की पेशकश करने के लिए मजबूर नहीं करेगा। यह विशेष रूप से पाठ सामग्री के लिए सच है, जो IE द्वारा "ऑटो-डिटेक्टेड" है।

आप सामग्री-विवाद अनुलग्नक के साथ प्रयास कर सकते हैं; फ़ाइल नाम = file.csv लेकिन मैं "निश्चित नहीं हूँ" यह हमेशा काम करेगा। यदि ऐसा होता है, तो कृपया पुष्टि करें।


जवाब के लिए 0 № 5

आपने यह नहीं बताया कि आपका मित्र आपके ब्राउज़र का क्या उपयोग कर रहा है। अंत में, यह एक बग या गैर-मानक व्यवहार हो सकता है।

निम्नलिखित तकनीक मेरे लिए ठीक काम करती है: http://www.blackbeltcoder.com/Articles/asp/creating-downloadable-content-dynamically.