0

最近、GridView のページング メカニズムに微妙な制限があることに気付きました。効率的なページング、要求されたページのデータの読み込みは、ObjectDataSource などの DataSource コントロールを使用する場合にのみ可能です。これは、宣言的なデータ バインディングを意味し、データ ソースを使用せずにコード ビハインドからだけでは不可能です (MSDN では、ここで説明しています)。

これは、ASP.NET がコード ビハインドではなく、宣言型プログラミングに基づいているということですか? そして、デフォルトで宣言型プログラミングを行う方が良いですか?

4

3 に答える 3

1

ASP.Net は両方を使用します。マークアップは宣言的であり、コード ビハインドは必須です。

たとえば、ユーザー コントロールの構築など、より宣言的なコードにつながるスタイルを優先する必要があります。しかし、これらのコントロールには、どのように動作するかを指示する命令型コードが必要です。

于 2010-09-24T21:08:50.203 に答える
1

すぐに使用できる WebForms は、宣言的なパスを案内しようとします。それを回避して実際にコードを書くことはできますが、WebForms はそれを非常に困難にします。

本当に制御したい場合は、ASP.NET MVC フレームワークを調べる必要があります。

于 2010-09-24T21:04:07.077 に答える
0

SQL ROWNUMBER 関数を使用して独自のページングを行うことになりました。

select * from
( select row_number() over (order by pk asc) as rownumber, * from ...)
where row_number between @a and @b

私はまったく宣言的ではなくなりました - データソースにパラメーターを供給する代わりに (これは実行可能です)、分離コードですべてを管理し、データソースを手動で設定し、ページャーを手動で構築しました。

私がそのようにした理由は?3.5 の querystringfield パラメータ処理のバグ

おそらく、row_number を使用してオブジェクト データ ソースを処理することもできたでしょうが、気にしないのであれば、宣言的に何もする必要はありません

于 2010-09-24T21:00:38.470 に答える