As I do not use Entity Framework this may be completely wrong- and this answer is based on my experiences with ADO which shares its underpinnings with EF.
What the problem may be is that your database context is assuming that your command is "text", which is the default type and expects the command to be a "SELECT" statement. If you change the definition of your command and define it as a Stored Procedure you may have some success. You may have some success with something akin to this
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "[dbo].[getdatechart]";
cmd.CommandType = CommandType.StoredProcedure;