我正在尝试在c#中为本地服务器数据库构建一个删除函数。以下代码由于某种原因告诉我,我正在将 deleteOk 与字符串混合。
public bool Delete(string departId)
{
bool deleteOk = false;
try
{
DbContext ctx = new DbContext();
var departments = ctx.Departments;
var dept = departments.AsQueryable().FirstOrDefault(dpt => dpt._id == new ObjectId(departId));
ctx.Delete<Department>(dept, "departments");
deleteOk = true;
}
catch (Exception ex)
{
DALUtils.ErrorRoutine(ex, "EmployeeDAO", "Delete");
}
return deleteOk;
}
答案 0 :(得分:1)
由于某种原因,它告诉我我正在将我的deleteOk与字符串混合
因为你是。
您将值声明为bool
:
bool deleteOk = false;
您可以为其设置布尔值:
deleteOk = true;
你试着把它归还:
return deleteOk;
但该方法声明它返回string
:
public string Delete(string departId)
如果您想从方法中返回bool
,请让方法返回bool
:
public bool Delete(string departId)
C#是一种静态类型语言。它不会在类型之间隐式转换。因此,您无法将bool
视为string
。
答案 1 :(得分:0)
您的方法的返回值是一个字符串。将它改为bool,错误就消失了......