2

ここ数日間、AJAX での Webmatrix の使用を実験および調査してきましたが、残念ながら、プロジェクトを機能させるのに役立つ十分な情報が見つからないようです。進歩するために、原則としてすべてがどのように機能するかについてもっと学びたいと思っています。うまくいけば、これはこれについて学んでいる他の人にも役立つでしょう. 少しでもアドバイスや役立つリンクをいただければ幸いです。

(この投稿の長さを許してください。)

私のプロジェクトの背景:

データベースからのデータといくつかの半複雑なアルゴリズムを使用して、いくつかList<int>の とを組み立てるために cs クラスを使用しています。List<double>これらのリストには多数のビデオに関する情報が含まれています。私はこれらのリストを使用して、生成されたビデオのリストを html5 ビデオとキャンバスで最終的に再生する小さなビデオ アプリケーションを作成しています。このプロジェクトをいくつかの異なるプログラミング環境とフレームワークでテストしてきました (javaScript のみを使用する、openFrameworks と C++ を使用する、データベースと ajax、javaScript で php を使用するなど)。以前は ajax の使用に問題はありませんでしたが、Webmatrix で概念を実現しようとして行き詰まっています。

C# データ型、JSON、JavaScript の関係は?

私がphpで使用したソリューションは次のようなものでした:

$sequenceData = array("array1" => $dataArray1, 
    "array2" => $dataArray2, 
    "array3" => $dataArray3,
    "array4" => $dataArray4);

echo json_encode($sequenceData);

次に、AJAX を使用してこれらの配列を JavaScript で使用しました。それが良い解決策かどうかはわかりませんが、私にとっては十分に簡単で、うまくいきました。

今、私は C# データ型を使用してこれを行うための良い解決策を見つけようとしています。(ここ数週間で C# を本当に学んだだけなので、ご容赦ください。) 私の現在の考えでは、私のデータは、たとえば、List<Dictionary<string, string>>データを文字列に変換するため、すべて同じであると考えられますが、これは少し不器用に思えますが、ここで、JSON がこれらのデータ型をどのように処理するのか、また javaScript がそれらを (どのように) 認識するのか疑問に思っています。別の方法として、データを 1 つのオブジェクトとして渡すことができるように、単純なクラス (構造体?) を使用する方がエレガントな場合もあります。この場合でもリストを使用するので、問題は残りますが、これでうまくいくのでしょうか? JavaScript は C# オブジェクトになりますか? リストは配列として扱われますか? 私は Google と Lynda.com を使用して c# や json などの詳細情報を取得しましたが、これらがどのように機能するかを完全に理解することはできませんでした。

Webmatrix での JSON エンコーディング

JSONヘルパーを理解し、AJAX経由でエンコードされたデータを取得するために、主に2つのソースを使用しています。

microsoft.comおよびmikesdotnetting.comから(特定の記事へのリンク)

残念ながら、まだ cshtml ファイルからデータを正常に渡すことができませんでした。JSON ヘルパーに関する詳細情報を取得しようとしましたが、オンラインで有用な情報があまり見つかりませんでした。jQuery $.ajax(以前のトライアルで php と一緒に使用) と$.getJSON(上記のリンクで使用されている) 関数を使用して、cshtml ファイルから JSON データを正常に取得できませんでした。javaScript から AJAX に続くコードは、以前に php を使用して渡すデータを作成したときと本質的に変わらないと考えたので、JSON データのエンコードが間違っているのではないかと思います。

mikesdotnetting.comに見られるように、主にこれら2つの概念を試しました

var json = Json.Encode(data);
Response.Write(json);

Json.Write(data, Response.Output);

私がphpで行ったのはecho json_encode($sequenceData);すべて、すべてが単独で機能するように見えたので、ここで間違っているのではないかと思います.phpとwebmatrix / razor / c#はここでどのように動作しますか.

この投稿が曖昧すぎないことを願っています。これにアプローチするために、さまざまなコードと方法をたくさん試しました。そのため、使用しているコードをこれ以上添付していません。単に「翻訳」するのではなく、Webmatrix や C# などで行うのに最も適した方法に、プロセス全体とコンセプトをさらに適応させる必要があると考えています。これらのトピック (JSON ヘルパー、AJAX との通信、プロセス内のデータ型など) についてもっと理解したいと思っています。

(この記事の最後までお付き合いいただきありがとうございます)

4

1 に答える 1