MVC: O dicionário de parâmetros contém uma entrada nula para o parâmetro 'k' do tipo não anulável 'System.Int32'

Eu sou novo emMVC. Em Meu aplicativo, estou recuperando os dados do Mydatabase. mas quando executo meu aplicativo, aparece Erro como esse, esse é o meu URL

http://localhost:7317/Employee/DetailsData/4



  Exception Details: System.ArgumentException: The parameters dictionary contains a null entry for parameter 'k' of non-nullable type 'System.Int32' for method 'System.Web.Mvc.ActionResult DetailsData(Int32)' in 'MVCViewDemo.Controllers.EmployeeController'. An optional parameter must be a reference type, a nullable type, or be declared as an optional parameter.
Parameter name: parameters

este é o meu código de arquivo web.config

<connectionStrings>
  <add name="EmployeeContext" connectionString="Server=.;Database=mytry;integrated security=true; ProviderName=System.Data.SqlClient"/>
</connectionStrings>

esta é minha classe de modelo de funcionário (Employee.cs)

[Table("emp")]    /* to map tablename with our class name*/
    public class Employee
    {
        public int EmpId { get; set; }
        public string Name { get; set; }
        public string Gender { get; set; }
        public string City { get; set; }

    }

Classe de modelo EmployeeContext.cs

 public class EmployeeContext:DbContext
    {
        public DbSet<Employee> Employees { get; set; }
    }

my EmployeeController.cs

 public ActionResult DetailsData(int k)
        {

            EmployeeContext Ec = new EmployeeContext();
            Employee emp = Ec.Employees.Single(X => X.EmpId == k);           
            return View(emp);
        }

e minha visão

<h2>DetailsData</h2>
@Model.Name<br />
@Model.City<br />
@Model.Gender<br />
@Model.EmpId

questionAnswers(4)

yourAnswerToTheQuestion