在C#控制台应用程序上工作,我有一行:
rowsFound = tempUsers.Select("EmailAddress = '" + userData[2].ToString() + "'");
Run Code Online (Sandbox Code Playgroud)
rowsFound是一个DataRow[],tempUsers是一个DataTable,userData是一个SqlDataReader.我有错误的索引userData(它是1)我得到了这个错误:
System.Data.SyntaxErrorException was unhandled
Message=Syntax error: Missing operand after 'Bannon' operator.
Source=System.Data
StackTrace:
at System.Data.ExpressionParser.Parse()
at System.Data.DataExpression..ctor(DataTable table, String expression, Type type)
at System.Data.Select..ctor(DataTable table, String filterExpression, String sort, DataViewRowState recordStates)
at System.Data.DataTable.Select(String filterExpression)
Run Code Online (Sandbox Code Playgroud)
当我插入正确的索引(2)时,错误就消失了.
关于什么是"Bannon算子"的任何想法?
我最近注意到System.Uri该类中的字段在PCL中不可用.
具体来说,这些领域:
Uri.SchemeDelimiter
Uri.UriSchemeFile
Uri.UriSchemeFtp
Uri.UriSchemeGopher
Uri.UriSchemeHttp
Uri.UriSchemeHttps
Uri.UriSchemeMailto
Uri.UriSchemeNetPipe
Uri.UriSchemeNetTcp
Uri.UriSchemeNews
Uri.UriSchemeNntp
Run Code Online (Sandbox Code Playgroud)
以及其他人.
是否有技术/实用的原因导致PCL不支持这些原因?我在参考源中看到这些字段(除外Uri.SchemeDelimiter)来自内部静态字段System.UriParser.然后我注意到它UriParser不兼容PCL.
这是什么原因?