2012-05-25 35 views
4

我在网上找到一个代码示例,声称可以计算PDF文件中的页数。然而,我发现了错误“ToArray的是不是成员‘上以下行字符串’:'ToArray'不是'字符串'的成员

Dim pdfMagicNumber() As Char = "0000".ToArray 

我在一个框架2.0的项目在运行Visual Studio 2010,运行Windows 7和IIS的机器上7.我发现一篇讨论IIS配置的文章是这个错误的罪魁祸首,但我的设置似乎与他们推荐的一致。

对此错误的任何想法?

谢谢! Mike

+2

我相信,在.NET 2.0框架'.ToArray()'是不是string'的'成员。尝试'ToCharArray()'。如果我正确的话,'.ToArray()'方法就是一个'Enumerable'扩展,它恰好适用于在LINQ 3.5中引入的'IEnumerable '前提下处理字符串。 –

回答

7

ToArray是在.NET 3.5中引入的扩展方法,在IEnumerable<T>上。如果在string上调用,则它在.NET 3.5+中起作用,因为string实施了IEnumerable<char>

然而,string.ToCharArray()所有版本的.NET可用,甚至当你使用.NET 3.5及更高版本,它会比ToArray更有效。

换句话说,你想:

Dim pdfMagicNumber() As Char = "0000".ToCharArray 
+3

+1,但那些_'missing'_ parens是如此难以忽略。 – Marc

+0

太棒了!非常感谢Jon,提供了解决方案和详细的答案。现在很好用! – Mike

+0

ToArray还需要在“项目属性>引用>导入的名称空间”下导入的'System.Linq'名称空间。花了我一段时间来弄清楚。除非您更新了项目中的目标框架,否则不应该成为问题。 –

相关问题