我一直在互联网上用string.format搜索我的代码,但似乎找不到我的代码上看起来像的那个。
DataColumn dtCol;
dtCol = new DataColumn("ImagePath", System.Type.GetType("System.String"));
dtImages.Columns.Add(dtCol);
dtImages.Columns["ImagePath"].Expression = string.Format("<a href=\"'{0}'+ImageFilename\">View Image</a>", ImageDownloadPath);(运算符是我的数据库表中的一列)上面的代码总是抛出“语法错误:'<‘ImageFilename之前缺少操作数”的错误。
我该如何正确地做到这一点?
发布于 2010-08-20 16:04:19
谢谢你帮我的忙。我想出了做这件事的方法。感谢所有的帖子。

发布于 2010-08-12 14:20:04
也许可以试试下面的方法?
string.Format("<a href=\"{0}\\{1}\">View Image</a>", ImageDownloadPath, ImageFilename);在你的代码中,你在字符串格式标识符周围使用了',然后它就会显示在你的格式化字符串中,而ImageFilename属性没有被正确使用,它将被简单地添加为纯文本。
具有下列值的字符串的结果如下:
ImageFilename = "1.jpg";
ImageDownloadPath = "http://www.downloadme.com/images";
Yours: <a href="'http://www.downloadme.com/images'+ImageFilename">View Image</a>
Mine: <a href="http://www.downloadme.com/images/1.jpg">View Image</a>发布于 2010-08-12 14:24:35
这个问题一点也不清楚,但我相信这个问题根本不是一个编译时的问题……不是真正的string.Format。这是DataColumn.Expression的一个问题。您给出的表达式包含尖括号,因此它认为您正在尝试执行比较。
我不能说我对DataColumn.Expression了解很多,但你应该研究一下它是如何引用字符串的……以及它如何在字符串中引用引号!例如,这可能会起作用:
dtCol.Expression = string.Format
("'<a href=\"{0}'+ImageFilename+'\">View Image</a>'",
ImageDownloadPath);但是,我认为如果您一开始不尝试计算表达式中的HTML,可能会使您的工作变得简单得多。你真的可以在以后不再应用处理吗?
https://stackoverflow.com/questions/3465147
复制相似问题