当前位置 : 主页 > 网络编程 > net编程 >

.net 资料

来源:互联网 收集:自由互联 发布时间:2023-10-08
EFSqlBulkCopy批量入库 stringconnection=ConfigurationManager.ConnectionStrings["DbConn"].ConnectionString; using System.Data.SqlClient; using System.Data; using System.ComponentModel; publicstaticvoidBulkInsertT(stringconnection,stringta

 EF SqlBulkCopy 批量入库


string connection=ConfigurationManager.ConnectionStrings["DbConn"].ConnectionString;

using System.Data.SqlClient;

using System.Data;

using System.ComponentModel;

public static void BulkInsert<T>(string connection, string tableName, IList<T> list)

{

    using (var bulkCopy = new SqlBulkCopy(connection))

    {

        bulkCopy.BatchSize = list.Count;

        bulkCopy.DestinationTableName = tableName;


        var table = new DataTable();

        var props = TypeDescriptor.GetProperties(typeof(T))

           .Cast<PropertyDescriptor>()

           .Where(propertyInfo => propertyInfo.PropertyType.Namespace.Equals("System"))

           .ToArray();


        foreach (var propertyInfo in props)

        {

            bulkCopy.ColumnMappings.Add(propertyInfo.Name, propertyInfo.Name);

            table.Columns.Add(propertyInfo.Name, Nullable.GetUnderlyingType(propertyInfo.PropertyType) ?? propertyInfo.PropertyType);

        }


        var values = new object[props.Length];

        foreach (var item in list)

        {

            for (var i = 0; i < values.Length; i++)

            {

                values[i] = props[i].GetValue(item);

            }


            table.Rows.Add(values);

        }


        bulkCopy.WriteToServer(table);

    }

}


var imports = new List<sendapientity>();

foreach (JToken phone in phones)

{

    SendEntity sendphone = JsonConvert.DeserializeObject<SendEntity>(phone.ToString());

    string tphone = sendphone.phone; int sendid = Convert.ToInt32(sendphone.id);


    sendapientity s = new sendapientity();

    s.UserId = userid;

    s.PartnersCode = partnerscode;

    s.SendId = sendid;

    s.Phone = tphone;

    s.Message = msg;

    s.SentTime = sendtime;

    s.CreateTime = DateTime.Now;

    s.BatchId = batchid;

    s.Count = count;

    imports.Add(s);

}


 using (SMMMContext db = new SMMMContext())

 {

     BulkInsert(db.Database.Connection.ConnectionString, "Send_Api", imports);

 }




 public class sendapientity

 {

     public int UserId { get; set; }

     public string PartnersCode { get; set; }

     public int SendId { get; set; }

     public string Phone { get; set; }

     public string Message { get; set; }

     public string SentTime { get; set; }

     public DateTime CreateTime { get; set; }

     public long BatchId { get; set; }

     public int Count { get; set; }

 }



在JavaScript中推荐的做法是用encodeURI对URI的网址部分编码,用encodeURIComponent对URI中传递的参数进行编码。

在C#中推荐的做法是用Uri.EscapeUriString对URI的网址部分编码,用Uri.EscapeDataString对URI中传递的参数进行编码。


public static int ToInt32(double value)

{

    if (value >= 0.0)

    {

        if (value < 2147483647.5)

        {

            int num = (int)value;

            double num2 = value - num;

            if ((num2 > 0.5) || ((num2 == 0.5) && ((num & 1) != 0)))

            {

                num++;

            }

            return num;

        }

    }

    else if (value >= -2147483648.5)

    {

        int num3 = (int)value;

        double num4 = value - num3;

        if ((num4 < -0.5) || ((num4 == -0.5) && ((num3 & 1) != 0)))

        {

            num3--;

        }

        return num3;

    }

    throw new OverflowException(Environment.GetResourceString("Overflow_Int32"));

}


public enum CommentType { 不推荐=0, 一般=3, 良=4, 优=5 }  


/// <summary>

        /// 绑定评分类型

        /// </summary>

        /// <param name="RBL"></param>

        protected static void BindRadioButtonList(RadioButtonList RBL)

        {

            RBL.Items.Clear();

            Type typ = typeof(CommentType);

            foreach (int i in Enum.GetValues(typ))

            {

                RBL.Items.Add(new ListItem(Enum.GetName(typ, i), Enum.Format(typ, Enum.Parse(typ, Enum.GetName(typ, i)), "d")));

                RBL.SelectedValue = i.ToString();

            }

        }

 /// <summary>

        /// 获取类型名称

        /// </summary>

        /// <param name="typeid"></param>

        /// <returns></returns>

        protected static string BindRating(string typeid)

        {

            string typename = "";

            Type typ = typeof(CommentType);

            foreach (int i in Enum.GetValues(typ))

            {

                if (typeid == Enum.Format(typ, Enum.Parse(typ, Enum.GetName(typ, i)), "d"))

                {

                    typename = Enum.GetName(typ, i);

                }

            }

            return typename;

        }


//.NET 正确获取当前URL

HttpContext.Current.Request.Url.ToString()    不可靠

HttpContext.Current.Request.Url.PathAndQuery  正确 


/// new List<int>(ht.Keys),用到了 List 的构造拷贝函数

/// 在遍历数据结构的时候,是不可以修改原数据结构的。不然就会抛出错误。

foreach (string key in new List<string>(_IpAdresses.Keys))

    {

        _IpAdresses[key]--;

        if (_IpAdresses[key] == 0)

            _IpAdresses.Remove(key);

    }

c# 四舍五入 保留几位小数点

    protected string getProductPrice(int id)

    {

        CustomerProInfo cp = ahlan.getCustomerProInfoByID(id);

        double x = double.Parse((cp.Product.sprice * cp.proValue / 10).ToString()); //两个double相乘结果是double?,所以要强制在转换一次

        return ChinaRound(x,2).ToString();

    }

    //value你要转换的double数据,decimals要保留的小数点

    double ChinaRound(double value, int decimals)

    {

        if (value < 0)

        {

            return Math.Round(value + 5 / Math.Pow(10, decimals + 1), decimals, MidpointRounding.AwayFromZero);

        }

        else

        {

            return Math.Round(value, decimals, MidpointRounding.AwayFromZero);

        }

    }


//判断用户是手机还是pc访问

public class IsPhoneAttribute : ActionFilterAttribute

     {

         public override void OnActionExecuting(ActionExecutingContext filterContext)

         {

             string u = filterContext.HttpContext.Request.ServerVariables["HTTP_USER_AGENT"];

             Regex b = new Regex(@"android.+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino", RegexOptions.IgnoreCase | RegexOptions.Multiline);

             Regex v = new Regex(@"1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-", RegexOptions.IgnoreCase | RegexOptions.Multiline);

             if (!(b.IsMatch(u) || v.IsMatch(u.Substring(0, 4))))

             {

                 filterContext.Controller.ViewData["ErrorMessage"] = "对不起,请用手机访问!";

                 filterContext.Result = new ViewResult()

                 {

                     ViewName = "ErrorInfo",

                     ViewData = filterContext.Controller.ViewData,

                 };

             }


         }

     }


 发送短信接口 

public static bool SendMobileMsg(string msgContent, List<string> destListPhones)

         {

             try

             {

                 bool result = false;

                 string strPhones = string.Join(";", destListPhones.ToArray());

                 strPhones += ";";

                 var encoding = System.Text.Encoding.GetEncoding("GB2312");


                 string postData = string.Format("uid=用户名&pwd=密码&mobile={0};&msg={1}&dtime=", strPhones, msgContent);


                 byte[] data = encoding.GetBytes(postData);


                 // 定义 WebRequest

                  HttpWebRequest myRequest =

                 (HttpWebRequest)WebRequest.Create("http://www.smsadmin.cn/smsmarketing/wwwroot/api/post_send/");


                 myRequest.Method = "POST";

                 myRequest.ContentType = "application/x-www-form-urlencoded";

                 myRequest.ContentLength = data.Length;


                 Stream newStream = myRequest.GetRequestStream();


                 //发送数据

                  newStream.Write(data, 0, data.Length);

                 newStream.Close();


                 // 得到 Response

                 HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();

                 StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.Default);

                 string content = reader.ReadToEnd();


                 if (content.Substring(0, 1) == "0")

                     result = true;

                 else

                 {

                     if (content.Substring(0, 1) == "2") //余额不足

                     {

                       //"手机短信余额不足";

                       //TODO

                     }

                     else

                     {

                       //短信发送失败的其他原因,请参看官方API

                     }

                     result = false;

                 }


                 return result;

             }

             catch

             {

                 return false;

             }


         }






很“干净”的调用,没有WebService也没有COM。


唯一要注意的就是编码用 GB2312 否则您收到短信的中文部分都是乱码,另外第10行的用户名和密码被硬编码了,应写在配置文件内。


​​使用正则替换文章屏蔽词​​

private static readonly Regex reg_b = new Regex(@"\B", RegexOptions.Compiled);

private static readonly Regex reg_en = new Regex(@"[a-zA-Z]+", RegexOptions.Compiled);

private static readonly Regex reg_num = new Regex(@"^[\-\.\s\d]+$", RegexOptions.Compiled);


private static Regex reg_word = null; //组合所有屏蔽词的正则


private static Regex GetRegex()

{

    if (reg_word == null)

    {

        reg_word = new Regex(GetPattern(), RegexOptions.Compiled | RegexOptions.IgnoreCase);

    }

    return reg_word;

}


/// <summary>

/// 检查输入内容是否包含脏词(包含返回true)

/// </summary>

public static bool HasBlockWords(string raw)

{

    return GetRegex().Match(raw).Success;

}

/// <summary>

/// 脏词替换成*号

/// </summary>

public static string WordsFilter(string raw)

{

    return GetRegex().Replace(raw, "***");

}

/// <summary>

/// 获取内容中含有的脏词

/// </summary>

public static IEnumerable<string> GetBlockWords(string raw)

{

    foreach (Match mat in reg_word.Matches(raw))

    {

        yield return (mat.Value);

    }

}

private static string GetPattern()

{

    StringBuilder patt = new StringBuilder();

    string s;

    foreach (string word in GetBlockWords())

    {

        if (word.Length == 0) continue;

        if (word.Length == 1)

        {

            patt.AppendFormat("|({0})", word);

        }

        else if (reg_num.IsMatch(word))

        {

            patt.AppendFormat("|({0})", word);

        }

        else if (reg_en.IsMatch(word))

        {

            s = reg_b.Replace(word, @"(?:[^a-zA-Z]{0,3})");

            patt.AppendFormat("|({0})", s);

        }

        else

        {

            s = reg_b.Replace(word, @"(?:[^\u4e00-\u9fa5]{0,3})");

            patt.AppendFormat("|({0})", s);

        }

    }

    if (patt.Length > 0)

    {

        patt.Remove(0, 1);

    }

    return patt.ToString();

}


/// <summary>

/// 获取所有脏词

/// </summary>

public static string[] GetBlockWords()

{

    return new string[]{"国民党","fuck","110"};//这里应该从数据库获取

}



这个程序可替换以下内容:

国民党

国-民-党

国o民o党

fuck

f.u.c.k

110(110的变形写法不被替换)




//int double 转换

int goodper;

int badper;

int goodposts = Convert.ToInt32(dr["goodpost"]);

int badposts = Convert.ToInt32(dr["badpost"]);

if (goodposts + badposts == 0)

{

    goodper = badper = 0;

}

else

{

    int alls = goodposts + badposts;

    goodper = Convert.ToInt32((double)goodposts / alls * 100);

    badper = 100 - goodper;

}


如:

Convert.ToInt32(4/5*100)=0   

Convert.ToInt32(4.0/5*100)=80



//中英文字符串截取方法 

public static string Intercept(string input, int p)

        {

            Encoding encode = Encoding.GetEncoding("gb2312");

            byte[] byteArr = encode.GetBytes(input);

            if (byteArr.Length <= p) return input;


            int m = 0, n = 0;

            foreach (byte b in byteArr)

            {

                if (n >= p) break;

                if (b > 127) m++; //重要一步:对前p个字节中的值大于127的字符进行统计

                n++;

            }

            if (m % 2 != 0) n = p + 1; //如果非偶:则说明末尾为双字节字符,截取位数加1


            return encode.GetString(byteArr, 0, n);

        }

Console.WriteLine(Intercept("ABC中国人", 7));

Console.WriteLine(Intercept("ABCD中国人", 7));

Console.WriteLine(Intercept("ABC中D国人", 7));


/*

测试代码的结果: 

ABC中国 

ABCD中国 

ABC中D国

*/



//kigg 发表于某天某时某分前 

    public static string Ago(this DateTime target)

    {

        StringBuilder result = new StringBuilder();

        TimeSpan diff = (DateTime.Now - target.ToLocalTime());

        if (diff.Days > 0)

        {

            result.AppendFormat("{0} days", diff.Days);

        }

        if (diff.Hours > 0)

        {

            if (result.Length > 0)

            {

                result.Append(", ");

            }

            result.AppendFormat("{0} hours", diff.Hours);

        }

        if (diff.Minutes > 0)

        {

            if (result.Length > 0)

            {

                result.Append(", ");

            }

            result.AppendFormat("{0} minutes", diff.Minutes);

        }

        if (result.Length == 0)

        {

            result.Append("few moments");

        }

        return result.ToString();

    }

}




<%# GetOutTime(Eval("发布时间")) %>


    /// <summary>

    /// 

    /// </summary>

    /// <param name="dtime">发布时间</param>

    /// <returns></returns>

    public static string GetOutTime(DateTime dtime)

    {

        DateTime dt = DateTime.Now;

        TimeSpan ts = ((TimeSpan)(dt - dtime));


        int days = ts.Days;

        int hours = ts.Hours;

        int minutes = ts.Minutes;

        int milliseconds = ts.Milliseconds;


        if (days > 0) return string.Format("发布于{0}天前", days);

        if (hours > 0) return string.Format("发布于{0}小时前", hours);

        if (minutes > 0) return string.Format("发布于{0}分钟前", minutes);

        return string.Format("发布于{0}秒前", milliseconds);

    }



 public static string ToPrettyDate(this DateTime date)

        {

            var timeSince = DateTime.Now.Subtract(date);

            if (timeSince.TotalMilliseconds < 1) return "not yet";

            if (timeSince.TotalMinutes < 1) return "just now";

            if (timeSince.TotalMinutes < 2) return "1 minute ago";

            if (timeSince.TotalMinutes < 60) return string.Format("{0} minutes ago", timeSince.Minutes);

            if (timeSince.TotalMinutes < 120) return "1 hour ago";

            if (timeSince.TotalHours < 24) return string.Format("{0} hours ago", timeSince.Hours);

            if (timeSince.TotalDays == 1) return "yesterday";

            if (timeSince.TotalDays < 7) return string.Format("{0} day(s) ago", timeSince.Days);

            if (timeSince.TotalDays < 14) return "last week";

            if (timeSince.TotalDays < 21) return "2 weeks ago";

            if (timeSince.TotalDays < 28) return "3 weeks ago";

            if (timeSince.TotalDays < 60) return "last month";

            if (timeSince.TotalDays < 365) return string.Format("{0} months ago", Math.Round(timeSince.TotalDays / 30));

            if (timeSince.TotalDays < 730) return "last year";

            return string.Format("{0} years ago", Math.Round(timeSince.TotalDays / 365));

        }



            DateTime dt = DateTime.Now;

            Gengerate g = new Gengerate();

            g.GengerateHtml();

            DateTime dt2 = DateTime.Now;

            TimeSpan ts = dt2.Subtract(dt);

            string strTs = ts.TotalSeconds.ToString();

            ltGengerate.Text = "生成成功,生成用时" + strTs + "秒!";






//ddl点击赋值:

if(DropDownList1.selectedindex>-1)

{

DropDownList1.Items[DropDownList1.SelectedIndex].Text=TextBox1.Text;

}


//设置ddl的enabled属性:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="id"
OnRowDataBound="GridView1_RowDataBound" >
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

{
if (e.Row.RowType == DataControlRowType.DataRow) //一定要

{
DropDownList ddl = (DropDownList)e.Row.FindControl("DropDownList1");
if (ddl != null)

{
if (ddl.SelectedValue == "1")

{

ddl.Enabled = false;

}

}


}

}



string strPath = Server.MapPath("~/roomindex");
/// <summary>

/// 用递归方法删除文件夹目录及文件
/// </summary>

/// <param name="dir">带文件夹名的路径</param>
public void DeleteFolder(string dir)

{
if (Directory.Exists(dir)) //如果存在这个文件夹删除之
{
foreach (string d in Directory.GetFileSystemEntries(dir))

{
if (File.Exists(d))

File.Delete(d); //直接删除其中的文件
else
DeleteFolder(d); //递归删除子文件夹
}

Directory.Delete(dir, true); //删除已空文件夹
}

}

确保您具有足够的权限 对路径 的访问被拒绝

删除权限设置:

在web.config中的<system.web>下加入<identity impersonate="true"/>





//根据用户选择的值设置Cookie的保存时间

if (this.RadioButtonList1.SelectedValue.ToString() == "1") //一天

{

this.Response.Cookies["UserName"].Expires = DateTime.Now.AddDays(1);

this.Response.Cookies["Password"].Expires = DateTime.Now.AddDays(1);

}

if (RadioButtonList1.SelectedValue.ToString() == "2") //一个月

{

this.Response.Cookies["UserName"].Expires = DateTime.Now.AddMonths(1);

this.Response.Cookies["Password"].Expires = DateTime.Now.AddMonths(1);

}

if (RadioButtonList1.SelectedValue.ToString() == "3") //半年

{

this.Response.Cookies["UserName"].Expires = DateTime.Now.AddYears(1 / 2);

this.Response.Cookies["Password"].Expires = DateTime.Now.AddYears(1 / 2);

}

if (RadioButtonList1.SelectedValue.ToString() == "4") //一年

{

this.Response.Cookies["UserName"].Expires = DateTime.Now.AddYears(1);

this.Response.Cookies["Password"].Expires = DateTime.Now.AddYears(1);

}

//将用户输入的用户名和密码保存到Cookie中

this.Response.Cookies["UserName"].Value = this.tname.Text;

this.Response.Cookies["Password"].Value = this.tpass.Text;

//跳转到getcookie.aspx页面中显示Cookie中的值

Response.Write("用户登录成功!并将用户登录的用户名和密码保存到Cookie中。");

}

else

{

Response.Redirect("Login.aspx");

}

}

//Attribute:

Response.Write("浏览器的信息为:<br>");

Response.Write("(1)浏览器=" + Request.Browser.Browser + "<br>");

Response.Write("(2)型态=" + Request.Browser.Type + "<br>");

Response.Write("(3)名称=" + Request.Browser.Browser + "<br>");

Response.Write("(4)版本=" + Request.Browser.Version + "<br>");

Response.Write("(5)使用平台=" + Request.Browser.Platform + "<br>");

Response.Write("(6)是否为测试版=" + Request.Browser.Beta + "<br>");

Response.Write("(7)是否为位的环境=" + Request.Browser.Win16 + "<br>");

Response.Write("(8)是否为位的环境=" + Request.Browser.Win32 + "<br>");

Response.Write("(9)是否支持框架(Frame)=" + Request.Browser.Frames + "<br>");

Response.Write("(10)是否支持表格(Table)=" + Request.Browser.Tables + "<br>");

Response.Write("(11)是否支持Cookies=" + Request.Browser.Cookies + "<br>");

Response.Write("(12)是否支持ActiveX Controls=" +Request.Browser.ActiveXControls + "<br>");

string bb = System.Environment.CurrentDirectory.ToString();

Response.Write(bb);

string a = Request.Url.ToString();

string b = Request.Path.ToString();

string c = Request.PhysicalPath.ToString();

Response.Write("URL地址:" + a + "<br>虚拟路径:" + b + "<br>物理路径:" + c);

string HostName=Server.MachineName.ToString();

Response.Write("电脑的名称为:"+HostName)

string path = Server.MapPath("~").ToString();

Response.Write("物理路径为:"+path);

//结果:

//物理路径为:C:\Documents and Settings\itd0300166.PLSH166\桌面\曾祥展\ASP.NET 2.0+SQL Server 2005全程指南\Study_NET\chap05\Server

string Encode = Server.HtmlDecode("<b>HTML代码中的内容</b>");

string Decode = Server.HtmlEncode("<b>HTML代码中的内容</b>");

Response.Write(Encode+"<br>"+Decode);

结果:

HTML代码中的内容

<b>HTML代码中的内容</b>


javascript:void(0)



/

////gridview导出excel

public override void VerifyRenderingInServerForm(Control control)

{

// Confirms that an HtmlForm control is rendered for

}

protected void Button3_Click(object sender, EventArgs e)

{

Response.Clear();

Response.Buffer = false;

Response.Charset = "GB2312";

Response.AppendHeader("Content-Disposition", "attachment;filename=score.xls");

Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");

Response.ContentType = "application/ms-excel";

Response.Write("<meta http-equiv=Content-Type content=\"text/html; charset=GB2312\">");

this.EnableViewState = false;

System.Globalization.CultureInfo str = new System.Globalization.CultureInfo("ZH-CN", true);

System.IO.StringWriter oStringWriter = new System.IO.StringWriter(str);

HtmlTextWriter oHtmlTextWriter = new HtmlTextWriter(oStringWriter);

GridView1.RenderControl(oHtmlTextWriter);

Response.Write(oStringWriter.ToString());

Response.End();

}

<script language="javascript" type="text/javascript">

//先获取所有的Checkbox

var chkList = document.getElementsByName("CheckBox1");

window.onload = function()

{

//为所有checkbox添加onclick事件处理,以自动更新“已选择的项”

for(var i=0; i<chkList.length; i++)

{

chkList[i].onclick = chkClick;

}

}

//checkbox的onclick事件,用于更新“已选择的项”

function chkClick()

{

var checkedList = "";

//获取所有被选中的项

for(var i=0; i<chkList.length; i++){

if(chkList[i].checked)

checkedList += chkList[i].value + ",";

}

//把选中项的列表显示到“已选择的项”中,substring在这里是为了去除最后一个逗号

document.getElementById("HiddenField1").value = checkedList.substring(0,checkedList.length-1);

}

</script>

string type = HiddenField1.Value;

string[] keyValue = type.Split(',');

foreach (string str in keyValue)

{

//判定是否选中任何一门

string sql1 = "select * from xk where 课程编号='" + str + "' ";

//遍历 Panel1下的下拉框

foreach (System.Web.UI.Control ddl in Panel1.Controls)

{

if (ddl is DropDownList)

{

DropDownList d = (DropDownList)ddl;

str = str + d.SelectedValue.ToString() + ",";

}

}

int j = 0;

string[] words = sqlpj.Split(',');

//TextBox1.Text = sqlpj.Substring(sqlpj.IndexOf(words[20]), sqlpj.Length- sqlpj.IndexOf(words[20]));

TextBox1.Text = sqlpj.Remove(0,sqlpj.IndexOf(words[20]));

foreach (System.Web.UI.Control ddl in Panel1.Controls)

{

if ( ddl is DropDownList)

{

DropDownList d = (DropDownList)ddl;

d.Text = words[j];

j++;

}

}

//第二种方法

string[] sqlleft = new string[20];

string sqlrigth = sqlpj;

for (int i = 0; i < 20; i++)

{

int dex = sqlpj.IndexOf(',');

sqlleft[i] = sqlrigth.Substring(0, dex);

sqlrigth = sqlrigth.Substring(dex + 1);

}

TextBox1.Text = sqlrigth;

int j = 0;

foreach (System.Web.UI.Control ddl in Panel1.Controls)

{

if (ddl is DropDownList)

{

DropDownList d = (DropDownList)ddl;

d.Text = sqlleft[j];

j++;

}

}

<asp:HyperLinkField DataNavigateUrlFields="任课老师"

DataNavigateUrlFormatString="Stu_pjtea.aspx?任课老师={0}" HeaderText="进入评教"

NavigateUrl="Stu_pjtea.aspx" Text="&lt;font color=red &gt;进入&lt;/font&gt;" />

string teaname = Request.QueryString["任课老师"].ToString();





//从1,50随机20个不重复数

  public int[] GetRandomUnrepeatArray(int minValue, int maxValue, int count)

  {

      Random rnd = new Random();

      int length = maxValue - minValue + 1;

      byte[] keys = new byte[length];

      rnd.NextBytes(keys);

      int[] items = new int[length];

      for (int i = 0; i < length; i++)

      {

          items[i] = i + minValue;

      }

      Array.Sort(keys, items);

      int[] result = new int[count];

      Array.Copy(items, result, count);

      return result;

  }


调用:

int[] a= GetRandomUnrepeatArray(1,100,20);

       for (int i = 0; i < a.Length; i++)

       {

           Response.Write(a[i].ToString()+",");

       }

//结果:27,34,44,19,30,67,58,18,26,57,62,16,8,91,100,31,56,85,88,29










/// <summary>     

/// 从1到33中任意选取不重复的6个随机数     

/// </summary>     

/// <returns></returns>     

public List<int> GenerateNumber()     

{     

    //用于存放1到33这33个数     .    List<int> container = new List<int>(33);     

    //用于保存返回结果     

    List<int> result = new List<int>(6);     

    Random random = new Random();     

    for (int i = 1; i <= 33; i++)     

    {     

        container.Add(i);     

    }     

    int index = 0;     

    int value = 0;     

    for (int i = 1; i <= 6; i++)     

    {     

        //从[0,container.Count)中取一个随机值,保证这个值不会超过container的元素个数     

        index = random.Next(0, container.Count);     

        //以随机生成的值作为索引取container中的值     

        value = container[index];     

        //将随机取得值的放到结果集合中     

        result.Add(value);     

        //从容器集合中删除这个值,这样会导致container.Count发生变化     

        container.RemoveAt(index);     

        //注意这一句与上面一句能达到同样效果,但是没有上面一句快     

        //container.Remove(value);     

    }    

    //result.Sort();排序     

    return result;     






public int[] GenerateNumber()     

{     

    //用于存放1到33这33个数     

    int[] container = new int[33];     

    //用于保存返回结果     

    int[] result = new int[6];     

    Random random = new Random();     

    for (int i = 1; i <= 33; i++)     

    {     

        container[i - 1] = i;     

    }    

    int index = 0;     

    int value = 0;     

    for (int i = 0; i < 6; i++)    

    {     

        //从[1,container.Count + 1)中取一个随机值,保证这个值不会超过container的元素个数     

        index = random.Next(1, container.Length-1-i);     

        //以随机生成的值作为索引取container中的值     

        value = container[index];     

        //将随机取得值的放到结果集合中     

        result[i]=value;    

        //将刚刚使用到的从容器集合中移到末尾去     

        container[index] = container[container.Length - i-1];     

        //将队列对应的值移到队列中     

       container[container.Length - i-1] = value;     

    }     

    //result.Sort();排序    

    return result;    


  ​​Random​​ r = new ​​Random​​(​​Guid​​.NewGuid().GetHashCode()); 随机不重复


// Select/Deselect checkboxes based on header checkbox
function SelectheaderCheckboxes(headerchk) {
// debugger
var gvcheck = document.getElementById('rptList');
var i;
//Condition to check header checkbox selected or not if that is true checked all checkboxes
var checkedList = "";
if (headerchk.checked) {
for (i = 0; i < gvcheck.rows.length; i++) {
var inputs = gvcheck.rows[i].getElementsByTagName('input');
inputs[0].checked = true;
var s=$($(inputs)).next().html();
if (s!==null) {
checkedList += s + ",";
}
document.getElementById("hidvalue").value = checkedList.substring(0, checkedList.length - 1);
}
}
//if condition fails uncheck all checkboxes in gridview
else {
for (i = 0; i < gvcheck.rows.length; i++) {
var inputs = gvcheck.rows[i].getElementsByTagName('input');
inputs[0].checked = false;
}
document.getElementById("hidvalue").value = "";
}
}
//function to check header checkbox based on child checkboxes condition
function Selectchildcheckboxes(header) {
var ck = header;
var count = 0;
var gvcheck = document.getElementById('rptList');
var headerchk = document.getElementById(header);
var rowcount = gvcheck.rows.length;
var checkedList = '';
//By using this for loop we will count how many checkboxes has checked
for (i = 1; i < gvcheck.rows.length; i++) {
var inputs = gvcheck.rows[i].getElementsByTagName('input');
if (inputs[0].checked) {
count++;
var s = $($(inputs)).next().html();
if (s !== null) {
checkedList += s + ",";
}
}
document.getElementById("hidvalue").value = checkedList.substring(0, checkedList.length - 1);
}
//Condition to check all the checkboxes selected or not
if (count == rowcount - 1) {
headerchk.checked = true;
}
else {
headerchk.checked = false;
}
}
//先获取所有的Checkbox
var chkList = $('#rptList').find(".chkChild input");
window.onload = function () {
//为所有checkbox添加onclick事件处理,以自动更新“已选择的项”
for (var i = 0; i < chkList.length; i++) {
chkList[i].onclick = chkClick;
}
}
//checkbox的onclick事件,用于更新“已选择的项”
function chkClick() {
var checkedList = "";
//获取所有被选中的项
for (var i = 0; i < chkList.length; i++) {
if (chkList[i].checked)
// checkedList += chkList[i].value + ",";
checkedList += $($(chkList[i])).next().html() + ",";
}
//把选中项的列表显示到“已选择的项”中,substring在这里是为了去除最后一个逗号
document.getElementById("hidvalue").value = checkedList.substring(0, checkedList.length - 1);
}



/// <summary>
/// 随机排列数组元素 打乱顺序 调用 string[] newlist = Shuffle(arr);
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="Source"></param>
public static T[] Shuffle<T>(T[] Source)
{
if (Source == null) return null;
int len = Source.Length;//用變數記會快一點點點
Random rd = new Random();
int r;//記下隨機產生的號碼
T tmp;//暫存用
for (int i = 0; i < len - 1; i++)
{
r = rd.Next(i, len);//取亂數,範圍從自己到最後,決定要和哪個位置交換,因此也不用跑最後一圈了
if (i == r) continue;
tmp = Source[i];
Source[i] = Source[r];
Source[r] = tmp;
}
return Source;

}


【文章原创作者:香港云服务器 http://www.558idc.com/ne.html 复制请保留原URL】
上一篇:asp.net 高质量缩略图
下一篇:没有了
网友评论