you need to set Data Key Names property as BookingRefNo. then only you can get the Data Key value
<asp:gridview id="GridView2" runat="server" datakeynames="BookingRefNo" xmlns:asp="#unknown"></asp:gridview>
now below line you will have BookingRefNo
int BookingRefNo=int.Parse(GridView2.DataKeys[e.RowIndex].Value.ToString());
when you get values, try like below
var DateIn =GridView2.Rows[e.RowIndex].Cells[1].Text;
var JobCode =GridView2.Rows[e.RowIndex].Cells[2].Text;
var RequestedBy=GridView2.Rows[e.RowIndex].Cells[3].Text;
PageLoad code Updated
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack()) {
BindGridViewPageLoad();
}
}