2013-05-17 2 views
0

아파치 - 카산드라의 gridview에 rowkey 값을 표시 할 수 없습니다. 코드의 일부 ...Apache Cassandra gridView 문제

public class PacienteEntity 
{ 
    public int key { get; set; } 
    public string name { get; set; } 
} 

var records = (from x in context.ColumnList 
where x.ColumnFamily == "paciente" 
select x.ToObject<PacienteEntity>()); 

//remove null rows 
var filteredRecords = records.ToList().Where(i => i != null); 
dgView.DataSource = filteredRecords.ToList(); 
dgView.DataBind(); 

rowkey 값은 0도 사용 autoGenerateColumns이 어떤 도움을 환영합니다 같다!

답변

0

나는 기본적으로 CommandArgument를 통해 RowIndex 통과하고 버튼을 처럼 DataKey 값을 검색하는 데 사용

CommandArgument = '<퍼센트의 # DataBinder.Eval (컨테이너, "rowIndex에") %>' 서버 이벤트

INT rowIndex에 = int.Parse에

(e.CommandArgum ent.ToString());

문자열 val = (문자열) this.dgView.DataKeys [rowIndex] [ "myKey"];

0

당신은 당신이 DataKeyNames="Key,Name" 같이 이미 여러 개의 키가있는 경우 다음 이벤트에 당신이

void MyGridView_SelectedIndexChanged(Object sender, EventArgs e) 
    { 
    int index = MyGridView.SelectedIndex; 
    var key =MyGridView.DataKeys[index].Value.ToString(); 
    } 

아래로 키를 얻을 수 있습니다

<asp:gridview id="MyGridView" 
     datakeynames="Key" 
     onselectedindexchanged="MyGridView_SelectedIndexChanged" 
     runat="server"> 

아래처럼 GRIDVIEW의 데이터 키 이름을 설정해야

다음과 같은 색인을 제공하여 각 데이터 키에 액세스 할 수 있습니다.

당신의 데이터 소스 바인딩에 대한
string Key= MyGridView.DataKeys[index].Values[0].ToString(); 
string Name= MyGridView.DataKeys[index].Values[1].ToString(); 

확실하지, 아래 제발, 당신은

var records = context.ColumnList.Where(x=> x.ColumnFamily == "paciente") 
       .Select(p=> new PacienteEntity(){ Key = p.P_Key, Name =p.P_Name}).ToList(); 
+0

Damith, 나는 사실 미안이없는 표시 한 다음 코드를 입력하고 이름 설정하는 올바른 속성을 매핑하는 데 필요한 'name id'에 해당하는 rowkey 값 –

+0

key | 이름 -------------------------------- 0 | carlos henckes –

+0

죄송합니다, 내 업데이트 대답을 확인하시기 바랍니다 – Damith