2011-12-13 6 views
0

SqlDataSourceを使用して、データベースからgridviewにデータを取得しました。SqlDataSourceコーディングを隠すには?

セキュリティ上の理由から、私はこのコードを隠すことができます。それは明らかにテーブル名とそのエンティティをすべて示しています。私はこの機能を直接の自動編集と削除機能を備えたグリッドビューでのデータの管理がより簡単にしたいと考えていますが、プレゼンテーション層ではコーディングでデータベースの内容を明らかにしないと仮定しています。とにかくありますか?

+1

誰も非表示にしますか?これらのコントロールは、サーバーが誤って構成されていて実際にASP.NETコードを処理していない限り、クライアントにはレンダリングされません。 – David

+0

"プレゼンテーション層はコーディングでデータベースの内容を明らかにしないと仮定します" - このモノリシックなアーキテクチャではプレゼンテーション層はありません。別のレイヤーを配置する場合は、データベース固有のものをプレゼンテーションレイヤーから外しておく必要があります。 – Joe

+0

たとえば、間違いが起こり、コードはデータベースから特定のエンティティを見つけることができません。後で、このテーブルからのこのエンティティが見つからない、クライアント側に現れていることを明示的に示すaspxのエラーメッセージが出ます。 – Memoc

答えて

1

あなたのコード例がHTMLに存在し、一般に閲覧可能な印象を受けていますか? そうではありません。SQLDataSourceがコンパイルされ、ページがクライアントに提供される前にさまざまなHTML要素に挿入されるデータが生成されます。

http://msdn.microsoft.com/en-us/library/ms178472.aspx#lifecycle_events

0

.csファイルでこれらのプロパティを設定することができます。しかし、それはあなたのために十分な深さではないかもしれません。つまり、まだプレゼンテーション層ですか?

関連する問題