如何从MvcContrib中的代码访问嵌入式资源?

时间:2012-11-06 09:04:46

标签: c# asp.net embedded-resource mvccontrib

我有一个图书馆项目,我将其用作使用MvcContrib的便携式区域项目。

Library项目中,我正在从后面的代码中访问本地图像。

string imagePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, string.Format("Controls\\images\\expander_opened_hover.png"));
using (Bitmap bmp = (Bitmap)Bitmap.FromFile(imagePath))
{
   // do somthing with this image
}

代码在Library项目上运行,但是当我从“主机”项目访问相同的函数时,我收到一个错误,指出找不到该文件。该文件在Embedded Resource项目中设置为Library,但在主机项目中不存在。

如何设置路径以便找到嵌入式图标?

1 个答案:

答案 0 :(得分:1)

可能是这样的:

var assembly = Assembly.GetExecutingAssembly();
var imageStream = _assembly.GetManifestResourceStream(
        "[AssemblyNamespace].Controls.images.expander_opened_hover.png");
var bitmap = new Bitmap(imageStream)

看看这里:http://support.microsoft.com/kb/319292