Lokasi tontonan tersuai di ASP.NET MVC
asp.net MVC lalai untuk mencari pandangan dalam struktur hierarki folder
spesifik. Walau bagaimanapun, dalam beberapa kes, sebagai contoh, berdasarkan penamaan pandangan tisu ruang, lokasi carian paparan tersuai perlu disesuaikan.
Views
Penerangan Masalah
Pertimbangkan struktur projek berikut:
Apabila mengakses pengawal dalam ruang penamaan "demo" (contohnya,
), MVC lalai untuk mencari pandangan dalam subfolder <code>- Controllers
- Demo
- DemoArea1Controller
- DemoArea2Controller
- Views
- Demo
- DemoArea1
- Index.aspx
- DemoArea2
- Index.aspx</code>
Salin selepas log masuk
. Walau bagaimanapun, akan ada ralat "Saya tidak dapat mencari 'indeks' pandangan atau versi ibunya."
DemoArea1Controller
penyelesaian /Views/DemoArea1
Untuk menyesuaikan lokasi tontonan, disyorkan untuk mengembangkan kelas:
di sini, anda menentukan array yang mengandungi kedudukan carian paparan tersuai. WebFormViewEngine
daftar <code class="language-csharp">public class CustomViewEngine : WebFormViewEngine
{
public CustomViewEngine()
{
var viewLocations = new[] {
"~/Views/{1}/{0}.aspx",
"~/Views/{1}/{0}.ascx",
"~/Views/Shared/{0}.aspx",
"~/Views/Shared/{0}.ascx",
"~/AnotherPath/Views/{0}.ascx"
//等等
};
this.PartialViewLocationFormats = viewLocations;
this.ViewLocationFormats = viewLocations;
}
}</code>
Salin selepas log masuk
Selepas membuat enjin paparan tersuai, ia mesti didaftarkan dalam kaedah :
Dengan membersihkan enjin paparan lalai dan menambah enjin tersuai, anda dapat menentukan dengan berkesan bahawa pengawal harus mencari paparan pandangan pada kedudukan yang ditentukan. Global.asax.cs
Application_Start
Output Revied ini mengekalkan imej asal dan menulis semula teks untuk mencapai makna yang sama replikasi langsung
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyesuaikan Lokasi Carian Lihat dalam ASP.NET MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!