[转载]初学者的小小结
1. 如何读取系统时间
DateTime dateNow=DateTime.Now;
string P_UpdateTime=dateNow.ToString();
=================
2.在类中获得当前 HTTP 请求的 HttpContext 对象的引用,如:Request、Response 和 Server 对象的访问
response 对应的类是 HttpResponse, 在 System.Web 命名字间里, 如果你在类中要使用 Response 的话, 需要使用 HttpContext.Current.Response 来取得 Response 对象
======================
3.在类中Server.MapPath,出错:缺少Server类所在的命名空间
在没有继承page的类中,应该这样写
HttpContext.Current.Server.MapPath
=========================
4.Response.write ,Response.redirect问题
Response.Write("<script language='JavaScript'>alert('公司资料成功!');</script>");
Response.Redirect ("O_Company.aspx");
这样写客户端不会执行JARASCRIPT
原因:在服务器端URL转向,当前页面马上停止执行。(用了它之后,你当前页面向客户端返回的代码不会返回,因为服务器还没返回代码给你,就已经停止执行了)Response.Write("<script language='javascript'> alert('公司资料成功!');</script>");
只有当页面重载的时候才会执行~~~~
建议你这样写:
Response.Write("<script language='javascript'> alert(\"您还没有登陆或者登陆已经超时!\");self.location.href='login.aspx';</script>");
Server.Transfer 和 Response.Redirect 区别很大的。
前者相当于在当前页面不跳转,继续执行新页面的代码,而且新页面可以访问到当前页面的所有公开信息(public的成员),有点像include的用法,但也不完全是。
后者就是在服务器端URL转向,当前页面马上停止执行。(用了它之后,你当前页面向客户端返回的代码不会返回,因为服务器还没返回代码给你,就已经停止执行了)
===============
5.在ASPX中截取字符串
英文的:
.cs文件
public string GetSub(object obj)
{
string str=obj.ToString();
if(str.Length<=22) return str;
return str.Substring(0,22)+"...";
}
.相应的.aspx文件
<%# GetSub(Databinder(Container.DataItem,"a_title"))%>
6.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
PageIndexChanged事件和ItemCommand事件同时存在问题
pageindex 也是属于DataGridItemCommand里面的
所以你要在你的函数体里面添加判断语句if(e.CommandName != "Page") 来区分是不是分页命令
private void DG_MarketCond_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
DG_MarketCond.CurrentPageIndex=e.NewPageIndex;
DG_DataBind();
}
private void DG_MarketCond_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName!="Page")
{
DateTime dt=DateTime.Now;
string M_Time=dt.ToString();
string sql_update="update MarketCondition set M_Time='"+M_Time+"' where M_ID="+e.Item.Cells[0].Text;
chinaAgent.dataAccess.ExecuteSql(sql_update);
DG_DataBind();
}
}
++++++++++++++++++++++++++++++++++++++++++++++++++++
7. 怎样动态生成网页的标题?
前台:
<title id="titletxt" runat="server"><title>
后台:
protected System.Web.UI.HtmlControls.HtmlGenericControl titletxt;
titletxt = "XXXXX";
==================================
9.生成模板页
public static bool WriteFile(string strText,string strContent,string strAuthor)
{
string path = HttpContext.Current.Server.MapPath("/news/");
Encoding code = Encoding.GetEncoding("gb2312");
// 读取模板文件
string temp = HttpContext.Current.Server.MapPath("/news/text.html");
StreamReader sr=null;
StreamWriter sw=null;
string str="";
try
{
sr = new StreamReader(temp, code);
str = sr.ReadToEnd(); // 读取文件
}
catch(Exception exp)
{
HttpContext.Current.Response.Write(exp.Message);
HttpContext.Current.Response.End();
sr.Close();
}
string htmlfilename=DateTime.Now.ToString("yyyyMMddHHmmss")+".html";
// 替换内容
// 这时,模板文件已经读入到名称为str的变量中了
str =str.Replace("ShowArticle",strText); //模板页中的ShowArticle
str = str.Replace("biaoti",strText);
str = str.Replace("content",strContent);
str = str.Replace("author",strAuthor);
// 写文件
try
{
sw = new StreamWriter(path + htmlfilename , false, code);
sw.Write(str);
sw.Flush();
}
catch(Exception ex)
{
HttpContext.Current.Response.Write(ex.Message);
HttpContext.Current.Response.End();
}
finally
{
sw.Close();
}
return true;
此函数放在Conn.CS基类中了
在添加新闻的代码中引用 注:工程名为Hover
if(Hover.Conn.WriteFilethis.Title.Text.ToString),this.Content.Text.ToString),this.Author.Text.ToString)))
{
Response.Write("添加成功");
}
else
{
Response.Write("生成HTML出错!");
}
------------------
模板页Text.html代码
-------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>ShowArticle</title>
<body>
biaoti
<br>
content<br>
author
</body>
</HTML>
转载自tony990的专栏
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架