رؤية حالة التضخيم باستخدام BZip2...أول نماذج نموذجي...
فقط لمحة أولية على هذا , يستخدم بعض الفصول التي استخدمتها في مشروع آخر (I' سأقوم بتسمية شفرة التضخيم لاحقاً МSK3 أعتقد أنني حصلت عليها من Sharpziplib الاشياء - مع بعض التعديلات - أنا' سأقوم بوضع مخطوطات التعليقات في الخلف للتوافق مع اشياء الرخصة لاحقاً ♫- الآن اعتبرها مثالاً فقط ♫ ) الشيفرة الفعلية لتضخيم المشاهدات هي بسيطة جداً |
using System;
using System.Web.UI;
using System.IO;
namespace ViewStateCompression
{
///
/// Summary description for CompressedVSBasePage.
///
public class CompressedVSBasePage :System.Web.UI.Page
{
private LosFormatter _formatter = new LosFormatter();
protected override void SavePageStateToPersistenceMedium(object viewState)
{
StringWriter sw = new StringWriter();
_formatter.Serialize(sw, viewState);
ComDePress cmp = new ComDePress();
string outStr = cmp.Compress(sw.ToString());
Page.RegisterHiddenField("__COMPRESSEDVIEWSTATE",outStr);
}
protected override object LoadPageStateFromPersistenceMedium()
{
string vsString = Request.Form["__COMPRESSEDVIEWSTATE"];
string outStr = new ComDePress().DeCompress(vsString);
return _formatter.Deserialize(outStr);
}
}
}
لإستخدامه, فقط توارث من هذه الصفحة بدلاً من النظام العادي.ويبM SK2UI .PageMSC4 من الواضح أنكم تفقدون بعض وظائف الحالة البصرية العادية مثل التشفير ♫- لكن هذه يجب أن تكون سهلة لإعادة وضعها في ــ... أنا أرى حاليا توفيراً كبيراً في حجم الحالة الظاهرة من استخدام هذا ♫ - باستخدام BZip | 2 | التضخيم |- | كما هو ــ ' | قطعة من الشفرة التي كنت أكذب عليها | ..., | رجاءً حاولوا جربها |
لقد قمت بعمل مشروع اختبار للعب مع هذا ,itM SK1s VS.NET 2003,it has everything required (including the compression stuff
تحديث: كنت أقوم ببعض الاختبارات مع هذا ... كمثال , باستخدام قاعدة بيانات مكتظة من "إختيار * من الطلبات" لـ Northwind DB المرتبطة بـ DataGrid تلقائيًا ( اخترت هذا ليكون أكثر رقاقة ممكنًاM SK3 أذهب من 659984 بكتات في نظريإنزل إلى |52080 بكتيات |... توفير حوالي | 92% | - والذي أعتقد أنه مدهش جدًا♫ ! أنا أعتقد أن هناك بعض العوائق لهذا ♪ ( ♪ بالإضافة إلى القليل من الدورات الإضافية اللازمة للتضخيم ♪) - ♪ لكن هل هناك أي سبب فعلي لماذا لا يعطي MS خيار للتضخين لـ ViewState خارجًا؟ ♪
تحديث : حسناً , لمن criticised the code' this is a PROTOTYPE - just to test the ideaM SK5 I plan to play around with this a bit more at some point and will be looking at including some funky features like دينيس باور's ViewState viewer تم بناؤه -in, نظم تضغط مختلفة , التشفير مختلف | - بما في ذلك الكفاءة المذهلة الأسماك الاثنان- باختصار سوف يكون لعبة لي لأنظر إليها وتوسيع تطبيق ViewState الحالي