2010-10-11 18 views

cevap

6
<configuration> 
    <system.web> 
    <httpHandlers> 
     <add verb="*" path="hibernate.cfg.xml" 
      type="System.Web.HttpForbiddenHandler"/> 
    </httpHandlers> 
    </system.web> 
<configuration> 
+0

Temiz görünüyor, bu konudaki insanların görüşlerini duymak ilginizi çekiyor ... – Andrew

+4

BTW, bu, varsayılan olarak * .config dosyaları ile varsayılan olarak bitti: –

1

.

güvende olması için bir kaç yolu olmalı. Düşünebildiğim bir tanesi - web sitesinde XML sunmuyorsanız - hizmet verilmemesi için web sitesine kayıtlı XML'in MIME türünü değiştirmektir.

1) kod

içinde NHibernate bölümü işleyicisi

2) düzenlemek kullanılarak web.config'de yapılandırmasını tanımlayın:

Diğer çözümler, doğrudan "hibernate.cfg.xml" dosyasını sağlamamakla 3) Kurulum NHibernate web.config'de .config uzantılı bir dosya

0

koyun NHibernate yapılandırma, bu tarayıcılarda görüntülenebilir olmaz bu şekilde okumak için.

1

O bin dizininde yaşayabilir ve korunduğunu yolu yanı bunu değiştirmek gerekiyorsa sanki, uygulamanız bir değişiklik olarak otomatik yeniden başlatma bin dizininde yapıldı olacaktır.

düzenlemek
aslında isteyebilirsiniz/(sizin nhibernate kodu web.config'de ile kendi ayarlarını karıştırmak istemiyoruz, öyle ki ayrı bir sınıf kitaplığında yaşıyorsa bunu yapmak zorunda ya app.config Kişisel hibernate.cfg.xml 'Output Directory kopyala: Kopyala daima' olarak ayarlanmalıdır

+0

1+ bahsetmek için bin – Aliostad

2

) arayüzler arasında kütüphane paylaşımı eğer bunu oluştururken doğrudan çıktınıza içine kopyalanır. Sitenizi yayınlarsanız, yalnızca çıkış (bin) dizininizde olacak, böylece kimse ona erişemeyecektir. Web sitenizi yayımlamak zaman

+0

Bu konuyla ilgili herhangi bir yorumunuz var mı? Check out – Andrew

+2

: http://nhforge.org/wikis/howtonh/your-first-nhibernate-based-application.aspx 'FirstSolution projesine yeni bir xml dosyası ekleyin ve bunu hibernate.cfg.xml diyoruz. "Kopyaya Kopyala" özelliğini "Her zaman kopyala" olarak ayarlayın. Bunu yaparsanız, bin klasörünüzden okunur (ve erişilmeksizin korunur). Başka bir yerde var olmasının bir sebebi yok. – Alistair

0

, yapmanız gereken ilk şey "hibernate.cfg.xml" kök klasöründe bulunan dosyayı silmek için, bu yüzden

+0

Ancak yapılandırma bilgisi gerekiyor, bu yüzden uygulama doğru mu? – Andrew

+0

Uygulamanızı oluşturduğunuzda, yapılandırma dosyası bin klasörüne bir kopya yapılacak, böylece kök klasörde bulunan yapılandırma dosyası artık kullanılamaz, güvenle silebilirsiniz. –

0

koy sabitlemek için gerek yoktur senin App_Data klasörü. App_Data klasörü, bir tarayıcı üzerinden harici olarak erişilemeyen ASP.NET web uygulamalarındaki özel korumalı bir klasördür. Tüm yapılandırma dosyalarını buraya koyma eğilimindeyim (elbette web.config hariç).