Menyesuaikan Lokasi Paparan dalam ASP.NET MVC untuk Menyelesaikan Isu Resolusi Paparan
Projek ASP.NET MVC kadangkala menghadapi masalah resolusi paparan kerana lokasi paparan tidak sepadan dengan laluan carian lalai. Ini sering mengakibatkan ralat seperti "Pandangan 'Indeks' atau induknya tidak dapat ditemui." Penyelesaiannya adalah untuk mengkonfigurasi lokasi paparan tersuai.
Sebagai contoh, jika pengawal anda berada dalam /Controllers/Demo
dan melihat dalam /Views/Demo
, anda perlu memberitahu masa jalan MVC untuk melihat dalam subfolder Demo
. Ini boleh dicapai dengan mengubah suai WebFormViewEngine
.
Membuat Enjin Paparan Tersuai:
Pertama, buat kelas enjin paparan tersuai yang memanjangkan WebFormViewEngine
:
<code class="language-csharp">public class CustomViewEngine : WebFormViewEngine { public CustomViewEngine() { var viewLocations = new[] { "~/Views/{1}/{0}.aspx", "~/Views/{1}/{0}.ascx", "~/Views/Demo/{0}.aspx", "~/Views/Demo/{0}.ascx", "~/Views/Shared/{0}.aspx", "~/Views/Shared/{0}.ascx" }; this.PartialViewLocationFormats = viewLocations; this.ViewLocationFormats = viewLocations; } }</code>
Kod ini menambah laluan /Views/Demo
kepada format lokasi paparan standard. {1}
pemegang tempat mewakili nama pengawal dan {0}
mewakili nama paparan.
Mendaftar Enjin Paparan Tersuai:
Seterusnya, daftarkan enjin paparan tersuai anda dalam kaedah Application_Start
fail Global.asax.cs
anda:
<code class="language-csharp">protected void Application_Start() { ViewEngines.Engines.Clear(); ViewEngines.Engines.Add(new CustomViewEngine()); // ... other application start code ... }</code>
Ini menggantikan enjin paparan lalai dengan enjin tersuai anda.
Konfigurasi ini memastikan pengawal dalam ruang nama "Demo" mengesan paparan dengan betul dalam folder paparan "Demo", menyelesaikan konflik resolusi paparan dan mengekalkan struktur projek yang teratur.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyesuaikan Lokasi Paparan dalam ASP.NET MVC untuk Mengelakkan Ralat 'Lihat Tidak Ditemui'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!