各位达人,本人初学网页制作,帮我解决下ASP.NET图片的数据库的存储、页面的显示。准备给单位做个网站,但是对于图片、文件的存储、下载这块学的比较模糊,以至于网站就剩下这块没有处理完。
主要问题有:
    1、如何将图片存储在数据库中(SQL 2005),而这些图片都是属于新闻表内容部分。
    2、可以从新闻表中取出热点新闻的图片,并将其进行横向滚动显示,当点击某个图片的时候,进入图片所在新闻表进行新闻的浏览,最好还能说下图片轮值显示,实现的功能也是点击后进入下新闻页面。
    3、后台文件的上传与前台的下载又是怎么实现的?
希望达人们能给出个完整的答案,不要网上复制粘贴,要有自己的语言,代码注释清楚,小弟感激不尽!再次谢过!

解决方案 »

  1.   

    fileupload上传图片。路径保存到数据库
    文本编辑器上传图片,获取图片路径保存
    新闻图片切换,JS很多<a href
    上传下载
    FileInfo Fi = new FileInfo(filePath);
    if (Fi.Exists)
    {
      FileStream fs = new FileStream(filePath, FileMode.Open);
      byte[] bytes = new byte[(int)fs.Length];
      fs.Read(bytes, 0, bytes.Length);
      fs.Close();
      Response.ContentType = "application/octet-stream";
      Response.AddHeader("Content-Disposition", "attachment; filename=1.excel");
      Response.BinaryWrite(bytes);
      Response.Flush();
      Response.End();
    }
    string path = Server.MapPath("~/") + "";
    Response.AppendHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(obj.Name, System.Text.Encoding.GetEncoding("utf-8")));
    Response.ContentType = "application/octet-stream";
    Response.WriteFile("" + path + "");
    Response.End();
    if (fileUpload.HasFile)  
      {  
      string savePath = Server.MapPath("~/upload/");  
      if(!System.IO.Directory.Exists(savePath))  
      {  
      System.IO.Directory.CreateDirectory(savePath);  
      }  
      savePath = savePath + "\\" + fileUpload.FileName;  
      fileUpload.SaveAs(savePath);  
      }  
      

  2.   

    LZ  新闻切换图片  去GOOGLE搜  JS切换图片吧  很多的也有很多是从数据库读出来的   
      

  3.   

    1.直接存储图片地址就行了。  
    2.---前台代码
     <div id="demo" style="overflow: hidden; width: 407px; margin-top: 5px; height: 64px;">
                                                <div style="width: 716px; height: 62px;" id="demo1">
                                                    <asp:Repeater ID="Repeater2" runat="server">
                                                        <ItemTemplate>
                                                            <div style="margin: 0; padding: 0; float: left; width: 70px" id='<%#Eval("id") %>'>
                                                                <a href='Implementation_Plan.aspx?proId=<%#Eval("id") %>'>
                                                                    <img alt="" src='/UploadFile/Picture/<%#Eval("images") %>' width="65px" height="75px" /></div>
                                                            </a></ItemTemplate>
                                                    </asp:Repeater>
                                                </div>
                                            </div>
      ---滚动js
       <script type="text/javascript">
                                var speed=33;
                                demo1.innerHTML=demo1.innerHTML+demo1.innerHTML;
                                //向左
                                function Marquee()
                                {
                                    if(demo1.offsetWidth/2-demo.scrollLeft<=63){//这里的33是随实际情况而定的,为了让调整位置时更柔和
                                        demo.scrollLeft-=demo1.offsetWidth/2;
                                    }else
                                    {
                                        demo.scrollLeft++;
                                    }
                                }
                                var MyMar;
                                function doMoveToLeft()
                                {
                                    MyMar=setInterval(Marquee,speed*2);
                                }
    </script >3.上传可以用FileUpload或者IO都可以,下载可以直接访问要下载的文件地址,或者IO。