2010-02-10 10 views
19

मैं जानता हूँ कि आप यह कर सकते हैं:एमवीसी 2 में, आप सी # का उपयोग कर सर्वर पर मौजूद फाइल को कैसे निर्धारित करेंगे?

if(System.IO.File.Exists(
    @"C:\INetPub\MVCWebsite\Content\Images\image.jpg")) { ... } 

और आप MVC में फ़ाइलों को संदर्भित करने के लिए ऐसा कर सकते हैं:

Url.Content("~/Content/Images/image.jpg") 

तो वहाँ एक रास्ता अपेक्षाकृत जाँच करने के लिए है कि "~/सामग्री/छवियाँ/image.jpg "मौजूद है (एमवीसी में?)?

उत्तर

42

ASP.NET में आमतौर पर, आप ASP.NET MVC में एक नियंत्रक के अंदर Server.MapPath का एक संयोजन और File.Exists

का प्रयोग करेंगे, तो आप Request.MapPath इस प्रकार इस्तेमाल कर सकते हैं:

string filePath= Request.MapPath("~/Content/Images/image.jpg"); 
if(System.IO.File.Exists(filePath)) 
{ 
//... 
} 
+1

यह सुनिश्चित नहीं है कि 'होस्टिंगएन्वायरमेंट.मैपपाथ' का उपयोग इसके बजाय किया जाना चाहिए? – ErikE

+1

होस्टिंगEnvironment.VirtualPathProvider.FileExists ('~/path/to/file') के साथ बेहतर जांच फ़ाइल अस्तित्व –

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