3

私は WPF を試し、Web ブラウザーで厳密な XAML マークアップをレンダリングしてきました。これは Loose XAML とも呼ばれます (ここここで説明されています)。

静的コンテンツを表示するのに最も役立つと思います。ただし、XML データ プロバイダーにバインドすることも可能です。

Loose XAML ファイルはアプリケーションでコンパイルされないため、次の制限が生じます。

  • 外部アセンブリは許可されていません
  • クラス、コード ビハインド (または任意の C#) を使用しない
  • 双方向のデータバインディングなし

他にどのような制限がありますか?

  • データベース プロバイダー (SQL Server) にデータバインドする方法が見つかりません
  • ブラウザーで XAML をレンダリングするには、クライアント コンピューターに .NET Framework が必要ですか?
  • 検索エンジンは、ページを適切にランク付けするために Loose XAML に問い合わせることができますか?

編集: XML データ プロバイダーを (この単純な例を使用して) Web サービスにバインドしようとしましたが、成功しませんでした。これらの調査結果は、これがサポートされていないことを発見したさらなる調査に私を導きます。他のソース (データベース レコード、Web サービス メッセージなど) から来る可能性のある XML データを処理します。」-Matthew MacDonald、プロ WPF

4

3 に答える 3

3

IEで緩いXAMLページを表示するには、少なくともフレームワーク3.0が必要です。ユーザーエージェント文字列で「.NETCLR3.0」を検索することで、サイトで確認することもできます。

データベース接続は、可能であれば、接続を開くための手続き型コードが必要なため、緩いXAMLで直接実行されることはありません。

于 2008-10-01T21:11:50.897 に答える
1

私は、動的言語ランタイム (DLR) をホストし、スクリプトを XAML に埋め込むことができるようにするために多くの作業を行いました。イベントを処理したり、値コンバーターを作成したり、Python/Ruby/JScript を実行して SQL サーバーに接続したりできるので、Loose XAML は二流市民ではないと感じています。

この方向性があなたに合っているかどうかを確認するには、私のブログを参照してください。

添付プロパティを使用してアセンブリを動的に読み込みます。一度読み込まれると、通常の方法でアセンブリ内のクラスを参照できます。

したがって、質問にも答えてください。Loose XAML にはすぐに使用できる多くの制限 (イベントをイベント ハンドラーにルーティングできないなど) がありますが、これらは少し作業することで克服できます。

デスクトップ アプリには XAML/WPF のみを使用しました。ブラウザ固有の質問に他の誰かが答えてくれることを願っています。

私は、DLR ホスティングおよび DLR スクリプトを XAML に埋め込むための商用作業で使用するライブラリを持っています。これは、サポートされている製品にするつもりでした。これがあなたにとって興味深いものである場合は、必ず私に知らせてください.

于 2008-12-17T23:18:58.100 に答える
1

私の知る限り、XAML で接続文字列を定義することは不可能です。そのため、SQL db にアクセスできません。

注: XmlDataProvider を使用して Web サービスにデータバインドすることは可能です。つまり、データを送信できる方法になる可能性があります...

編集: ところで、XBAP と Loose XAML を使用しているときにアプリが実行されているサンドボックス環境の機能のこのリストを見つけました。少し時代遅れですが、おそらくほとんどの制限がまだ適用されています。

于 2008-10-02T09:29:57.003 に答える