我在 ParametersController 类中有这个方法:
public string SaveParameter(int id, string param, string val)
{
ProjectConfigurations config = new ProjectConfigurations();
ProjectConfigurationsDAO dao = new ProjectConfigurationsDAO();
config = dao.GetProjectConfigurationsByProjectAndParameter(id, param);
config.Value = val;
dao.Edit(config);
return JsonConvert.SerializeObject(new { success = true, data = config });
//return JsonConvert.SerializeObject(config);
}
在我的 BaseDao 类中,我有这个:
public void Edit(T entity)
{
using (context = new Context())
{
context.Entry<T>(entity).State = EntityState.Modified;
context.SaveChanges();
}
}
记录未更新。我是 EF 新手,我做错了什么?
答案 0 :(得分:0)
永远不要尝试创建任何通用存储库,因为它们毫无用处。试试这个
public string SaveParameter(int id, string param, string val)
{
using (context = new Context())
{
var existedConfig=conext.Set<Config>.FirstOrDefault(i=> i.Id==id);
existedConfig.Value=val;
context.Entry<Config>(existedConfig).State = EntityState.Modified;
context.SaveChanges();
return JsonConvert.SerializeObject(new { success = true, data = config });
}