Попробуйте вместо этого использовать "Embedded Resource"
Итак, допустим, у вас есть jpg "Foo.jpg" в ClassLibrary1.Установите для параметра «Build Action» значение «Embedded Resource».
Затем используйте этот код, чтобы получить байты
byte[] GetBytes()
{
var assembly = GetType().Assembly;
using (var stream = assembly.GetManifestResourceStream("ClassLibrary1.Foo.jpg"))
{
var buffer = new byte[stream.Length];
stream.Read(buffer, 0, (int) stream.Length);
return buffer;
}
}
Или, в качестве альтернативы, если вам нужен более повторно используемый метод
byte[] GetBytes(string resourceName)
{
var assembly = GetType().Assembly;
var fullResourceName = string.Concat(assembly.GetName().Name, ".", resourceName);
using (var stream = assembly.GetManifestResourceStream(fullResourceName))
{
var buffer = new byte[stream.Length];
stream.Read(buffer, 0, (int) stream.Length);
return buffer;
}
}
и звоните
var bytes = GetBytes("Foo.jpg");