2017-02-06 13 views
2

これは意見に基づく質問のように見えるかもしれませんが、私はこれを求めている理由は、Javascript/jQuery + Jsonを使用してC#を使用してテーブルを作成する

シナリオ: 私は、彼らはASP.NET MVCプロジェクトの多くを持っていると私は気づいた一つのことは、彼らがそうのようなc# foreach loopを使用して、テーブルの大行を構築しているということである。この会社では新しいインターン午前:

@foreach(var i in Model) 
{ 
    <tr> 
     <td>@i.Name</td> 
     <td>@i.Amount</td> 
     <td>@i.SomethingElse</td> 
    </tr> 
} 

私は私の共同インターンに「愚かな」ように見せて、サーバがJavaScriptを使って実行できる不要なワークロードを行うようにしました。そのため、ワークロードはクライアントコンピュータに渡されます。

私は、会社の開発者が私たちの後ろにいることに気付かず、私がそれを改善する理由のリストと、なぜ彼らの「方法」が愚かだと思うのかを説明するように言った。

私はプログラミングに何とかして新しいことがあり、実際には機能や内容が分からないのですが、そのような練習で何か問題があると思いますか?私は他の人の上に他の人を選ぶべきである理由は、誰も私に固い議論や説明を与えることができますか?

+1

この質問は、ここに意見の戦争を開始するつもりです!個人的に私の会社はWebサービスに移行し、Angularを使用してデータ表を表示しています。シンプルで、きれいで、保守しやすく、速いコードを残すだけです。たとえば、角度を使ってNorthwindのデータを表示する方法を示す私のWebページは次のとおりです。http://www.mikesknowledgebase.com/pages/Services/WebServices-Page8.7.htm –

+0

* "私は何とかプログラミングや操作に新しい"*、*"私は私の共同インターンに「ばかげた」と思われ、サーバーに不必要な作業負荷がかかるとコメントしました」* Didnあなた自身の質問に答えるだけですか?コンテンツが定期的にリフレッシュされない限り(Ajax、signalRなど)、クライアント側で何らかの世代が発生していない限り、サーバー上の「負荷」(これは非常に疑わしい)を残します。 –

+1

@MikeGledhillはい、私もそう思っていました。しかし、私はサイドを選択しなければならず、私はちょうど謝罪するのではなく、私が言ったことに立つことを選んだ。私は私のコメントで使用した "言葉"について謝罪しましたが、クライアント側の処理は優れていると私はまだ思っています。 –

答えて

2

「これは何も問題ありません」それが私があなたと確認できる最初のものです。

MVCの詳細を読むことをお勧めしますが、要約すると、サーバーのワークロードは増加しません。

MVCには、私が知っているように、データを表示する方法が2つあります。

  1. あなたの会社のような伝統的な方法です。すべてのデータをモデルにロードし、ビューを使用してモデルを表示します。これがMVCデザインパターンの仕組みです。
  2. Javaスクリプトを使用してこれらのデータを表示して、すべてのデータをインターチェンジ形式(json、xml、主にjson)に戻します。

私が間違って何もないと述べたので、そこに長所と短所こと、およびMethod_1のプロになるMethod_2の短所である:(私の意見では、他の長所と短所についての研究の後、よりを更新します)

長所:方法1で

  • 、カミソリの構文/ C#構文で制御することが容易になります。
  • MVCの正しい形式。
  • Method_2を使用している場合、あなたは、同じプロジェクトに類似したページ

短所がある場合はコピー&ペーストするには、WebブラウザでJavaScriptの多くを必要とする場合があります。

  • をあなたが必要な場合、それは複雑になりますビューに複数のモデルを読み込む
  • フロントエンドが複数ある場合は適用されません。
関連する問題