1015、ASP.Net WebForm 数据绑定 < %# %>   < %= %>   < % %>  < %@ %> Eval("Name")

1、< %#... %>: 是在绑定控件DataBind()方法执行时被执行,用于数据控件绑定

如: < %# Container.DataItem("tit")%> Eval:为单项 Bind:为双向(可更新)绑定

绑定字段:<asp:Lable id="lable1" runat="server" Text='<%#Eval("UserName")%>'/>

绑定函数:<%#getName()%>

绑定变量:aspx:Visible='<%#IsAudit%>' cs:public bool IsAudit= false;

2、< %= %>: 在程序执行时被调用,可以显示后台变量值

绑定变量:aspx: <%=Title%> cs: public string Title ="title";

绑定函数:<%#getName()%>

服务器控件绑定变量:aspx:<asp:Button ID="btn_audit" runat="server" Text="审核" Visible="<%#IsAudit%>" /> cs:public bool IsAudit= false;Page_Load函数添加:Page.DataBind();

3、< % %>: 内联代码块里面可以在页面文件*.aspx或*.ascx文件里面嵌入后台代码

如:<%for(int i=0;i<100;i++){Reaponse.Write(i.ToString());}%>

4、< %@ %>是在*.aspx页面前台代码导入命名空间,

如:<%@Import namespace="System.Data"%>

<!--URL绑定 -->
<asp:HyperLink ID="HyperLink1" NavigateUrl='<%# Eval("ProjectID","MarketingLogList.aspx?ProjectInfoID={0}") %>' Text='<%# Bind("ProjectName") %>' runat="server"></asp:HyperLink> <asp:HyperLink id="Hyperlink1" runat="server" NAME="Hyperlink1" NavigateUrl='<%# DataBinder.Eval(Container.DataItem, "id", "DeptRoleModify.aspx?id={0:d}") %>'><%=GetTran("", "编辑")%></asp:HyperLink> <asp:HyperLink id="Hyperlink2" runat="server" NAME="Hyperlink1" NavigateUrl='<%# Eval("id","GroupInfoModify.aspx?id={0}") %>' ><%=GetTran("", "编辑")%></asp:HyperLink> <asp:HyperLink ID="HyperLink1" NavigateUrl='<%# "Marketingloglist.aspx?ProjectInfoID="+Eval("ProjectID")+"&ProjectInfoID="+Eval("ProjectID") %>' Text='<%# Bind("ProjectName") %>' runat="server"></asp:HyperLink> <asp:HyperLink id="Hyperlink1" runat="server" NAME="Hyperlink1" NavigateUrl='<%# "GroupInfoModify.aspx?id="+Eval("id")+"&type="+Eval("GroupType") %>' ><%=GetTran("", "编辑")%></asp:HyperLink> OnClientClick=<%#"btn_delete('"+Eval("class_name").ToString()+"',this);return false"%>

1、DropDownList 复制

            //DropDownList
DropDownList2.Items.Clear();
foreach (ListItem li in DropDownList1.Items)
{
DropDownList1.Items.Add(li);
}

  

//循环删除判断
for (int i = 0; i < ddldw_xqid.Items.Count; i++)
{
ddldw_xqid.Items[i].Text = ddldw_xqid.Items[i].Text.Replace("教育局", "");
if (ddldw_xqid.Items[i].Text.Equals("潍坊市"))
{
ddldw_xqid.Items[i].Text = "市直";
ddldw_xqid.Items.RemoveAt(i);
ddldw_xqid.Items.Remove(ddldw_xqid.Items[i]);
}
}
if (userds.Tables[0].Rows[0]["dw_lxid"].ToString().Equals("18"))
{
ddldw_lxid.Items.Remove(ddldw_lxid.Items.FindByValue("16"));
ddldw_lxid.Items.Remove(ddldw_lxid.Items.FindByValue("17"));
ddldw_lxid.Items.Remove(ddldw_lxid.Items.FindByText("县区教育局机关")); //ddldw_lxid.Items.Remove(new ListItem("县区教育局机关", "18"));
//ddldw_lxid.Items.Remove(ddldw_lxid.Items.FindByValue("17"));
trxq.Visible = false;
}

  

2、读写AppConfig.config

/// <summary>
/// 设置AppConfig配置文件
/// </summary>
/// <param name="AppKey">键</param>
/// <param name="AppValue">值</param>
public void SetValue(string AppKey, string AppValue)
{
XmlDocument xDoc = new XmlDocument();
//string path = Application.ExecutablePath;
ServerInfo.GetRootPath();
//path = path.Remove(path.IndexOf("bin"));
//xDoc.Load(path + "App.config");
string path = Server.MapPath("~/");
xDoc.Load(path + "AppConfig.config"); XmlNode xNode;
XmlElement xElem1;
XmlElement xElem2;
// xNode = xDoc.SelectSingleNode("//configuration");
xNode = xDoc.SelectSingleNode("//appSettings");
xElem1 = (XmlElement)xNode.SelectSingleNode("//add[@key='" + AppKey + "']");
if (xElem1 != null)
{
xElem1.SetAttribute("value", AppValue);
}
else
{
xElem2 = xDoc.CreateElement("add");
xElem2.SetAttribute("key", AppKey);
xElem2.SetAttribute("value", AppValue);
xNode.AppendChild(xElem2);
}
xDoc.Save(path + "AppConfig.config");
}

  

3、webform获取实际地址:

string strFilePath = Server.MapPath("~//ExamRecord.xml");

Response.Write(Server.MapPath("~") + "</br>");

Response.Write(Server.MapPath("~/App_code/WebService.cs") + "</br>");

E:\Net15\ReporterWebServer\ReporterWebServer
E:\Net15\ReporterWebServer\ReporterWebServer\App_code\WebService.cs

4、My97DatePicker 时间控件用法

<asp:TextBox ID="txttraining_starttime" onfocus="WdatePicker()" runat="server" CssClass=" input1"></asp:TextBox>

<asp:TextBox ID="txtexam_starttime" runat="server" CssClass="input1" onfocus="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'});"></asp:TextBox>

WdatePicker({dateFmt:'yyyy'});//只示年

5、asp.net js相互取值

JS中取得Asp.Net的值 

()取得服务端控件的值
var s = document.getElementById("TextBox1").value; //取得TextBox1的Text值 ()取得全局变量的值 在Page_Load()方法前定义protected String sT;
在Page_Load()方法中赋值sT = "哈哈"; JS中这样写取得
var s = "<%=sT %>"; -------------------------------------------------------------------------------- . Asp.Net中取得JS的值 推荐使用<asp:HiddenField ID="HiddenField1" runat="server" />控件
在JS中添加代码
document.getElementById("HiddenField1").value = '风中追风';
在后台代码中,可以直接使用HiddenField1.Value取得 使用<input type="hidden" id="leslie" runat="server" />
在后台代码中,可以直接使用leslie.Value取得 PS:
也可以使用<input type="hidden" id="leslie" name="leslie">方法
在后台操作中用Request.Form.Get("leslie"); //取得的是name="leslie"的值

userds = (DataSet)Session["USERINFO"];
string strrole = "2,5,8,888";
string[] rolearray = strrole.Split(',');
if (rolearray.Contains(userds.Tables[0].Rows[0]["u_sf"].ToString()))
{
Response.Redirect("../Login.aspx", false); return;
}

        //FilterSql
/// <summary>
/// 过滤 Sql 语句字符串中的注入脚本
/// </summary>
/// <param name="source">传入的字符串</param>
/// <returns></returns>
public static string FilterSql(string source)
{
//单引号替换成两个单引号
if (source == null)
{
return "";
}
source = source.Replace("'", "''");
//半角封号替换为全角封号,防止多语句执行
source = source.Replace(";", ";");
source = source.Replace("--", "--");
//半角括号替换为全角括号
source = source.Replace("(", "(");
source = source.Replace(")", ")");
///////////////要用正则表达式替换,防止字母大小写得情况////////////////////
//去除执行存储过程的命令关键字
source = source.Replace("Exec", "");
source = source.Replace("Execute", "");
//去除系统存储过程或扩展存储过程关键字
source = source.Replace("xp_", "x p_");
source = source.Replace("sp_", "s p_");
//防止16进制注入
source = source.Replace("0x", "0 x");
return source;
}
 public static void Add(string user_id, string action, string action_result)
{
Exam.Dal.actionlog dallog = new Exam.Dal.actionlog();
Exam.Model.actionlog modellog = new Exam.Model.actionlog();
modellog.user_id = user_id;
modellog.action = action;
modellog.action_result = action_result;
modellog.action_time = DateTime.Now;
//modellog.action_ip = PageHelper.GetIP();
dallog.Add(modellog);
}
设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli
"http://"是协议名
"www.jb51.net"是域名
"aaa"是站点名
"bbb.aspx"是页面名(文件名)
"id=5&name=kelli"是参数
【】获取 完整url (协议名+域名+站点名+文件名+参数) 代码如下: string url=Request.Url.ToString();
url= http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli 【】获取 站点名+页面名+参数: 代码如下: string url=Request.RawUrl;
(或 string url=Request.Url.PathAndQuery;)
url= /aaa/bbb.aspx?id=&name=kelli 【】获取 站点名+页面名: 代码如下: string url=HttpContext.Current.Request.Url.AbsolutePath;
(或 string url= HttpContext.Current.Request.Path;)
url= aaa/bbb.aspx 【】获取 域名: 代码如下: string url=HttpContext.Current.Request.Url.Host;
url= www.jb51.net 【】获取 参数: 代码如下: string url= HttpContext.Current.Request.Url.Query;
url= ?id=&name=kelli 代码如下: Request.RawUrl:获取客户端请求的URL信息(不包括主机和端口)------>/Default2.aspx
Request.ApplicationPath:获取服务器上ASP.NET应用程序的虚拟路径。------>/
Request.CurrentExecutionFilePath:获取当前请求的虚拟路径。------>/Default2.aspx
Request.Path:获取当前请求的虚拟路径。------>/Default2.aspx
Request.PathInfo:取具有URL扩展名的资源的附加路径信息------>
Request.PhysicalPath:获取与请求的URL相对应的物理文件系统路径。------>E:\temp\Default2.aspx
Request.Url.LocalPath:------>/Default2.aspx
Request.Url.AbsoluteUri:------>http://localhost:8080/Default2.aspx
Request.Url.AbsolutePath:---------------------------->/Default2.aspx

密码 !:

数字字母字符:[-\da-zA-Z`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]*((\d+[a-zA-Z]+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+)|(\d+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+[a-zA-Z]+)|([a-zA-Z]+\d+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+)|([a-zA-Z]+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+\d+)|([-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+\d+[a-zA-Z]+)|([-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+[a-zA-Z]+\d+))[-\da-zA-Z`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]*

纯数字:^\d+$
纯字母:^[a-zA-Z]+$
纯特殊字符:^[@#$%^&]+$ ps:特殊字符看你定义的标准是什么
字母+数字:^(?!\d+$)(?![a-zA-Z]+$)[a-zA-Z\d]+$
字母+特殊字符:^(?![a-zA-Z]+$)(?![@#$%^&]+$)[a-zA-Z@#$%^&]+$
数字+特殊字符:^(?!\d+)(?![@#$%^&]+$)[\d@#$%^&]+$
字母+数字+特殊字符:^(?!\d+$)(?![a-zA-Z]+$)(?![@#$%^&]+$)[\da-zA-Z@#$%^&]+$ 必须包含字母+字符+数字[-\da-zA-Z`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]*((\d+[a-zA-Z]+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+)|(\d+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+[a-zA-Z]+)|([a-zA-Z]+\d+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+)|([a-zA-Z]+[-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+\d+)|([-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+\d+[a-zA-Z]+)|([-`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]+[a-zA-Z]+\d+))[-\da-zA-Z`=\\\[\];',./~!@#$%^&*()_+|{}:<>?]* 数字+字母+字符 或 字母+字符 或 数字+字母 或 数字+字符6-^((?!\d+$)(?![a-zA-Z]+$)[a-zA-Z\d@#$%^&_+].{,})+$ (数字&&字母)|| 字符 ^(?!\d+$)(?![a-zA-Z]+$)(?![a-zA-Z-`=\\\[\];',./~!@#$%^&*()_+|{}:"<>?]+$)(?![0-9-`=\\\[\];',./~!@#$%^&*()_+|{}:"<>?]+$)
      /// <summary>
/// 分页获取数据
/// </summary>
/// <param name = "strWhere">查询条件</param>
/// <param name = "OrderfldName">排序字段名</param>
/// <param name = "PageSize">页大小</param>
/// <param name = "PageIndex">要获取的页内容</param>
/// <returns>分页查询获取的数据集</returns>
public DataSet GetListPlanRegList1(string strWhere, string OrderfldName, int PageSize, int PageIndex)
{
SqlParameter[] parameters = {
new SqlParameter("@tblName", SqlDbType.VarChar, ),
new SqlParameter("@fldName", SqlDbType.VarChar, ),
new SqlParameter("@strWhere", SqlDbType.VarChar,),
new SqlParameter("@OrderfldName", SqlDbType.VarChar, ),
new SqlParameter("@PageSize", SqlDbType.Int),
new SqlParameter("@PageIndex", SqlDbType.Int)
};
parameters[].Value = " dbo.Ex_ExamPlan INNER JOIN dbo.Ex_PlanPerson ON dbo.Ex_ExamPlan.id = dbo.Ex_PlanPerson.plan_id";
parameters[].Value = " dbo.Ex_ExamPlan.*,dbo.Ex_PlanPerson.id as pid,dbo.Ex_PlanPerson.user_id,dbo.Ex_PlanPerson.user_name,dbo.Ex_PlanPerson.istraining,dbo.Ex_PlanPerson.creat_time,dbo.Ex_PlanPerson.isconfirm";
parameters[].Value = strWhere;
parameters[].Value = OrderfldName;
parameters[].Value = PageSize;
parameters[].Value = PageIndex;
return SqlHelper.ExecuteDataSet(CommandType.StoredProcedure, "UP_GetRecordByPageOrder", parameters);
}

验证电话:

    #region 验证手机号

    /// <summary>
/// 验证手机号
/// </summary>
/// <param name="source"></param>
/// <returns></returns>
public static bool IsMobile(string source)
{
//return Regex.IsMatch(source, @"^1[3-8]\\d{9}", RegexOptions.IgnoreCase);
return Regex.IsMatch(source, @"^(0|86|17951|086)?(13[0-9]|15[012356789]|17[0678]|18[0-9]|14[57])[0-9]{8}$");
}
/// <summary>
/// 座机
/// 匹配3位或4位区号的电话号码,其中区号可以用小括号括起来,
/// 也可以不用,区号与本地号间可以用连字号或空格间隔,
/// 也可以没有间隔
/// \(0\d{2}\)[- ]?\d{8}|0\d{2}[- ]?\d{8}|\(0\d{3}\)[- ]?\d{7}|0\d{3}[- ]?\d{7}
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public static bool IsPhone(string input)
{
string pattern = "^\\(0\\d{2}\\)[- ]?\\d{8}$|^0\\d{2}[- ]?\\d{8}$|^\\(0\\d{3}\\)[- ]?\\d{7}$|^0\\d{3}[- ]?\\d{7}$";
Regex regex = new Regex(pattern);
return regex.IsMatch(input);
}
public static bool IsAllPhone(string input)
{
bool ret = false;
if (IsPhone(input) || IsMobile(input))
{
ret = true;
}
return ret;
}
#endregion

like参数化模糊查询

  protected void Page_Load(object sender, EventArgs e)
{
//string strSql = "select * from tbl_music where musicname like '%@ii%'";//错误的
string strSql = "select * from tbl_music where musicname like '%'+@name+'%'";//正确的
SqlParameter[] p ={
new SqlParameter("@name",SqlDbType.NVarChar)
};
p[0].Value = "爱";
DataSet ds = DbHelperSQL.Query(strSql,p);
GridView1.DataSource = ds.Tables[0];
GridView1.DataBind();
}

  

最新文章

  1. 安装numpy库
  2. 反转链表,时间复杂度O(n),空间复杂度O(1)
  3. DOM相关知识点以及原型
  4. TCP连接——爱的传声筒
  5. 【Spring】Spring系列3之Spring AOP
  6. String是引用类型
  7. Iframe刷新父窗口的几种方式
  8. Right-BICEP 测试四则运算二程序
  9. zoj1610 线段树
  10. dd 命令实时进度监控
  11. postgresql 分区表
  12. 常用应用层协议HTTP、RTSP、RTMP比较
  13. 第三方框架、AFN、ASI、SDWebImage
  14. Javascript数据类型&mdash;&mdash;undefined和null的异同
  15. iOS中webView加载URL需要处理特殊字符
  16. 使用WMI来控制Windows目录 和windows共享机制
  17. C#中的集合类——HashTable
  18. mac 命令行读取 u盘
  19. Java使用对象流读取文件的问题
  20. HBase篇(3)-架构详解

热门文章

  1. 递归型SPFA+二分答案 || 负环 || BZOJ 4773
  2. 用IDesktopWallpaper接口设置png壁纸
  3. UVA - 1649 Binomial coefficients (组合数+二分)
  4. poj1952 BUY LOW, BUY LOWER[线性DP(统计不重复LIS方案)]
  5. 兼容系列-IE678的兼容
  6. k8sIngress资源
  7. LightOJ-1027-A Dangerous Maze(概率)
  8. 【leetcode】1249. Minimum Remove to Make Valid Parentheses
  9. 一组相关联的问题:“sudo: unable to resolve host ###: Connection timed out”、软件启动速度超慢、IPv6无法使用
  10. Binding 指令实现双向数据绑定