国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

用ASP.NET和XML做的新聞系統

2024-07-10 12:59:34
字體:
來源:轉載
供稿:網友
這里我就用xml代替數據,寫一個新聞發布系統,希望能夠起到拋磚引玉的作用,使更多的人能夠了解這些最新的技術。下面介紹這幾個文件。


contents.xml
<?xml version="1.0" encoding="gb2312"?>
<topiclist type="aspcool news">
<topic>
<title>aspcool news!</title>
<href>main.aspx?name=hello</href>
</topic>
<topic>
<title>resolve a problem</title>
<href>main.aspx?name=test</href>
</topic>
</topiclist>

  這是一個很簡單的xml文件,它的作用是用來顯示新聞的列表。


hello.xml
<?xml version="1.0" encoding="gb2312"?>
<document>
<title>aspcool news!</title>
<abstract>test news</abstract>
<author>feiying</author>
<content>
<paragraph>the firet test</paragraph>
</content>
</document>

  這個文件是用來顯示新聞的內容,其中各個意思大家一看就明白,我就不在這兒多說了。

  下面給大家看新聞列表顯示的頁面。


news.aspx
<%@ import namespace="system"%>
<%@ page language="c#" debug="true" codepage="936"%>
<%@ import namespace="system.io" %>
<%@ assembly name="system.xml" %>
<%@ import namespace="system.xml" %>
<%@ import namespace="system.xml.xsl" %>
<html>
<head>
<title>
</title>
<script language="c#" runat="server">
public string xslt()
{
stringwriter writer = new stringwriter();
//裝入xml對象
xmldocument xmldoc= new xmldocument();
xmldoc.load(server.mappath("contents.xml"));
//裝入xsl對象
xsltransform xsldoc = new xsltransform();
xsldoc.load(server.mappath("news.xsl"));
//把xml轉化成html頁面
documentnavigator nav= new documentnavigator(xmldoc);
xsldoc.transform(nav,null,writer);
return writer.tostring();
}
</script>
</head>
<body>
<%=xslt()%>
<p align="center">

  該程序由<a href="www.aspcool.comhttp://www.aspcool.com">www.aspcool.com</a>設計制作.


</p>
</body>
</html>

  這個頁面完成了從xml通過xslt轉化成html文件,也使我對于xslt有了進一步的認識。

  下面是新聞內容顯示的頁面:


main.aspx
<%@ import namespace="system"%>
<%@ page language="c#" debug="true" codepage="936"%>
<%@ import namespace="system.io" %>
<%@ assembly name="system.xml" %>
<%@ import namespace="system.xml" %>
<%@ import namespace="system.xml.xsl" %>
<html>
<head>
<title>
</title>
<script language="c#" runat="server">
public string xslt()
{
stringwriter writer = new stringwriter();
xmldocument xmldoc= new xmldocument();
xmldoc.load(server.mappath(request["name"] +".xml"));
xsltransform xsldoc = new xsltransform();
xsldoc.load(server.mappath("main.xsl"));
documentnavigator nav= new documentnavigator(xmldoc);
xsldoc.transform(nav,null,writer);
return writer.tostring();
}
</script>
</head>
<body>
<%=xslt()%>
<p align="center">該程序由<a href="www.aspcool.comhttp://www.aspcool.com">www.aspcool.com</a>設計制作.</p>
</body>
</html>

  這個功能和上面的一樣,我在這兒就不多說了。


  最后,大家來看一下最負責的一個頁面,這個頁面的作用就是用來建立新的xml數據。


manage.aspx
<%@ import namespace="system.xml.xsl" %>
<%@ import namespace="system.xml" %>
<%@ assembly name="system.xml" %>
<%@ import namespace="system.io" %>
<%@ page language="c#" debug="true" codepage="936"%>
<%@ import namespace="system"%>
<html>
<head>
<script language="c#" runat="server">
public void button1_click(object sender, system.eventargs e)
{
//判斷文件是否存在
if(file.exists(server.mappath(textbox1.text +".xml")))
{
response.write("文件名已經存在,請重選文件名。");
response.end() ;
}
else
{
xmlnode currnode;
xmldocument xmldoc = new xmldocument();
xmldoc.load(server.mappath("contents.xml"));
string insstr="<topic><title>"+textbox2.text+"</title><href>
main.aspx?name="+textbox1.text+"</href></topic>";
xmldocumentfragment docfrag = xmldoc.createdocumentfragment();
docfrag.innerxml = insstr;
currnode = xmldoc.documentelement;
currnode.insertafter(docfrag, currnode.lastchild);
//save the output to a file
xmldoc.save (server.mappath("contents.xml"));
//把textbox5中的文件換成符合xml格式的內容。
string xmlfile =textbox5.text.replace("&","&");
xmlfile = xmlfile.replace("<","<");
xmlfile = xmlfile.replace(">",">");
xmlfile = xmlfile.replace( @"""""",""");
xmlfile = xmlfile.replace(""","&apos;");
xmlfile = xmlfile.replace ("/n","</paragraph><paragraph>");
//把數據寫入新建的xml文件中去。
xmldocument doc = new xmldocument();
doc.loadxml ("<?xml version="1.0" encoding="gb2312"?>
<document><title>"+textbox2.text +"</title><abstract>"+
textbox4.text "</abstract><author>"+textbox3.text+
"</author><content><paragraph>"+xmlfile+"</paragraph>
</content></document>");
doc.save (server.mappath(textbox1.text +".xml"));
response.write("you hava input the article!");
textbox1.text="";
textbox2.text="";
textbox3.text="";
textbox4.text="";
textbox5.text="";
}
//向目錄文件中寫數據
}
public void button2_click(object sender, system.eventargs e)
{}
</script>
<meta content="internet explorer 5.0" name=vs_targetschema>
<meta content="microsoft visual studio 7.0" name=generator>
<meta content=c# name=code_language>
</head>
<body ms_positioning="gridlayout">
<form runat="server">
<font face=宋體>
<asp:label id=label1 style="z-index: 100; left: 230px; position:
absolute; top: 27px" runat="server" height="28px" width="156px">
asp酷技術資訊網網站內容發布系統
</asp:label>
<asp:label id=label2 style="z-index: 101; left: 110px; position:
absolute; top: 68px" runat="server" height="25px" width="65px">
文件名:
</asp:label>
<asp:textbox id=textbox1 style="z-index: 102; left: 255px; position:
absolute; top: 64px" runat="server" height="33px" width="178px" >
</asp:textbox>
<asp:label id=label3 style="z-index: 103; left: 108px; position:
absolute; top: 126px" runat="server" height="36px" width="86px">
文章名稱:
</asp:label>
<asp:textbox id=textbox2 style="z-index: 104; left: 256px; position:
absolute; top: 114px" runat="server" height="37px" width="177px">
</asp:textbox>
<asp:label id=label4 style="z-index: 105; left: 114px; position:
absolute; top: 183px" runat="server" height="31px" width="89px">
作者:
</asp:label>
<asp:textbox id=textbox3 style="z-index: 106; left: 256px; position:
absolute; top: 183px" runat="server" height="36px" width="179px">
</asp:textbox>
<asp:label id=label5 style="z-index: 107; left: 114px; position:
absolute; top: 241px" runat="server" height="51px" width="81px">
摘要:
</asp:label>
<asp:textbox id=textbox4 style="z-index: 108; left: 256px; position:
absolute; top: 245px" runat="server" height="36px" width="179px">
</asp:textbox>
<asp:label id=label6 style="z-index: 109; left: 116px; position:
absolute; top: 315px" runat="server" height="36px" width="78px">
內容:
</asp:label>
<asp:textbox id=textbox5 style="z-index: 110; left: 259px; position:
absolute; top: 303px" runat="server" height="95px" width="252px"
textmode="multiline">
</asp:textbox>
</font>


<input id=button2 style="z-index: 113; left: 343px; width: 40px;
position: absolute; top: 430px; height: 24px" type=button value=重置
name=button2 runat="server" onserverclick="button2_click" designtimedragdrop="59">
<br>
<br>
<div id=mess runat=server>
</div>
<br>
<input type="button" value="提交" onserverclick="button1_click"
runat="server" id="button1" name="button1" style="z-index: 112;
left: 268px; position: absolute; top: 430px">
</form>
</body>
</html>


  此程序在.net beta2 build 9148下測試通過。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沧州市| 乃东县| 基隆市| 吉林省| 聂拉木县| 高邑县| 桑日县| 亚东县| 五大连池市| 寿宁县| 耿马| 安阳市| 黎城县| 黄浦区| 手机| 凤山县| 河间市| 政和县| 离岛区| 平阴县| 大城县| 台东县| 靖西县| 舒城县| 浦县| 兰州市| 将乐县| 天水市| 嵊泗县| 安化县| 安吉县| 灌南县| 西充县| 阆中市| 新泰市| 阜平县| 武平县| 南丰县| 济宁市| 忻州市| 龙岩市|