|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
无法实现跨操作系统的应用。当然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的;server|sqlserver起首要创立一个表包括自段image和type范例各自为image和vnanchar
WebForm1.aspx
<%@Pagelanguage="c#"Codebehind="WebForm1.aspx.cs"AutoEventWireup="false"Inherits="ReadAndWritePicFromDB.WebForm1"%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN"><HTML><HEAD><title>WebForm1</title><metaname="GENERATOR"Content="MicrosoftVisualStudio.NET7.1"><metaname="CODE_LANGUAGE"Content="C#"><metaname="vs_defaultClientScript"content="JavaScript"><metaname="vs_targetSchema"content="http://schemas.microsoft.com/intellisense/ie5"></HEAD><bodyMS_POSITIONING="GridLayout"><formid="Form1"method="post"runat="server"><FONTface="宋体"><INPUTid="File1"style="Z-INDEX:101;LEFT:112px;POSITION:absolute;TOP:88px"type="file"name="File1"runat="server"></FONT><asp:Buttonid="Button1"style="Z-INDEX:102;LEFT:400px;POSITION:absolute;TOP:88px"runat="server"Text="Write"Width="104px"></asp:Button><asp:Buttonid="Button2"style="Z-INDEX:103;LEFT:552px;POSITION:absolute;TOP:88px"runat="server"Text="Read"Width="105px"></asp:Button></form></body></HTML>
WebForm1.aspx.cs
usingSystem;
usingSystem.Collections;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Web;
usingSystem.Web.SessionState;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.HtmlControls;
usingSystem.IO;
usingSystem.Data.SqlClient;
namespaceReadAndWritePicFromDB
{
///<summary>
///WebForm1的择要申明。
///</summary>
publicclassWebForm1:System.Web.UI.Page
{
protectedSystem.Web.UI.HtmlControls.HtmlInputFileFile1;
protectedSystem.Web.UI.WebControls.ButtonButton1;
privatestringfileName="";
protectedSystem.Web.UI.WebControls.ButtonButton2;
privatestaticSqlConnectionconn=null;
privatevoidPage_Load(objectsender,System.EventArgse)
{
//在此处安排用户代码以初始化页面
ConnectDB();
}
//失掉文件名
privatestringGetFile()
{
HttpPostedFilefile=File1.PostedFile;
fileName=file.FileName;
returnfileName;
}
//读取文件内容
privatebyte[]ReadFile()
{
FileStreamfile=File.OpenRead(GetFile());
byte[]content=newbyte[file.Length];
file.Read(content,0,content.Length);
file.Close();
returncontent;
}
//毗连数据库
privatevoidConnectDB()
{
stringconnStr="InitialCatalog=;DataSource=;UserID=;Password=;";
conn=newSqlConnection(connStr);
conn.Open();
}
//写进图片到数据库中
privatevoidWriteImage()
{
SqlCommandcomm=conn.CreateCommand();
comm.CommandText="insertintoimages(image,type)values(@image,@type)";
comm.CommandType=CommandType.Text;
SqlParameterparam=comm.Parameters.Add("@image",SqlDbType.Image);
param.Value=ReadFile();
param=comm.Parameters.Add("@type",SqlDbType.NVarChar);
param.Value=GetContentType(newFileInfo(fileName).Extension.Remove(0,1));
if(comm.ExecuteNonQuery()==1)
Response.Write("Successful");
else
Response.Write("Fail");
conn.Close();
}
//猎取图片的后缀名
privatestringGetContentType(stringextension)
{
stringtype="";
if(extension.Equals("jpg")||extension.Equals("JPG"))
type="jpeg";
else
type=extension;
return"image/"+type;
}
//从数据库中读取图片
privatevoidReadImage()
{
SqlCommandcomm=conn.CreateCommand();
comm.CommandText="selectimage,typefromimages";
comm.CommandType=CommandType.Text;
SqlDataReaderreader=comm.ExecuteReader();
while(reader.Read())
{
Response.ContentType=reader["type"].ToString();//读写范例必定要设置不然扫瞄器会看成文本输入
</p>强大的可扩展性。ASP具有强大的扩展性,可以实现与多种网络、硬件设备的连接:通过专用的通讯线路远程接入企业;通过远程拨号服务器为远程拨号客户提供服务;通过WAP为移动电话互联网客户服务。 |
|