c# - Sql 不会使用 web 方法和 linq 更新
问题描述
因此,我尝试使用 DataSets 和列表以及 c# 和 SQL 更新两个表,但它不会进行任何更改,这是我的代码:
public class BusinessObject
{
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
public int? Id { get; set; }
public string Name { get; set; }
public int Duration { get; set; }
public int PercentDone { get; set; }
public List<BusinessObject> Children { get; set; }
public int Progress { get; set; }
}
这是我试图更新我的价值观的课程:
public void Update( List<BusinessObject> Tareas)
{
foreach (BusinessObject valor in Tareas)
{
int? taskId = valor.Id;
spCliente_Proyectos_GanttTableAdapter DatosTAS = new spCliente_Proyectos_GanttTableAdapter();
DSProyectosPlaneacion.spCliente_Proyectos_GanttDataTable DatosTS = DatosTAS.GetDataGantt(idProyecto.Value);
DSProyectosPlaneacion.spCliente_Proyectos_GanttRow result = DatosTS.FirstOrDefault(sv => sv.id == valor.Id);
if (result != null)
{
// result.id = valor.Id;
valor.Name = result.sTitulo ;
valor.StartDate = result.dFechaI;
valor.EndDate = result.dFechaF;
valor.PercentDone =(int) result.fAvance;
}
DatosTS.AcceptChanges();
}
}
web方法定义如下:
[WebMethod]
public static void UpdateIt(List<BusinessObject> Tareas)
{
ListarClientesProyectoGantt Editar = new ListarClientesProyectoGantt();
Editar.Update(Tareas);
}
我错过了什么?非常感谢你
解决方案
看起来您正在修改 if 语句中的变量,但我没有看到您添加到数据集中的valor
任何地方。valor
如果您不将其添加到数据集中,则无法将其保存到您的数据库中。