第一种是在后台赋值:~会被asp.net解析为当前应用的根目录。而第二种在前台页面被解析后就相当于在客户端~并不会被解析为当前应用的根目录。因此当你查看图片路径就变成了 http://localhost:7665/~/images/images_18.jpg。
"~/" 当你往数据库里存时,只被当做一个字符串来处理,是不识别这个解析的你存储的时候不用把~加上,可以这么存储“//images//images_18.jpg”这样是没有问题的。