求一个asp.net 程序实例。获取当前网站所有虚拟目录的绝对路径

求一个asp.net 程序实例。获取当前网站所有虚拟目录的绝对路径,第1张

这是我以前写的一个上传的时候,里面用到了获取路径的代码,你看看对你有用不吧,如果对这个代码有不懂的,可以追问,下面附上我的代码:

protected void btnUp_Click(object sender, EventArgs e)

{

//1验证是否选择文件

if (fuImgHasFile)

{

//2验证文件类型是否符合要求

//获取文件后缀()

string strFileType = PathGetExtension(fuImgPostedFileFileName)ToLower();//获取文件后缀名,ToLower():转化为小写

//4获取上传后的目录//将虚拟路径映射成物理目录路径

string strPath = ServerMapPath(ConfigurationManagerAppSettings["upPath"]ToString());

//获取配置文件Webconfig中appSettings中的imgType

string strType = ConfigurationManagerAppSettings["imgType"]ToString();

if (strTypeIndexOf(strFileType) > -1)

{

//3验证文件大小

if (fuImgPostedFileContentLength < 2048000)

{

DateTime dtNow = DateTimeNow;

//以年月日创建文件夹

strPath += dtNowToString("yyyy-MM-dd")+"\\";

try

{

//验证指定目录文件夹是否存在

if (!DirectoryExists(strPath))

{

//创建文件夹

DirectoryCreateDirectory(strPath);

}

//文件重命名

string strNewName = dtNowToString("yyyyMMddhhmmssfff") + strFileType;

//保存(服务器)

fuImgSaveAs(strPath + strNewName);

ResponseWrite("文件上传成功!");

}

catch (Exception ex)

{

ResponseWrite(exMessage);

}

}

else

ResponseWrite("对不起,上传文件不得超过2M!");

}

else

ResponseWrite("对不起,上传文件类型不正确!");

}

else

ResponseWrite("对不起,请选择上传文件!");

}

>

Aspnet生成htm静态文件的两种途径

现在很多网站特别是资讯类的都把内容生成静态页(htm\html\shtml等),

分别是通过模板(比较常用)和根据url生成(不到万不得以不用,因为这中方式只能获取html的部分):

Aspnet生成静态文件(根据时间自动命名保持,默认扩展名是htm可以自行修改)。

通过收入内容替换模板或者url地址两种方式进行静态文件的生成

templetehtm为模板文件,htm为生成后的静态文件保存位置

这类粘贴出cs文件

以下为引用的内容:

1 //51aspxcom生成静态页演示文件,转载请保留该信息

2 public partial class _Default : SystemWebUIPage

3 {

4 protected void Page_Load(object sender, EventArgs e)

5 {

6

7 }

8

9 //根据模板生成,保持在html文件夹中(部分源码搜集于网络)

10 protected void Button1_Click(object sender, EventArgs e)

11 {

12 //源码是替换掉模板中的特征字符

13

14 string mbPath =ServerMapPath("templatehtm");

15 Encoding code = EncodingGetEncoding("gb2312");

16 StreamReader sr = null;

17 StreamWriter sw = null;

18 string str = null;

19

20 //读取

21 try

22 {

23 sr = new StreamReader(mbPath, code);

24 str = srReadToEnd();

25

26 }

27 catch (Exception ex)

28 {

29 throw ex;

30 }

31 finally

32 {

33 srClose();

34 }

35

36 //根据时间自动重命名,扩展名也可以自行修改

37 string fileName = DateTimeNowToString("yyyyMMddHHmmss") + "htm";

38 str = strReplace("$title$", txtTitleText);//替换Title

39 str = strReplace("$content$", txtContentText);//替换content

40

41 //生成静态文件

42 try

43 {

44 sw = new StreamWriter(ServerMapPath("htm/") + fileName, false, code);

45 swWrite(str);

46 swFlush();

47

48 }

49 catch (Exception ex)

50 {

51 throw ex;

52 }

53 finally

54 {

55 swClose();

56 ResponseWrite("恭喜<a href=htm/"+fileName+" target=_blank>"+fileName+"</a>已经生成,保存在htm文件夹下!");

57 }

58

59

60 }

61

62

63 //根据Url地址生成静态页保持

64 protected void Button2_Click(object sender, EventArgs e)

65 {

66 Encoding code = EncodingGetEncoding("utf-8");

67 StreamReader sr = null;

68 StreamWriter sw = null;

69 string str = null;

70

71 //读取远程路径

72 WebRequest temp = WebRequestCreate(txtUrlTextTrim());

73 WebResponse myTemp = tempGetResponse();

74 sr = new StreamReader(myTempGetResponseStream(), code);

75 //读取

76 try

77 {

78 sr = new StreamReader(myTempGetResponseStream(), code);

79 str = srReadToEnd();

80

81 }

82 catch (Exception ex)

83 {

84 throw ex;

85 }

86 finally

87 {

88 srClose();

89 }

90 string fileName = DateTimeNowToString("yyyyMMddHHmmss") + "htm";

91

92 //写入

93 try

94 {

95 sw = new StreamWriter(ServerMapPath("htm/") + fileName, false, code);

96 swWrite(str);

97 swFlush();

98

99 }

100 catch (Exception ex)

101 {

102 throw ex;

103 }

104 finally

105 {

106 swClose();

107 ResponseWrite("恭喜<a href=htm/" + fileName + " target=_blank>" + fileName + "</a>已经生成,保存在htm文件夹下!");

108 }

109

110 }

111 }

只是一个Demo文件,仅供大家参考,也希望有其他生成方式的也讨论一下

给你一个实例,慢慢研究吧:用户登录验证脚本,Chkpwdasp

以下为引用的内容:

<%

'=======用户登录验证脚本=======

'如果尚未定义Passed对象,则将其定义为false,表示没有通过验证

If IsEmpty(Session("Passed")) Then

Session("Passed")=false

End If

'Session("Passed")=False,表示尚未通过验证,则开始读取从表单传来的验证信息

If Session("Passed")=False Then

UserName=RequestForm("UserName")

UserPwd=RequestForm("UserPwd")

If UserName="" Then

Errmsg="提示:请输入用户名和密码"

Else

'===================连接数据库=====================

Set Conn= ServerCreateObject("ADODBConnection")

ConnConnectionstring= "Driver={SQL Server};Server=19216813;UID=sa;PWD=;Database=zcmrs"

Connopen

'===================从表log中读取用户数据=====================

'定义RecordSet对象

Set rs=ServerCreateObject("ADODBRecordset")

'设置Connection对象的ConnectionString

Set rsActiveConnection=Conn

'设置游标类型

rsCursorType=3

'打开记录集

rsOpen "Select username,password from erpuser Where username='"&UserName&"'"

'===================身份验证======================

If rsEOF Then

Errmsg="提示:用户不存在或密码错误"

Else

If UserPwd<>rsFields("password") Then

Errmsg="提示:登录失败!密码错误?"

Else '登录成功

Errmsg=""

Session("Passed")=True

Session("UserName")=rsFields("username")

'标识用户权限 Session("UserID")=rsFields("UserID")

End If

End If

End If

End If

'经过登录不成功,则画出登录表单

If Not Session("Passed")=True Then

%>

<html>

<head><title>无标题文档</title>

<style type="text/css">

<!--

STYLE1 {font-size: 12px;font-weight:bold;margin-left:120px;outline:double}

-->

</style>

<style type="text/css">

<!--

STYLE2 {font-size: 12px;font-weight:bold;outline:double;color:#FF3333}

-->

</style>

</head>

<body leftmargin=0 topmargin=0 marginheight="0" marginwidth="0" bgcolor="#000000">

<div id=parent style="height:300;width:450;border-style:solid;border-color:#FFFFFF;margin-top:80px;margin-left:25%;margin-right:25%;background-color:#FFFFFF">

<div id=denglu style="font-size:12px;font-weight:bold;background-color:#0099FF;text-align:center;height:40px;"><br>ERP系统登录</div>

<form action="<%=requestServerVariables("path_info")%>" method="post" name="MyForm" id="MyForm">

<p class="STYLE1">用户名:<input name="UserName" type="text" id="UserName" size="18" maxlength="20">

</p>

<p class="STYLE1">密 码:<input name="UserPwd" type="password" id="UserPwd" size="18" maxlength="20">

</p>

<p align="center" class="STYLE2"><%=Errmsg%> </p>

<p> 

<input type="submit" align="middle" name="Submit" value="登录系统"> 

<input name="rege" type="button" align="middle" onClick="location='registerasp'" id="rege" value="注册用户">

</p>

</form>

</div>

</body>

</html>

<%

'<p class="STYLE1">验证码:<input name="CheckCode" type="text" id="CheckCode" size="6" maxlength="4">

'<IMG style="MARGIN-RIGHT: 40px" alt="" src="common/getcodeasp"></p>

responseEnd

End If

%>

要访问的页面erpasp

<以下为引用的内容:

<!--#include file="chkpwdasp"-->

<body>

<div style='font-size:12px;font-weight:bold;border:1px solid #001;padding:4px;background:#FFCCFF;margin-top:0;'>欢迎使用ERP查询系统,当前登录用户为:

<%

If Session("Passed")=True Then

ResponseWrite(Session("UserName"))

End If

%><a href="logoutasp">退出系统</a>

</div>

</body>

以上每次打开erpasp的时候,都首先执行Chkpwdasp(),这样可以有效防止未授权用户访问指定网页

logoutasp系统退出

<body>

<%

Session("Passed")=false

Session("UserName")=""

ResponseRedirect("indexasp")

%>

</body>

使用提交表单

以下为引用的内容:

<form name="form1" method="post" action="">

<td align="right"><input type="image" method="submit" name="submit" src="image/loginingif" width="70" height="21" alt="submit"></td>

</form>

本文通过一个详细的例子 来阐述了在线编辑XML文档数据的方法 由于Netscape对XML的支持比较弱 因此 要实现跨平台的数据交换 数据的处理必须在服务器端进行 要编辑XML文档 首先要做的事情就是怎样把这些数据提取并显示给访问者 XSL为我们显示XML文件提供了一个很好的解决方案 下面的例子就是利用XSL样式单把XML文档显示出来 供用户进行编辑 然后再把编辑后的数据提交到服务器 在服务器端进行数据的更新 这里采用ASP(Active Server Pages)来完成我们的任务 首先 载入我们要进行编辑的XML文档 利用微软的文档对象模型(Microsoft XMLDOM Object)和XSL XML文档就可以在服务器端转换成可以在客户端显示的HTML文件内容 下面先看看我们使用的XML和XSL文件是什么样子的 XML文件 UserData xml<xml version= encoding= gb ><! edited with XMLSPY v rel U () by Dicky (Apple S Eden) ><UserInfo><Field ID= Name TabOrder= ><FieldValue>Dicky</FieldValue></Field><Field ID= Sex TabOrder= ><FieldValue>Male</FieldValue></Field><Field ID= UnitName TabOrder= ><FieldValue>ShangHai Ateam Company</FieldValue></Field><Field ID= Address TabOrder= ><FieldValue>ShangHai ZhongShan West Road # Room A</FieldValue></Field><Field ID= Tel TabOrder= ><FieldValue> </FieldValue></Field><Field ID= EMail TabOrder= ><FieldValue>AppleBBS@GMail Com</FieldValue></Field></UserInfo>XSL文件 UserData xsl<xml version= encoding= gb ><! edited with XMLSPY v rel U () by Dicky (Apple S Eden) ><xsl:stylesheet xmlns:xsl= xsl ><xsl:template match= / ><><meta equiv= Content Type content= text/; charset=gb /><body><form method= post action= EditUserData asp ><h >Edit UserInfo </h ><table border= cellpadding= ><xsl:for each select= UserInfo/Field ><tr><td><xsl:value of select= @ID /></td><td><input type= text ><xsl:attribute name= ID ><xsl:value of select= @ID /></xsl:attribute><xsl:attribute name= Name ><xsl:value of select= @ID /></xsl:attribute><xsl:attribute name= Value ><xsl:value of select= FieldValue /></xsl:attribute></input></td></tr></xsl:for each></table><br/><input type= submit id= btnSubmit name= btnSubmit value= Edit /></form></body></></xsl:template></xsl:stylesheet>XSL文件使用了XSL for each元素的来遍历整个XML文件 XML文件里每个 field 元素的 id 属性和HTML表单的文本输入框的 id 和 name 相对应 这样 HTML表单的文本输入框就显示出了XML文件的元素值 此文件负责XML文档在服务器端的转换 以便能在各种浏览器上显示 下面是关键的程序 它实现打开和更新XML文档的功能 并根据表单的提交与否 来决定是否进行更新 它包含了两个函数 loadXMLFile负责载入和转换要显示的XML文件 updateXML函数负责更新XML文件 EditUserData asp程序如下:<% 定义函数 LoadXMLFile() 接收二个参数 strXMLFile XML 文件的路径和文件名字 strXSLFilee XSL 文件的路径和文件名字 Function LoadXMLFile(strXMLFile strXSLFile) Declare local variablesDim objXMLDim objXSL 实例化 XMLDOM 对象 以便载入 XML 文件 Set objXML = Server CreateObject( Microsoft XMLDOM ) 关掉文件异步载入模式 objXML Async = False 载入 XML 文件!objXML Load(strXMLFile) 实例化 XMLDOM 对象 以便载入 XSL 文件 Set objXSL = Server CreateObject( Microsoft XMLDOM ) 关掉文件异步载入模式 objXSL Async = False 载入 XSL 文件!objXSL Load(strXSLFile) 利用 XMLDOM 的 transformNode 方法 把 XSL 样式表应用到 XML 文档 然后输出到客户端 Response Write(objXML TransFormNode(objXSL))End Function 函数 updateXML() 接收一个参数 strXMLFile XML 文件的路径和文件名 Function UpdateXML(strXMLFile) 声明局部变量 Dim objDomDim objRootDim objFieldDim x 实例化 XMLDOM 对象 Set objDOM = Server CreateObject( Microsoft XMLDOM ) 关掉文件异步载入模式 objDom Async = False 载入 XML 文件 objDom Load strXMLFile 设定根元素 Set objRoot = objDom DocumentElement 遍历 FORM 集合 并把提交的数据写入 XML 文件 For x = To Request Form Count 检查提交的数据是否包含按钮 如果是 忽略此数据 If Instr( Request Form Key(x) btn ) = Then 按照 XSL 查询模式 建立 objField 变量 把表单的元素对应到 XML 文档里的相应元素[field_value] Set objField = objRoot SelectSingleNode( Field[@ID= & Request Form Key(x) & ]/FieldValue ) 把表单提交的数据和 XML 文档里的节点值对应起来 objField Text = Request Form(x)End IfNext 保存编辑过的 XML 文件 objDom Save strXMLFile 释放所有对对象的引用 Set objDom = NothingSet objRoot = NothingSet objField = Nothing 调用 LoadXMLFile 函数 把新编辑后的 XML 文件用 UpdatedUserData xsl 样式单显示到客户端 LoadXMLFile strXMLFile Server MapPath( UpdatedUserData xsl )End Function 检查表单是否成功提交 如提交 更新 XML 文件 否则 转到编辑状态 If Request Form( btnSubmit ) = ThenLoadXMLFile Server MapPath( UserData xml ) Server MapPath( UserData xsl )ElseUpdateXML Server MapPath( UserData xml )End If%>当表单提交成功后 我们用UpdatedUserData xsl来显示我们刚刚编辑的数据 UpdatedUserData xsl如下:<xml version= encoding= gb ><! edited with XMLSPY v rel U () by Dicky (Apple S Eden) ><xsl:stylesheet xmlns:xsl= xsl ><xsl:template match= / ><><meta equiv= Content Type content= text/; charset=gb /><body><h >Updated UserInfo </h ><table border= cellpadding= ><xsl:for each select= UserInfo/Field ><tr><td><xsl:value of select= @ID /></td><td><xsl:value of select= FieldValue /></td></tr></xsl:for each></table><form><input type= button value= Go Back onclick= history go( ) /></form></body></></xsl:template></xsl:stylesheet>以上只是XML跨平台应用的一个简单的例子 结合具体的需求 我们可以编写功能更强大的程序来完成我们更负杂的工作 所有程序在Windows En+IIS +IE +MSXML Dll环境下调试通过 lishixinzhi/Article/program/net/201311/13728

'magasp

'---------------------------------

<a href="modifyaspaction=m">改</a>

<a href="deleteaspaction=d">删</a>

<a href="addaspaction=a">增</a>

<%

select case request("action")

case "m"

'改

case "d"

'删

case "a"

'增

end select

%>

以上就是关于求一个asp.net 程序实例。获取当前网站所有虚拟目录的绝对路径全部的内容,包括:求一个asp.net 程序实例。获取当前网站所有虚拟目录的绝对路径、求asp网页制作实例、asp生成html程序的网站的实例,请大家提供一个等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9279609.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存