SORU
9 Kasım 2010, Salı


Jilet HtmlHelper Uzantıları (veya görüş için başka bir ad) Bulunamadı

Eğer bu PR ya da Beta olup olmadığını bilmiyorum, ama eğer HtmlHelper, uzantısı yöntemi oluşturun bir Jilet sayfa güç olarak kabul etmek mümkün değil

namespace SomeNamespace.Extensions {
    public static class HtmlExtensions {
        public static string Foo(this HtmlHelper html) {
            return "Foo";
        }
    }
}

Web.config <Namespaces> bölümüne ekledim:

<pages>
  <namespaces>
    <add namespace="System.Web.Mvc" />
    <!-- snip -->
    <add namespace="SomeNamespace.Extensions"/>
  </namespaces>
</pages>

Ama bir sayfayı görüntülemek için çalışırken derleme hatası atar:

@Html.Foo()

Ben sayfa ile yeniden oluşturunWebFormsgayet iyi çalışıyor. Anlaşma nedir?

Geçici çözüm

Eğer benim Traş makinesi @using SomeNamespace.Extensions dahil olmak üzere o zaman çalışır, ama daha ziyade sadece Web.config içinde elimde olur

CEVAP
9 Kasım 2010, Salı


Beta beri, Ustura genel ad alır tanımlamak için farklı bir yapılandırma bölümü kullanır. Views\Web.config dosyanıza aşağıdakileri ekleyin:

<configSections>
  <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  </sectionGroup>
</configSections>

<system.web.webPages.razor>
  <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <pages pageBaseType="System.Web.Mvc.WebViewPage">
    <namespaces>
      <add namespace="System.Web.Mvc" />
      <add namespace="System.Web.Mvc.Ajax" />
      <add namespace="System.Web.Mvc.Html" />
      <add namespace="System.Web.Routing" />
      <!-- Your namespace here -->
    </namespaces>
  </pages>
</system.web.webPages.razor>

MVC 3 upgrade tool otomatik olarak doğru config değerleri sağlamak için kullanın.

Notkapatın ve değişiklikleri için dosyayı yeniden açmak için editör tarafından alınmayı gerekebilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ColdfusTion

    ColdfusTion

    3 Aralık 2007
  • Kamikazeepanda

    Kamikazeepan

    5 ŞUBAT 2006
  • thewinekone

    thewinekone

    17 Aralık 2005