C# AdventureWorks从数据库中删除失败的测试

C# AdventureWorks从数据库中删除失败的测试,c#,unit-testing,adventureworks,argumentnullexception,C#,Unit Testing,Adventureworks,Argumentnullexception,我有AdventureWorks数据库中的下表,您可以在此处看到我的模型: , 这是我的存储库服务 public class EmployeeRepository : IEmployeeRepository { private AdventureWorksEntities dataBaseContext = new AdventureWorksEntities(); public IQueryable <Employee> Employees {

我有AdventureWorks数据库中的下表,您可以在此处看到我的模型:

,

这是我的存储库服务

public class EmployeeRepository : IEmployeeRepository
{
    private AdventureWorksEntities dataBaseContext = new AdventureWorksEntities();

    public IQueryable <Employee> Employees
    {
        get
        {
            return dataBaseContext.Employees;
        }
    }

    public bool SaveEmployee(Employee employee)
    {
        try{
            dataBaseContext.Employees.AddObject(employee);
            dataBaseContext.SaveChanges();
            return true;
        }
        catch
        {
            return false;            
        }
    }

    public bool DeleteEmployee(int employeeId)
    {
        try
        {
            var employeeToDelete = from e in dataBaseContext.Employees
                                   where e.EmployeeID == employeeId
                                   select e as Employee;
            dataBaseContext.Employees.DeleteObject((Employee)employeeToDelete.FirstOrDefault());
            dataBaseContext.SaveChanges();
            return true;
        }
        catch
        {
            return false;
        }
    }
}
我在DeleteEmployee方法中有一个System.ArgumentException。employeeToDelete变量为null

以下是来自exception的信息

System.ArgumentNullException: Value cannot be null.
Parameter name: entity
   at System.Data.EntityUtil.ThrowArgumentNullException(String parameterName)
   at System.Data.EntityUtil.CheckArgumentNull[T](T value, String parameterName)
   at System.Data.Objects.ObjectContext.DeleteObject(Object entity, EntitySet expectedEntitySet)
   at System.Data.Objects.ObjectSet`1.DeleteObject(TEntity entity)
   at AdventureWorks.Domain.RepositoryServices.EmployeeRepository.DeleteEmployee(Int32 employeeId) in D:\dokumenty\Visual Studio 2010\Projects\Kainos\MVC3-Adventure-Works\AdventureWorks\AdventureWorks.Domain\RepositoryServices\EmployeeRepository.cs:line 45

不捕获异常以便查看抛出的内容如何???是的,我获取了system.argumentnullexception如何不捕获异常以便查看抛出的内容???是的,我获取了system.argumentnullexception
System.ArgumentNullException: Value cannot be null.
Parameter name: entity
   at System.Data.EntityUtil.ThrowArgumentNullException(String parameterName)
   at System.Data.EntityUtil.CheckArgumentNull[T](T value, String parameterName)
   at System.Data.Objects.ObjectContext.DeleteObject(Object entity, EntitySet expectedEntitySet)
   at System.Data.Objects.ObjectSet`1.DeleteObject(TEntity entity)
   at AdventureWorks.Domain.RepositoryServices.EmployeeRepository.DeleteEmployee(Int32 employeeId) in D:\dokumenty\Visual Studio 2010\Projects\Kainos\MVC3-Adventure-Works\AdventureWorks\AdventureWorks.Domain\RepositoryServices\EmployeeRepository.cs:line 45