我的Silverlight应用程序中有一个自定义控件,它在画布上放置了大约一千次。我担心这个应用程序的XAP文件的大小。
XAP文件是否会以相同的数量明确包含此控件的名称?我是否会通过将自定义控件的名称从10个字母更改为仅2个字母来减小XAP文件的大小。如何计算类名长度对XAP文件最终大小的影响?
答案 0 :(得分:2)
如何计算类名长度对XAP文件最终大小的影响?
简单回答:你可以测试一下。构建您的XAP文件,重命名该类,重建XAP文件,并查看大小差异(如果有)。
我希望类的名称只在元数据中出现一次,但是如果你给XAML中的实例提供长名称,那么可能有所作为。
答案 1 :(得分:2)
如果尺寸对你很重要,我认为你担心错误的事情。您更有可能包含未使用的代码,DLL或大型资源,而不是名称太长。请记住文件是压缩文件,文本压缩非常好,因此重复相同的长控制名称1000次的效果是最小的。
另外不要忘记使用更好的zip软件重新压缩您的XAP文件(因为您在Visual Studio构建的XAP文件中获得的zip压缩不是最佳的!)
您最好不要担心渐进式加载,因为大多数Silverlight应用程序都过于庞大(并且比大多数网络用户的预期/推荐的8秒注意力范围更多)。
答案 2 :(得分:1)
XAP文件只是一个包含已编译二进制文件的ZIP文件。您的XAML文件作为资源嵌入到那些已编译的二进制文件中。
是的 - 控件名称的长度会影响XAP文件的文件大小。
一个不同的问题是多少。 XAP文件是压缩的ZIP文件。作为一个例子,我有一个带有2个DLL的XAP文件。一个从282k压缩到94k,另一个从46k压缩到16k。
我会更担心为什么你的控件在一个页面中会出现1000次。当然必须有更好的方法来做到这一点。也许甚至在代码中执行它会更容易/更好?