次の方法で共有


SharepointListQueryConnection.Execute(XPathNavigator) メソッド

定義

返されるデータを挿入する別の場所を指定できるように、既定 Execute() のメソッドをオーバーライドします。

public:
 abstract void Execute(System::Xml::XPath::XPathNavigator ^ output);
public abstract void Execute (System.Xml.XPath.XPathNavigator output);
override this.Execute : System.Xml.XPath.XPathNavigator -> unit
Public MustOverride Sub Execute (output As XPathNavigator)

パラメーター

output
XPathNavigator

XPathNavigator返されたデータを挿入するフォームのプライマリ データ ソースまたはセカンダリ データ ソース内の XML ノードを指定する 。 パラメーターとしてoutput渡される XPathNavigator は、ローカル コンピューター上の任意の XML ファイルまたはSystem.Xml にデータを挿入するように指定することもできます。メモリに保持されている XmlDocument

例外

クエリ操作が失敗したか、あるいはデータを返しませんでした (クエリ操作が行われたリストは空です)。

このメソッドに渡されるパラメーターは null 参照です (Visual Basic では Nothing)。

このメソッドに渡されるパラメーターは無効です。 たとえば、型または形式が正しくありません。

次の例では、 クラスの Execute(output) メソッドを SharepointListQueryConnection 使用して、"Contacts" 接続に対するクエリを実行し、メモリ内に作成された XmlDocument に出力を格納します。 次に、XmlDocument に保存されている出力をフォームの QueryOutput フィールドに表示します。

public void ExecuteOutput_Clicked(object sender, ClickedEventArgs e)
{
   // Create the XmlDocument to accept the query results.
   XmlDocument outputFile = new XmlDocument();
   outputFile.LoadXml(
      "<?xml version=\"1.0\" encoding=\"utf-8\" ?><outputRoot></outputRoot>");

   // Create XmlNamespaceManager for XmlDocument object. When
   // creating a more complex document, use AddNamespace method
   // to add a mapping from namespace prefix to namespace URL for 
   // each namespace to this object.
   XmlNamespaceManager outputFileNamespaceManager = 
      new XmlNamespaceManager(outputFile.NameTable);

   // Create an XPathNavigator positioned at the root of the
   // XmlDocument output file created above.
   XPathNavigator outputFileNavigator = outputFile.CreateNavigator();
   XPathNavigator outputRootNavigator = 
      outputFileNavigator.SelectSingleNode("/outputRoot", 
      outputFileNamespaceManager);

   // Query the SharePoint list defined for the 
   // SharepointListQueryConnection and log the results
   // in the XmlDocument created above.
    SharepointListQueryConnection queryConnection = 
      (SharepointListQueryConnection)(DataConnections["Contacts"]);
    queryConnection.Execute(outputRootNavigator);

   // Insert the results of the query from the XmlDocument in the 
   // QueryOutput field of the main data source of the form.
   XPathNavigator mainNavigator = MainDataSource.CreateNavigator();
   XPathNavigator queryOutputNavigator = 
      mainNavigator.SelectSingleNode("/my:myFields/my:QueryOutput",
      NamespaceManager);
    queryOutputNavigator.SetValue(outputRootNavigator.InnerXml);
}
Public Sub ExecuteOutput_Clicked(ByVal sender As Object , _
   ByVal e As ClickedEventArgs)
{
   ' Create the XmlDocument to accept the query results.
   Dim outputFile As XmlDocument = new XmlDocument()
   outputFile.LoadXml(
      "<?xml version=\"1.0\" encoding=\"utf-8\" ?><outputRoot></outputRoot>")

   ' Create XmlNamespaceManager for XmlDocument object. When
   ' creating a more complex document, use AddNamespace method
   ' to add a mapping from namespace prefix to namespace URL for 
   ' each namespace to this object.
   Dim outputFileNamespaceManager As XmlNamespaceManager  = _
      new XmlNamespaceManager(outputFile.NameTable)

   ' Create an XPathNavigator positioned at the root of the
   ' XmlDocument output file created above.
   Dim outputFileNavigator As XPathNavigator = _
      outputFile.CreateNavigator()
   Dim outputRootNavigator As XPathNavigator = 
      outputFileNavigator.SelectSingleNode("/outputRoot", 
      outputFileNamespaceManager)

   ' Query the SharePoint list defined for the 
   ' SharepointListQueryConnection and log the results
   '  in the XmlDocument created above.
    Dim myQueryConnection As SharepointListQueryConnection  = _
      DirectCast(DataConnections["Contacts"], _
      SharepointListQueryConnection)
    myQueryConnection.Execute(outputRootNavigator);

   ' Insert the results of the query from the XmlDocument 
   ' in the QueryOutput field of the main data source of the form.
   Dim mainNavigator As XPathNavigator  = _
      MainDataSource.CreateNavigator()
   Dim queryOutputNavigator As XPathNavigator  = 
      mainNavigator.SelectSingleNode("/my:myFields/my:QueryOutput", _
      NamespaceManager)
    queryOutputNavigator.SetValue(outputRootNavigator.InnerXml)
End Sub

注釈

パラメーターを output null 参照 (Visual Basic では Nothing) に設定すると、既定の Execute メソッドを使用して、フォーム テンプレートで定義されている宣言型設定を使用してデータを返すのと同じ効果があります。

このメンバは、現在開いているフォームと同じドメインで実行中のフォーム、またはクロスドメインのアクセス許可が与えられたフォームだけがアクセスできます。

この型またはメンバーには、Microsoft InfoPath Filler または Web ブラウザーで開いたフォームで実行されるコードからアクセスできます。

適用対象