0

我已将 jpeg 保存到具有 4 个前导零或 5 个前导零的文件系统,例如:0000085.jpeg 或 0000112.jpeg。

但是 jpeg 只保存在最后一个数字的数据库中,例如 85 或 112,所以当我显示 jpeg 时,我必须选择 0000 或 00000,所以有些不会显示。我在用:

<asp:Image ID="responseImage" runat="server" Width="35px" ImageUrl='<%# IIf(Eval("AvatarPictureID") = "0", "http://ref-ology.com/Content/images/Thumbs/default-avatar_85.jpg", "http://ref-ology.com/Content/Images/Thumbs/0000" + Eval("AvatarPictureID") + "_150.jpeg")%>' />

使用该图像标签,只会显示 112.jpeg,因为它有 4 个零。

4

3 回答 3

2

检查您的数据库列是否属于类似字符串的数据类型(varcharnvarchar等),而不是类似数字的数据类型(intbigint等)。您需要将名称存储为字符串以保留前导零。

于 2013-07-18T17:26:29.373 回答
1

其他答案都是正确的。您应该完整存储文件名。但是,这将解决您的问题。

http://ref-ology.com/Content/Images/Thumbs/" + Eval("AvatarPictureID").ToString("0000000") + "_150.jpeg")%>

参考:http: //msdn.microsoft.com/en-us/library/0c899ak8.aspx#Y3200

于 2013-07-18T17:29:52.997 回答
1

当你达到一千人时会发生什么?我建议你使用 pad 功能

Eval("AvatarPictureID").PadLeft(7, "0")
于 2013-07-18T18:33:36.910 回答