Используйте событие CellClick вида сетки, чтобы получить текущее значение столбца и сохранить его в сеансе.затем из сеанса вы можете получить первичный ключ.
private void gridview1_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (gridview1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value != null)
{
Session["primarykey"] = gridview1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
}
}
// На следующей странице вы назначите сеанс переменной primaykey с помощью следующего кода.
string primarykey = Session["primarykey"].To
String();