长话短说:我想将图像放在 DataTable 的列中。为此,我从各种其他来源收集了需要将图像转换为字节的信息,然后将字节分配给所需的 DataRow 列。
所以我已经得到了几乎我需要的东西,除了我找到的所有指南都是用于引用系统上的文件。我需要转换的图像在项目中。
这是我所拥有的,缩写:
DataColumn amountcol = new DataColumn();
amountcol.DataType = System.Type.GetType("System.Byte[]");
//...
newrow = dt.NewRow();
newrow[amountcol] = ReadImage("images/dashboard/myvacstatus-am.png", new string[] { ".png" });
private static byte[] ReadImage(string p_postedImageFileName, string[] p_fileType)
{
bool isValidFileType = false;
try
{
FileInfo file = new FileInfo(p_postedImageFileName);
foreach (string strExtensionType in p_fileType)
{
if (strExtensionType == file.Extension)
{
isValidFileType = true;
break;
}
}
if (isValidFileType)
{
FileStream fs = new FileStream(p_postedImageFileName, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
byte[] image = br.ReadBytes((int)fs.Length);
br.Close();
fs.Close();
return image;
}
return null;
}
catch (Exception ex)
{
throw ex;
}
}
问题:它在系统上查找文件,而不是在项目中。
我收到以下错误:
找不到路径“C:\Program Files (x86)\Common Files\Microsoft Shared\DevServer\10.0\images\dashboard\myvacstatus-ampm.png”的一部分。