2014-03-07 22 views
2

我使用Asp.net用C#中的视觉工作室2012 我添加了图像I需要到该溶液通过我失去了什么使用嵌入的资源?

  • 创建文件夹
  • rightclicking和选择附加现有
  • 选择的图像文件
  • 右侧点击图像 - 属性 - 生成操作嵌入的资源

我走进项目属性组件info.cs并添加编辑引用我的资源。

[assembly: WebResource("FIMS_Courses.Images.FIMSNext.gif", "image/gif")] 
[assembly: WebResource("FIMS_Courses.Images.FIMSPrevious.gif", "image/gif")] 
[assembly: WebResource("FIMS_Courses.Images.FIMSCourselist.gif", "image/gif")] 
[assembly: WebResource("FIMS_Courses.Images.FIMStopofpage.gif", "image/gif")] 

现在我正在尝试访问它们。 在我的节目中我的ASP药水我通过键入IMAGEURL选择它们=然后intellesense让我选择的道路;这是我的代码:

<asp:ImageButton ID="PreviousListLink" ImageUrl="~/Images/FIMSCourselist.gif" CssClass="floatleft" runat="server"/> <asp:ImageButton ID="PreviousButtonTop" ImageUrl="~/Images/FIMSPrevious.gif" runat="server"/> &nbsp; <asp:ImageButton ID="NextButtonTop" ImageUrl="~/Images/FIMSNext.gif" runat="server" /> 

<h4><asp:Label ID="CourseNumber" Text="####" runat="server"/> &nbsp; <asp:Label ID="CourseTitle" Text="This is a course Title" runat="server" /></h4> 

<asp:Label id="Desc" text="Course Description" /> 
<a href="#TopOfPage"class="floatleft"><asp:Image ID="TopOfPageButton" ImageUrl="~/Images/FIMStopofpage.gif" runat="server" /></a> <asp:ImageButton ID="PreviousButtonBottom" ImageUrl="" runat="server" />&nbsp;<asp:ImageButton ID="NextButtonBottom" ImageUrl="" runat="server"/> 

当我给它一个测试运行我什么也没有出现。没有图像,所以永远。 No images Loaded

我失去了访问嵌入资源的一些关键步骤?

+0

你尝试取出'〜'看看是否可行?如果不是,Images文件夹在哪里?脱离你的网站的根? –

+0

否,则图像文件夹是预编译它进入的部位之前,它与C#/ asp.net代码相连。而'〜'是由视觉工作室添加的。我试图删除它,它什么也没做。 – 173901

+1

我不认为你可以像你在标记中一样引用它们。尝试使用代码隐藏去嵌入图像的参考。 http://stackoverflow.com/questions/18517173/cannot-access-embedded-resource-in-asp-net –

回答

1

您需要使用代码隐藏来引用嵌入的资源。

例子:

string topOfPageImageUrl = Page.ClientScript.GetWebResourceUrl(this.GetType(), 
         "FIMS_Courses.Images.FIMStopofpage.gif"); 
TopOfPageButton.ImageUrl = topOfPageImageUrl;