「のように」私は、次のコードこの ワイルドカード文字が</p> <p>を発見した場合はオペレータ
foreach (KeyValuePair<string, string> kvp in letGrdSignList)
{
//Check if added function in definition is modified, if yes then don't add it in signature list
DataRow[] dLetRow = dtLet.Select("Definition" + "Like"" + "'" +
"%"+ kvp.Value + "%" + "'");
//kvp.value contains "local:try2values($arg1 as xs:decimal,$arg2 as xs:float*)"
//Above line results in error
if (dLetRow.Length > 0)
{
//Check if signature already exists
if (!strList.ContainsKey(kvp.Key))
strList.Add(kvp.Key, kvp.Value);
}
//else
// //Remove from list if signature is not present in any defination column
// letGrdSignList.Remove(sLetSignature);ss
}
I am getting following error
{System.Data.EvaluateException: Error in Like operator: the string pattern '%local:try2values($arg1 as xs:decimal,$arg2 as xs:float*)%' is invalid.
at System.Data.LikeNode.AnalyzePattern(String pat)
at System.Data.LikeNode.Eval(DataRow row, DataRowVersion version)
at System.Data.Select.AcceptRecord(Int32 record)
at System.Data.Select.GetLinearFilteredRows(Range range)
at System.Data.Select.SelectRows()
at System.Data.DataTable.Select(String filterExpression)
at WPFApp.QueryGenerator.GetSignatureList()
MSDNからコード
のスクリーンショットを使用しています使用したDataTableのSelectメソッドからのデータのフェッチ中にエラーを取得両*と%は、LIKE比較でワイルドカード文字と同じ意味で使用できます。 LIKE句の文字列に*または%が含まれている場合、それらの文字はかっこ([])で囲む必要があります。括弧が句に含まれる場合、各括弧文字は角括弧([[]] [[]]など)で囲む必要があります。ワイルドカードは、パターンの始まりと終わり、またはパターンの終わり、またはパターンの始まりに使用できます。たとえば:
"ItemNameのLIKE '製品'"
"ItemNameのLIKE '*製品'"
"ItemNameのLIKE '製品*"' は
ワイルドカード文字はでは許可されません文字列の真ん中。たとえば、 'te * xt'は許可されません。
ちょっとありがとう、私も同様のことをして、コードがうまく動いている、私はちょうどこのアプローチが正しいかどうかを確認したい – Abhi
申し訳ありません – Abhi