2009-10-21 20 views
13

MVC sayfaları eklediğim mevcut bir WebForms projem var. Bir MVC projesi oluşturdum ve proje tipi rehberlerini kopyaladım.Karma bir MVC/WebForms ASP.NET uygulamasında "Denetleyici Ekle"/"Görünüm Ekle"

onlar /Controllers ve /Views konum (Düzgün çalışır, ancak Visual Studio benim denetleyicileri ve görünümler dizinleri sihirbazları "Görünüm Ekle" "Denetleyicisi Ekle" veya gösterilecek alamayan, bunlar /Foo/Controllers konum ve /Foo/Views).

Sihirbazları etkinleştirmek mümkün mü?

+0

Muhtemelen ve iyi şanslar, ancak her zaman göründüğüm gibi, pratikler ve denetleyiciler normal aspx sayfasından ve sınıftan çok farklı olmadıklarından pratik olarak faydasızdır. – Will

+0

@Will, bunu bir cevap olarak eklerseniz kabul ediyorum - Kod snippet'leri tarafından da iyi hizmet ettiğimi fark ettim – orip

+0

Basit bir dizin mi yoksa Alan mı? –

cevap

2

Bundan vazgeçtim. Bunun yerine, bazı temel Resharper snippet'larım var. Çok kötü, bu yapılandırılamaz.

+0

Bana burada bahsettiğin snippet'leri anlat? İskele hala işe yaramayacağı için şimdi olur mu? –

+0

@RobertKoritnik hiçbir şey fantezi değil, sadece denetleyicinin/görünümün adını koymamı ve benim düzenime bağlı olarak görüntü türüne vb. Türetilmiş snippet'leri, örn. 'LoginView' ->' LoginViewModel'. – orip

+0

-1 Birisi bunu iyi cevap olarak nasıl seçebilir ??? – JotaBe

1

Belki bunları etkinleştirebilirsiniz, ancak neden rahatsız? Bu sihirbazlar sadece iki tık ötede mevcuttur: Klasöre sağ tıkladıktan sonra Add - New item (Yeni Öğe) 'e tıklayınız, daha sonra "MVC View Page" veya "MVC Controller Page" seçiniz. Bağlamsal menüde değiller ama yine de oldukça yakınlar ... :)

+1

(1) Bu projede "Ekle -> Yeni Öğe" bölümünde şablonları göremedim [Neden bilmiyorum] ve (2) "Ekle -> Yeni Öğe" altındaki "MVC Görünüm Sayfası" şablonu "Sihirbazın yaptığı gibi statik olarak yazılmış bir görünüm modelini seçmeme izin vermiyor. – orip

+0

@orip: özelleştirilmiş kontrolör şablonlarını seçse de (eğer bunları 'CodeTemplates' klasörüne koyarsanız), özellikle bu iskele kullananları kullanırsanız görüşlere çok fazla yardımcı olmuyor ... –

6

Hibrit projeler için tam tasarımcı desteği almak için proje dosyasına MVC "proje türü" eklemeniz gerekir.

İçinde (vb, "Görünüm Ekle" "Alan Ekle", "Kontrolör Ekle") yeni içerik menülerini göreceksiniz proje dosyasını açın ve Ondan sonra

<ProjectTypeGuids>{F85E285D-A4E0-4152-9332-AB1D724D3325};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids> 

ile ProjectTypeGuids etiketi yerine senin "eski" ASP.NET projesi MVC 3 için MVC ve MVC 2.

+0

Cevabınız bana yardımcı oldu, teşekkürler! –

+0

-1: OP, atıfta bulunduğunuz GUID'leri zaten ekledi. Sorusu, bu sihirbazların klasörlere nasıl konulacağıdır. Foo \ Controllers' ve 'Foo \ Views' ile uygulama kökündeki bu çifte değil ... –

11

ikisi için

İşleri, ProjectTypeGuids aşağıdaki gibi görünmelidir:

{E53F8FEA-EAE0-44A6-8774-FFD645390401}; 

projenizi, açık csproj dosyasını boşaltmak ve etiketinin başı için GUID ekleyin:

<ProjectTypeGuids>{E53F8FEA-EAE0-44A6-8774-FFD645390401};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids> 

(Upgrading an ASP.NET MVC 2 Project to ASP.NET MVC 3 bakınız)

+2

-1: @orip, GUID'leri zaten değiştirdiğini söyledi. Rehberler burada sorun değil. Onun sorusu: ** Bu bağlam menüleri doğrudan "Denetçi" ve "Görünümler" ** değil, farklı klasörlerde nasıl görünür. –

2

İşte MVC3 için guid olduğunu. fazladan boşluk veya satır sonu yok, sonra projeyi yeniden yükleyin. MVC 4 için bu

<ProjectTypeGuids>{E53F8FEA-EAE0-44A6-8774-FFD645390401};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids> 
5

gibi:

<ProjectTypeGuids>{E3E379DF-F4C6-4180-9B81-6769533ABE47};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids> 
1

Bu sorun çözüldü. Hibrit bir projem var ve aynı problemi yaşadım. İçerik menüsünde "Görünüm Ekle/Ekleme Denetleyicisi" görülemedi. Şimdi çözüldü. Lütfen şu bağlantıya bakın: Context menu to Add Controller/View missing

İlgili konular