我有“Find”方法在执行时抛出此异常: 调用的目标抛出了异常。 ---> System.InvalidOperationException:类'NWatch.Entities.NWatchConvertMethod'没有无参数构造函数。
将ConvertMethod添加到dbContext并保存更改没有问题。
代码:
[TestMethod]
public void Delete()
{
// Add the entry
var convertMethod = RenderConvertMethod();
dbContext.ConvertMethods.Add(convertMethod);
dbContext.SaveChanges();
int id = convertMethod.ConvertMethodId;
// Remove entry
dbContext.ConvertMethods.Remove(convertMethod);
dbContext.SaveChanges();
// Ensure the entry no longer exists in the DB
// BELOW LINES THROWS THE EXCEPTION
var convertMethodFromDb = dbContext.ConvertMethods.Find(id);
Assert.IsNull(convertMethodFromDb);
}
private NWatchConvertMethod RenderConvertMethod()
{
var convertMethod = new NWatchConvertMethod("TestConvertMethod")
{
ConvertMethodDesc = "my description"
};
return convertMethod;
}
答案 0 :(得分:2)
所有实体都必须具有无参数构造函数。如果你想要它可以是私人的:
您必须向NWatchConvertMethod添加无参数构造函数。