[assembly: System.Web.UI.WebResource("Skyline.Framework.WebControls.Resx.Delete.gif", "img/gif")]
                    string scriptLocation = page.ClientScript.GetWebResourceUrl(type, jsSource);
然后把文件属性里设置为嵌入资源就可以引用了。
问题是我在生成的html界面看到,它会生成一长串base64的字符串,内容就是assebmly名称和文件名,这堆东西简直就是垃圾,如果引用的内嵌图片多的话,还占不少大小。有没有办法不生成这个呢?哪怕不加密成base64都行。

解决方案 »

  1.   

    而且[assembly: System.Web.UI.WebResource("Skyline.Framework.WebControls.Resx.Delete.gif", "img/gif")] 
    必须要有命名空间,没有好像就不行。搞的不得不想办法减少命名空间的字母数,微软对这个的设计真的有点垃圾额。
      

  2.   

    哎,看来这个问题比较的偏,或者根本就没有解决办法?不过我用了一个另外的办法把问题绕过去了。因为这些webresources是用在我自己写的一套无刷新控件集里的。没办法了,我就在每个控件init的时候向页面注册初始化控件的js函数。也就是说这些垃圾可能只会在页面上出现一次。因为我是用js对需要这些垃圾的图片什么的的赋值的。其实这倒让我找到了一个让页面大小变得更小的方案,就是一些元素比如tr的一些重复性的属性,比如style,可以采用这种办法去赋值,而不是一定要在tr的style写上那么一段style文字(当然sytle可以用css,我这里只是举个例子,在自定义控件有时候非得用style,因为有些属性必须自己约束掉)。经过处理,我的一个开始有16k的页面,就只有4k多了,呵呵,还有些控件没有采用这种方式,估计页面还可以小~~~