2011-01-21 14 views
0

私は今、問題をのasp.net GridViewの

(名前、パスワード、説明、日付などのような属性を持つ)異なるプロファイルを表示asp.net GridViewコントロールにリストを結合していますし、リストのバインド誰でもページにアクセスできれば誰でもプロファイルを見ることができますが、誰もプロファイルの「パスワード」を誰にも見せたくない場合 コードが必要な場合があります:

アレイk1 = yourlist1.ToArray();列のインデックスを0に置き換える...

GridView2.Columns[0].Visible = false; 

business.clsprofiles obj = new business.clsprofiles(); 
    List<business.clsprofilesprp> objprp = new List<business.clsprofilesprp>(); 
    for (Int32 i = 0; i < k1.Length; i++) 
    { 
     Int32 z = Convert.ToInt32(k1.GetValue(i)); 
     objprp.AddRange(obj.fnd_profiles(z)); 
    } 
    GridView2.DataSource = objprp; 
    GridView2.DataBind(); 
    con.Close(); 
+0

パスワードはgridviewの列ですか? – sleath

+0

はい私はまたグリッドにバインドしています別の原因がありません私はクラスを持っており、それを削除する方法ビジネスオブジェクトを介して作業 –

答えて

0

あなたはおそらくGridViewの列を非表示にする必要があります。しかし、これは、問題を扱うのには非常に危険な方法ですが、基本クラスを変更するとパスワードの列が公開される可能性があります。より良い方法は、パスワードを平文でまったく保管しないでください。

  1. 不要な場合は、最初にパスワードをビジネスオブジェクトにプルしません。
  2. 基になるビジネスオブジェクトクラスを継承し、パスワード列へのアクセスを変更します。
  3. AutoGenerateColumnsを使用するのではなく、列を手動で指定する