Хорошо, я использую Iqueryalbe для возврата набора данных, но для отображения результатов я использую сетку данных Telerik.
Но когда я пытаюсь получить доступ к значению datakeyvalue, я не получаю никакого результата, потому что он обычно задается в разметке
public IQueryable
getAllPlayersByTeamId(Guid teamId)
{
var _player = SoccerEntities.players.Where(a => a.teamId == teamId).ToList();
return _player.AsQueryable();
}
Моя функция, которую я вызываю, получает всех игроков
Guid teamId = new Guid(Request.QueryString["teamId"].ToString());
if (teamId ==Guid.Empty)
{
grdSoccerPlayers.DataSource = _dal.getAllPlayersByTeamId(teamId);
grdSoccerPlayers.DataBind();
}
Действие, при котором я пытаюсь перехватить значение datakeyvalue, которое обычно задается источником данных объекта?
if (e.CommandName == "Delete")
{
GridDataItem item = e.Item as GridDataItem;
Guid strId = new Guid(item.GetDataKeyValue("id").ToString());
player _player = _dal.GetPlayerBYID(strId);
_dal.SoccerEntities.players.DeleteObject(_player);
_dal.SoccerEntities.SaveChanges();
grdSoccerPlayers.DataBind();
}
Подробнее здесь: https://stackoverflow.com/questions/336 ... -deletions