56、
xml节点查找
/// <summary>
/// 在xmlData中根据ByNodeName的内容ByNodeText,得到同级别节点NodeName的NodeText
/// </summary>
/// <param name="xmlData"></param>
/// <param name="ByNodeName"></param>
/// <param name="ByNodeText"></param>
/// <param name="NodeName"></param>
/// <returns></returns>
public static string GetNodeText(string xmlData, string ByNodeName, string ByNodeText, string NodeName)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xmlData);
XmlNodeList xnList = xmlDoc.SelectNodes(@"//" + ByNodeName);
foreach (XmlNode xn in xnList)
{
if (xn.InnerText.Equals(ByNodeText))
{
XmlNodeList xnl = xn.ParentNode.ChildNodes;
foreach (XmlNode xmlNode in xnl)
{
if (xmlNode.Name.Equals(NodeName))
return xmlNode.InnerText;
}
}
}
return "";
}
57、
string strReturn = string.Empty;
//用xml来读取节点
XmlDocument doc = new XmlDocument();
//doc.Load(Server.MapPath(@"D:/Program Files/气象生态环境监测系统(GPRS)/Temp/24d5.xml"));
doc.Load(Server.MapPath(@"../xml/24d5.xml"));
XmlElement root = doc.DocumentElement;
58、
从xml文件子节点读取数据
XML文件
<?xml version="1.0"?>
<TransducerFactory xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<_EnvirTemp>
<IsVisualable>false</IsVisualable>
<Value>22.3</Value>
</_EnvirTemp>
<_Temperature1>
<IsVisualable>false</IsVisualable>
<Value>-0</Value>
</_Temperature1>
</TransducerFactory>
Aspx页面 设置一个显示的标签
<td style="width:186px" align="center">
<asp:Label id="EMITemp_Text" runat="server" Width="186px" CssClass="Label"></asp:Label></td>
引用集
using System.Xml;
//Page_Load页面
protected void Page_Load(object sender, EventArgs e)
{
GetNodeText("D:/Program Files/气象生态环境监测系统(GPRS)/Temp/24d5.xml", "TransducerFactory", "_EnvirTemp", "Value");
}
//方法
#region
/// <summary>
/// 在xmlData中根据ByNodeName的内容ByNodeText,得到同级别节点NodeName的NodeText
/// </summary>
/// <param name="xmlData"></param>
/// <param name="ByNodeName"></param>
/// <param name="ByNodeText"></param>
/// <param name="NodeName"></param>
private void GetNodeText(string xmlData, string ByNodeName, string ByNodeText, string NodeName)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xmlData);
XmlNode XN = xmlDoc.SelectSingleNode(@"//" + ByNodeName + "//" + ByNodeText);
EMITemp_Text.Text = XN.LastChild.InnerText;
}
#endregion
59、
定时刷新整个页面
<meta http-equiv="refresh" content="10"/>
60、
报表翻页,在Page_Init中调用生成报表方法,才能翻页
page_load是页面初始化。
page_Init是服务器控件应执行任何创建和设置实例所需的初始化步骤。
Page_Init()主要是初始化一些事件的声明方法
#region
/// <summary>
/// 初始化报表
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Init(object sender, EventArgs e)
{
//调用生成报表方法
createReport();
}
#endregion
61、
//需要设置横坐标的间隔和偏移都设为1 不然坐标多了会显示不全
Chart2.ChartAreas[0].AxisX.Interval = 1;
Chart2.ChartAreas[0].AxisX.IntervalOffset = 1;
Chart2.ChartAreas[0].AxisX.LabelStyle.IsStaggered = true;
//鼠标放上去会显示数据
//chart1.Series[0].ToolTip = "X value \t= #VALX{d}\nY value \t= #VALY{D}";
EMIDayChart.Series["Series1"].ToolTip = "(#VALX{d},#VALY{D})";
62、
<!--曲线图之圆饼图 -->
<tr>
<td>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
width="600" height="500" id="Column3D" align="bottom" >
<param name="movie" value="../FusionCharts/FCF_Pie2D.swf" />
<param name="FlashVars" value="&dataURL=../xml/Data.xml&chartWidth=600&chartHeight=500" />
<param name="quality" value="high" />
<embed src="../FusionCharts/FCF_Pie2D.swf" flashVars="&dataURL=../xml/Data.xml&chartWidth=600&chartHeight=500" quality="high" width="600" height="500" name="Column3D" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</td></tr>
63、
解决 ASP.NET Chart 控件出错 为 ChartImg.axd 执行子请求时出错
1. 修改web.Config
<add key="ChartImageHandler" value="storage=file;timeout=20;url=~/TempImages/;" />
将其中的 dir=c:\TempImages\ 的绝对路径 修改外 url=~/TempImages/ 相对路径 (前提条件:网站文件中必须包含 TempImages文件夹)
2. 修改
<add path="ChartImg.axd" verb="GET,HEAD" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false" />
为
<add path="ChartImg.axd" verb="GET,POST,HEAD" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false" />
3. 修改
<add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD"
path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
为:
<add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD,POST"
path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
64、
弹出一个大小为<500,400>的窗口
Response.Write(@"<script language='javascript'>"
+ "window.open('bbb.aspx?s= "+s+" ','win','width=500,height=400');\n</"
+ "script>");
65、
网站发布
1:注意防火墙是否关闭,否则可能导致无法访问发布的网站;
2:通过vs2008先发布网站(每修改一次必需重新发布一次网站)
3:进入管理工具,打开Internet 信息服务(即IIS)
4:在本机网站—默认网站下新建虚拟目录(根据虚拟目录向导进行设置)
5:属性默认为纯脚本
6:如果其他PC无法打开网站,请先用ping命令尝试,看是否能访问到本机。
66、
ftp发布
修改数据库引用路径
设置
若要使他人能够在远程计算机上查看此特定错误消息的详细信息,请在位于当前 Web 应用程序根目录下的“web.config”配置文件中创建一个 <customErrors> 标记。然后应将此 <customErrors> 标记的“mode”属性设置为“Off”。
<!-- Web.Config 配置文件 -->
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
</configuration>(2010-5-26 9:15)
67、
/// 设置默认页面编码格式
</runtime>
<!--<system.web>
<globalization requestEncoding="GB2312" responseEncoding="GB2312" fileEncoding="GB2312"/>
</system.web>-->
</configuration>
68、
给数据表增加选择
aspx页面
<script language="javascript" type="text/javascript">
function selectAll(obj)
{
var theTable = obj.parentElement.parentElement.parentElement;
var i;
var j = obj.parentElement.cellIndex;
for(i=0;i<theTable.rows.length;i++)
{
var objCheckBox = theTable.rows[i].cells[j].firstChild;
if(objCheckBox.checked!=null)objCheckBox.checked = obj.checked;
}
}
</script>
<!—控件
<asp:GridView ID="ChartCharacterAddGv" width="100%" AllowPaging="True" runat="server"
AllowSorting="True" CssClass="GridViewStyle" AutoGenerateColumns="False"
onpageindexchanging="ChartCharacterAddGv_PageIndexChanging"
DataKeyNames="CCID" OnRowDataBound="ChartCharacterAddGv_RowDataBound">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Checked="False" Text="<%# Container.DataItemIndex + 1%> " />
</ItemTemplate>
<HeaderTemplate>
<input id="CheckAll" type="checkbox" οnclick="selectAll(this)" /> 全选
</HeaderTemplate>
</asp:TemplateField>
<asp:BoundField DataField="CCID" HeaderText="字段编号" ReadOnly="True"
ItemStyle-Width="30%">
</asp:BoundField>
<asp:BoundField DataField="CCName" HeaderText="字段名称" ReadOnly="True"
ItemStyle-Width="30%">
</asp:BoundField>
<asp:BoundField DataField="DelFlg" HeaderText="删除标识" ReadOnly="True"
ItemStyle-Width="30%">
</asp:BoundField>
<asp:BoundField DataField="CCID" Visible="False" />
</Columns>
<FooterStyle />
<RowStyle CssClass="RowStyle" />
<EmptyDataRowStyle />
<PagerStyle CssClass="PagerStyle" />
<SelectedRowStyle CssClass="SelectedRowStyle" />
<HeaderStyle CssClass="HeaderStyle" />
<EditRowStyle CssClass="EditRowStyle" />
<AlternatingRowStyle CssClass="AltRowStyle" />
</asp:GridView>
Aspx.cs页面
#region
///表中进行选择
/// <summary>
/// 获取或是设置已选中项的集合
/// </summary>
protected ArrayList SelectedItems
{
get
{
return (ViewState["mySelectedItems"] != null) ? (ArrayList)ViewState["mySelectedItems"] : null;
}
set
{
ViewState["mySelectedItems"] = value;
}
}
protected void ChartCharacterAddGv_DataBinding(object sender, EventArgs e)
{
//在每次重新绑定之前,通过调用CollectSelected方法从当前页收集选中项的情况
CollectSelected();
}
protected void ChartCharacterAddGv_RowDataBound(object sender, GridViewRowEventArgs e)
{
//这里的处理是为了回显之前选中的情况
if (e.Row.RowIndex > -1 && this.SelectedItems != null)
{
DataRowView row = e.Row.DataItem as DataRowView;
CheckBox cb = e.Row.FindControl("CheckBox1") as CheckBox;
if (this.SelectedItems.Contains(row["CCID"].ToString()))
cb.Checked = true;
else
cb.Checked = false;
}
}
/// <summary>
/// 从当前页收集选中项的情况
/// </summary>
protected void CollectSelected()
{
ArrayList selectedItems = null;
if (this.SelectedItems == null)
selectedItems = new ArrayList();
else
selectedItems = this.SelectedItems;
for (int i = 0; i < this.ChartCharacterAddGv.Rows.Count; i++)
{
string CCID = this.ChartCharacterAddGv.Rows[i].Cells[1].Text;
CheckBox cb = this.ChartCharacterAddGv.Rows[i].FindControl("CheckBox1") as CheckBox;
if (selectedItems.Contains(CCID) && !cb.Checked)
selectedItems.Remove(CCID);
if (!selectedItems.Contains(CCID) && cb.Checked)
selectedItems.Add(CCID);
}
// this.SelectedItems = selectedItems;
}
#endregion