2012-04-18 4 views
2

내 데이터베이스에서 리피터로 이름, 설명 및 그림을 표시하려고합니다. 이름과 설명이 제대로 작동하지만 이미지가 표시되지 않습니다. 이미지는 프로젝트의 폴더에 있으며 데이터베이스 "경로"열에 저장 한 문자열로 이미지에 액세스하려고합니다.이미지가 표시되지 않습니다. asp : repeater

오,하지만 브라우저의 소스 코드에서 SRC = ""좋아 보인다를보고 난 그것에 SRC를 붙여 넣으면 내가 심지어 브라우저에서 그림을 볼 수 있다면 ..

을 Heres 내 코드 :

<head runat="server"> 
<title></title> 

<style type="text/css"> 
    .bilder {width:300; 
      height:200; 
      margin: 10px; 
      border: 1px solid black; 
      } 
</style> 

</head> 
<body> 
<form id="form1" runat="server"> 

<div> 
    <asp:Repeater runat="server" ID="minRepeater"> 

     <ItemTemplate> 
      <div class="wrapper"> 
       <h1><%# DataBinder.Eval(Container.DataItem, "Name") %></h1> 
       <span id="desc"><%# DataBinder.Eval(Container.DataItem, "Description") %></span><br /> 
       <img src="<%# DataBinder.Eval(Container.DataItem, "Path") %>" alt="test" class="bilder" /> 
       <asp:Image ID="Image1" CssClass="bilder" ImageUrl='<%# DataBinder.Eval(Container.DataItem, "Path")%>' runat="server" /> 
      </div> 
     </ItemTemplate> 
    </asp:Repeater> 
</div> 

및 코드 숨김 :

protected void Page_Load(object sender, EventArgs e) 
    { 
     SqlConnection con = new SqlConnection(); 
     con.ConnectionString = connectionstring; 

     SqlCommand com = new SqlCommand(); 
     com.CommandText = "SELECT * FROM Pictures"; 
     com.Connection = con; 

     SqlDataAdapter ad = new SqlDataAdapter(); 
     ad.SelectCommand = com; 

     DataTable dt = new DataTable(); 
     ad.Fill(dt); 

     Response.Write(dt.Rows.Count); 

     minRepeater.DataSource = dt; 
     minRepeater.DataBind(); 
    } 

(.. 그래 난 내 코드는 안전하지 않습니다 것을 알고 모두)

브라우저의 모양은 다음과 같습니다. enter image description here

아이디어가 있습니까? :)

답변

2

Firebug 또는 Chrome에서 실행할 수 있으며 이미지를 찾을 수 없는지 (404) 및 해당 경로가 있는지 확인할 수 있습니다.

+0

아픈 바로 확인하십시오! – tobbe

+0

그냥 알려주세요 :) –

+0

좋은 팁, 고마워요! 그것은 "로컬 리소스를로드 할 수 없습니다"라고 말합니다. 흠, 어떤 생각을 해결하는 방법? – tobbe

2

경로가 C:\\Images\etc. ..입니까? "Not allowed to load local resource", 을 얻는다면 상대 경로로 경로를 시도해야합니다. 웹 사이트에 포함시키지 않으면 이미지 사본을 만들어 경로를 렌더링해야합니다. 보안 문제에 직면하고 있습니다.

2

로컬 시스템의 경로를 사용하여로드하려는 것처럼 Not allowed to load local resource 오류가 발생합니다. 파일에 대한 상대 경로로 Server.MapPath을 사용하려고 시도합니다 (예 :

).
Server.MapPath("~/images/my-image.jpg"); 
관련 문제