0

ユーザーがテーブルを選択し、そのテーブルでの CRUD 操作を許可したい ASP.NET 3.5 アプリケーションがあります。ユーザーは編集するテーブルの数に制限されますが、テーブルやデータベースでさえ展開後までわかりません。web.config は接続とテーブルをセットアップします。

そのため、SQL データベース内の汎用テーブルを更新できるようにするフレームワークを構築する必要があります。私が見た ORM のほとんどは、コンパイル時にスキーマを認識する必要があるため、これらを使用することはできません。最良の答えは、SQL クエリ文字列を動的に構築し、reg 式を使用して有効な入力を確保し、SQL インジェクションから保護することです。より良い方法はありますか?

4

2 に答える 2

0

はい。データセットとデータテーブル オブジェクトはどうですか? 動的な sql ステートメントを介してこれらを入力し、適切なエディター グリッド コントロールに直接バインドできます。スキーマと列のデータ型のチェックは簡単です。ORM や Linq が登場する前に、私たちは何をしていたのでしょうか?!?!

于 2009-05-29T00:49:08.597 に答える
0

Dynamic Linq ライブラリは素晴らしいです。おそらくテーブル名を除いて、すべてを文字列として指定できます。

代替テキスト
(ソース: scottgu.com )
http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx

ただし、DataContext を動的にマッピングして実行時にテーブルを選択する方法については、こちらを参照してください。

http://blogs.microsoft.co.il/blogs/bursteg/archive/2007/09/27/25294.aspx

于 2009-05-29T01:10:55.777 に答える