我一直用的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);

(该映像文件名称是列在我的数据库表) 上面的代码始终引发的误差 “语法错误:缺少前操作数‘<’操作符”

我怎么做这个正常吗?

有帮助吗?

解决方案 4

谢谢你帮我。我能想出这样做的方式。感谢所有讯息。

“替代文字”

其他提示

也许尝试以下?

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>

这不是从问题的所有清楚,但我相信这个问题是不是的编译时间的一个在所有...的确没有一个与string.Format。这是一个与DataColumn.Expression问题。你给包括尖括号的表达,所以它认为你正在试图进行比较。

我不能说我很了解DataColumn.Expression,但你应该看看它是如何引用串...以及它是如何串内股票行情!例如,这威力工作:

dtCol.Expression = string.Format
    ("'<a href=\"{0}'+ImageFilename+'\">View Image</a>'", 
     ImageDownloadPath);

不过,我认为这是有可能使您的生活的很多的简单,如果你没有尝试计算HTML中开始表达。你真的不适用任何处理以后?

尝试这种情况:

dtImages.Columns["ImagePath"].Expression = 
string.Format("&lt;a href=\"'{0}'+ImageFilename\"&gt;View Image&lt;/a&gt;", ImageDownloadPath); 

Im相当肯定<和>正在努力被解释为表达式的一部分。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top