我在ASP中遇到了C#的问题。
我在以下代码行中出现错误,该代码行以“string []”....
开头Label DT33 = (Label)MainContent2.FindControl("data_text");
string[] lines = Strings.Split(DT33.Text, "<br>");
num = lines.Length;The error reads....
编译错误 描述:编译服务此请求所需的资源时发生错误。请查看以下特定错误详细信息并相应地修改源代码。
编译器错误消息:CS0122:由于其保护级别,'System.Linq.Strings'无法访问
我已指定以下名称空间....
using Microsoft.VisualBasic;
与许多其他人一起。这是一个.net 3.5应用程序,此时我已经没有想法了。
感谢,
答案 0 :(得分:4)
我认为你实际上是这个意思:
Label DT33 = (Label)MainContent2.FindControl("data_text");
string[] lines = DT33.Text.Split(new string[] {"<br>"}, StringSplitOptions.None);
num = lines.Length;
您收到(有点神秘)错误消息的原因是因为System.Linq
显然有一个名为internal
的{{1}}类。
答案 1 :(得分:3)
您的问题如下:
string[] lines = Strings.Split(DT33.Text, "<br>");
您已在String
添加了额外的's'。我猜你还包括System.Linq
,它显然有一个名为Strings
的私人/内部类(你无法访问)。因此,由于保护级别而导致Strings
无法访问的错误消息。
您只需将违规行更改为:
string[] lines = DT33.Text.Split(new string[] { "<br>" },
StringSplitOptions.None);
你应该好好去。
答案 2 :(得分:1)
您正在尝试使用Microsoft.VisualBasic.Strings.Split
,但您的使用与另一个可用的Strings
类冲突。
尝试完全限定您的方法调用。
string[] lines = Microsoft.VisualBasic.Strings.Split(text, separator);
但是,您还应该考虑直接使用string.Split
可用的System.String
实例方法。评估它的行为,看看你是否可以使用它,因为在C#中使用基本的BCL方法比使用或多或少特定于Visual Basic的方法更具惯用性。
http://msdn.microsoft.com/en-us/library/y7h14879.aspx
所以你可能有像
这样的东西string[] lines = yourText.Split(new string[] { "<br>" }, StringSplitOptions.RemoveEmptyEntries);
答案 3 :(得分:0)
我想你想要
string.Split(.....)
而不是字符串
答案 4 :(得分:0)