我正在创建一个3层程序,当我删除一条记录时,它会抛出一个错误,因为该记录与另一个表(外键)有关。我想验证如果记录与另一个表相关,我将显示一条消息,该消息无法删除记录,当我收到错误时xq或程序停止工作的异常。或者做类似的事情。
如果(查询> 0){无法删除}
其他{删除}
查询将如何在linq实体中以及在哪个层中具有数据层,业务逻辑和表示...
答案 0 :(得分:0)
在数据层中:类存储库提供程序
val connectionProperties = new java.util.Properties
connectionProperties.setProperty("driver", "com.teradata.jdbc.TeraDriver")
connectionProperties.setProperty("password","PASSWORD")
connectionProperties.setProperty("TMODE","TERA")
connectionProperties.setProperty("TYPE","FASTLOAD")
df.write.mode("append").jdbc("jdbc:teradata://10.196.51.107/user=USERNAME","DBname.emp_table", connectionProperties)
在业务逻辑层:类管理器提供程序:
public void Eliminar(int id) {
var resp = BaseDatos.Proveedor.Where(x => x.Medicamento.Any());
var proveedoresParaEliminar = BaseDatos.Proveedor.Where(p =>
p.IdProveedor == id);
foreach (var item in proveedoresParaEliminar) {
BaseDatos.Proveedor.Remove(item);
}
BaseDatos.SaveChanges();
}
在图层演示中:
public void Eliminar(int id) {
repo.Eliminar(id);
}