Ağustos 29, 2010

Asp.Net .dll içine dosya eklemek (embedded resource)

Bir önceki yazıda dll içine javascript eklemekten bahsetmiştim.Şimdi konuyu biraz daha genişleterek .dll içerisine dosya (css,img v.b.) eklemekten bahsedeceğim.

Embedded resource
Included with class libraries
.dll içerisine eklemek istediğiniz nesnenin build action türünü "embedded resource" olarak ayarlıyoruz.
Sonra projenin AssemblyInfo  dosyasını açıp aşağıdaki kod satırını ekliyoruz.
[assembly: WebResource("WebControlLibrary1.1.JPG", "img/jpeg")]

Sayfa içerisine System.web.dll yi eklemek için de aşağıdaki satırı ekliyoruz.
using System.Web.UI
Artık eklediğimiz dosyaları sayfaya Page.ClientScript.GetWebResourceUrl kullanarak çağırıp kullanabiliriz.
Dim img as new Image()
img.ImageUrl = Page.ClientScript.GetWebResourceUrl (typeof(WebControlLibrary1.WebCustomControl1),
@"WebControlLibrary1.1.JPG")

Mesela sayfaya stil (css) dosyası eklemek için aşağıdaki gibi bir kod yazmalıyız.
Dim includeCss as String ="< link +="" _="" href="%7B0%7D" rel="stylesheet" text="text/css">< /link>"
Dim includePath as String = Page.ClientScript.
GetWebResourceUrl(typeof(WebControlLibrary1.WebCustomControl1),Assembly.styles.css")
Dim include as LiteralControl
include = LiteralControl(String.Format(includeCss, includePath))
HtmlControls.HtmlHead) Page.Header).Controls.Add(include)

Hiç yorum yok:

Yorum Gönder

System.Text.Json.JsonException hatası - cycle or if the object depth is larger than the maximum allowed depth of 32.

 Eğer .net'te aşağıdaki hatayı alıyorsanız; " A possible object cycle was detected which is not supported. This can either be due t...