لقد قمت بإنشاء موقع على شبكة HTML، وقمت بإنشاء تطبيق GridView الخاص بي
1 、الحصول على أفضل ما بعد النشر
PostData العام (عنوان URL للسلسلة، بيانات السلسلة، معلومات السلسلة الخارجية)
{
معلومات = ""؛
CookieContainer cc = new CookieContainer();
طلب HttpWebRequest = WebRequest.Create(url) كـ HttpWebRequest؛
request.CookieContainer = cc;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
دفق requestStream = request.GetRequestStream();
byte[] byteArray = Encoding.UTF8.GetBytes(data);
requestStream.Write(byteArray, 0, byteArray.Length);
requestStream.Close();
استجابة HttpWebResponse = request.GetResponse() كـ HttpWebResponse؛
Uri ResponseUri = Response.ResponseUri;
الدفق تلقي ستريم = استجابة.GetResponseStream();
ترميز التشفير = System.Text.Encoding.GetEncoding("utf-8");
StreamReader readStream = new StreamReader(receiveStream, encode);
نتيجة السلسلة = readStream.ReadToEnd();
معلومات = نتيجة؛
العودة 0؛
}2.الترجمة إلى HTML
ClassInfo العامة[] GetClass(سلسلة html)
{
ArrayList ar = new ArrayList();
ArrayList arr = new ArrayList();
جدول السلسلة = ""؛
Regex regtable = new Regex(@"(?<=<table.*>).*?(?=</table>)"، RegexOptions.Singleline);
Match ma = regtable.Match(html);
بينما (ما.النجاح)
{
إذا (ma.Value.Trim() != "")
{
arr.Add(HttpUtility.HtmlDecode(ma.Value));
}
ma = ma.NextMatch();
}
لـ (int i = 0; i < arr.Count; i++)
{
table = arr[i].ToString() + table;
}
Regex reg = new Regex(@"(?<=<.*?>).*?(?=<.*?>)"، RegexOptions.Singleline);
المباراة م = reg.Match(الجدول);
بينما (م.النجاح)
{
إذا (m.Value.Trim()!= "")
{
ar.Add(HttpUtility.HtmlDecode(m.Value));
}
م = m.NextMatch();
}
ClassInfo[] ci = new ClassInfo[classno];
لـ (int i = 0; i < classno; i++)
{
ci[i] = new ClassInfo();
ci[i].RegisterDate = (ar[i * 8 + 0]).ToString();
ci[i].LoginDate = (ar[i * 8 + 1]).ToString();
ci[i].LogoutDate = (ar[i * 8 + 2]).ToString();
ci[i].UseMin = ar[i * 8 + 3].ToString();
ci[i].ClassName = ar[i * 8 + 5].ToString();
ci[i].ClassType = ar[i * 8 + 6].ToString();
ci[i].Percent = ar[i * 8 + 7].ToString();
}
عودة سي.
}
3. نظام ClassInfo هو نظام CodeSmith
فئة عامة ClassInfo
{
متغيرات الأعضاء# المنطقة متغيرات الأعضاء
سلسلة محمية _loginDate؛
سلسلة محمية _logoutDate؛
سلسلة محمية _registerDate؛
سلسلة محمية _useMin؛
سلسلة محمية _className؛
سلسلة محمية _classType؛
سلسلة محمية _percent؛
// سلسلة محمية _nouse;
#endregion
Constructors#region Constructors
public ClassInfo() { }
public ClassInfo(سلسلة تسجيل الدخول، سلسلة تسجيل الخروج، تاريخ تسجيل السلسلة، سلسلة useMin، سلسلة className، سلسلة classType، سلسلة في المئة)
{
this._loginDate =loginDate;
this._logoutDate = logoutDate;
this._registerDate = RegisterDate;
this._useMin = useMin;
this._className = className;
this._classType = classType;
this._percent = بالمائة;
}
#
خصائص المنطقة العامة#الخصائص العامة للمنطقة
// السلسلة العامة NoUse
// {
// الحصول على {return _nouse؛}
// مجموعة { _nouse = القيمة؛}
// }
تاريخ تسجيل الدخول للسلسلة العامة
{
الحصول على { العودة _loginDate؛ }
تعيين { _loginDate = القيمة؛ }
}
سلسلة عامة LogoutDate
{
احصل على {return_logoutDate; }
تعيين { _logoutDate = القيمة؛ }
}
سلسلة عامة RegisterDate
{
احصل على {return_registerDate; }
مجموعة { _registerDate = القيمة؛ }
}
سلسلة عامة UseMin
{
الحصول على { العودة _useMin؛ }
مجموعة { _useMin = القيمة؛ }
}
سلسلة عامة ClassName
{
الحصول على { إرجاع _className؛ }
تعيين
{
إذا (القيمة! = قيمة فارغة &&. الطول > 50)
رمي ArgumentOutOfRangeException الجديد ("قيمة غير صالحة لـ ClassName"، value، value.ToString())؛
_className = value;
}
}
سلسلة عامة ClassType
{
احصل على {return _classType؛ }
تعيين
{
إذا (القيمة! = قيمة فارغة &&. الطول > 50)
رمي ArgumentOutOfRangeException الجديد ("قيمة غير صالحة لـ ClassType"، value، value.ToString())؛
_classType = value;
}
}
سلسلة عامة في المئة
{
الحصول على {عودة _percent؛ }
تعيين
{
إذا (القيمة! = قيمة فارغة &&. الطول > 50)
رمي ArgumentOutOfRangeException الجديد ("قيمة غير صالحة للنسبة المئوية"، value، value.ToString ())؛
_percent = value;
}
}
#endregion
}