毕设系列之ASP.NET中搜索出的字符串然后截取定长,和texttbox中的字符串进行比较
1 using System;2 using System.Collections.Generic;3 using System.Linq;4 using System.Web;5 using System.Web.UI;6 using System.Web.UI.WebControls;7 using System.Collections;8 9 namespace WebApplication3.Transport10 {11 public partial class WebForm2 : System.Web.UI.Page12 {13 static string str1 = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["User"].ToString();14 DataClasses1DataContext Den = new DataClasses1DataContext();15 protected void Page_Load(object sender, EventArgs e)16 {17 18 }19 20 protected void Button1_Click(object sender, EventArgs e)21 {22 int i = 0;23 var count1 = (from deng in Den.businf where deng.status == 2 select deng.busid);//从数据库中搜索出指定的字段24 foreach (var bus1 in count1)25 {26 if(bus1.Replace(" ","")==TextBox1.Text.Replace(" ",""))//将数据库中找出来的数据和textbox中的数据进行比较27 {28 i++;29 }30 }31 TextBox2.Text = i.ToString();32 }33 34 public ArrayList GetSeparateSubString(string txtString, int charNumber)//用于截取定长的字符串35 {36 ArrayList arrlist = new ArrayList();37 string tempStr = txtString;38 for (int i = 0; i <tempStr.Length; i += charNumber)39 {40 if ((tempStr.Length - i)>charNumber)//如果是,就截取41 {42 arrlist.Add(tempStr.Substring(i, charNumber));43 }44 else45 {46 arrlist.Add(tempStr.Substring(i));//如果不是,就截取最后剩下的那部分47 }48 }49 return arrlist;50 }51 }52 }
上面 的为后端代码:
前端代码就是一个textbox,还有一个botton,这里就不贴代码了,随便拖两个就能行。
这里需要解释的几个地方是,因为我们数据库中的nchar(n)中,括号里面的n是30,40这样变化的,然后我们从数据库中读取出来的时候,会造成一个局面就是我们的textbox中的字符串看起来和数据库中的值是一样的,然后我们比较出来却不相等,例如我上面的botton_click代码,如果没有replace语句,将读取出来字符串中的空格变成空,就不可能相等。
第二个需要解释的地方是:我们使用arraylist,必须引用
using System.Collections;然后str.substring(i),就是将字符串str截取为定长为i的字符串了。