コードを修正するにはどうすればよいですか?インライン/静的に解決された型は、構造型と同じ強力ですか?タイプ 'XmlProvider <...>。パラメータ'は演算子 'get_Value'をサポートしていませんか?
タイプ 'XmlProvider <>。'パラメータ '演算子' get_Value 'をサポートしていません?
let input1 = """<r1><parameters><parameter name="token">1</parameter><parameter name="other">xxx</parameter></parameters><othersOf1>..sample....</othersOf1></r1>"""
let xml1 = XmlProvider<"""<r1><parameters><parameter name="token">1</parameter><parameter name="other">xxx</parameter></parameters><othersOf1>...</othersOf1></r1>""">.Parse(input1)
let inline get name parameters =
parameters |> Seq.tryFind (fun x -> (^P : (member Name : 'a) x) = name)
|> Option.map (fun v -> (^P : (member Value : 'b) v))
get "token" xml1.Parameters
ありがとうございます。これはトークンが「1」の場合に機能します。しかし、 '1'から 'a1'に変更した後でテストすると失敗します。実際の入力は、数値に変換できないテキストにすることができます。 – ca9163d9
はい、すべての値がちょうど 'string'なので、あなたは' Value'をもう一度持っています。 適切なタイプを生成するには、入力の代表*サンプルが必要です。 – CaringDev
@ dc7a9163d9最後に追加されたオプションを参照 – CaringDev