निर्भर वर्ग में निर्भरता के रूप में IHostingEnvironment
इंजेक्ट करें। ढांचा पॉप्युलेट आप
public class HomeController : Controller {
private IHostingEnvironment _hostingEnvironment;
public HomeController(IHostingEnvironment environment) {
_hostingEnvironment = environment;
}
[HttpGet]
public IActionResult Get() {
var path = Path.Combine(_hostingEnvironment.WebRootPath, "Sample.PNG");
return View();
}
}
आप एक कदम आगे जा सकते हैं और आप अपने मार्ग प्रदाता
public interface IPathProvider {
string MapPath(string path);
}
public class PathProvider : IPathProvider {
private IHostingEnvironment _hostingEnvironment;
public PathProvider(IHostingEnvironment environment) {
_hostingEnvironment = environment;
}
public string MapPath(string path) {
var filePath = Path.Combine(_hostingEnvironment.WebRootPath, path);
return filePath;
}
}
बना सकते हैं और निर्भर वर्गों में IPathProvider
इंजेक्षन के लिए होगा।
public class HomeController : Controller {
private IPathProvider pathProvider;
public HomeController(IPathProvider pathProvider) {
this.pathProvider = pathProvider;
}
[HttpGet]
public IActionResult Get() {
var path = pathProvider.MapPath("Sample.PNG");
return View();
}
}
services.AddSingleton<IPathProvider, PathProvider>();
निर्भर वर्ग में एक निर्भरता के रूप में इसकी सुई कंटेनर के साथ सेवा रजिस्टर करने के लिए सुनिश्चित करें। ढांचा आपके लिए इसे पॉप्युलेट करेगा। – Nkosi