C# 仅将最后一项添加到数据库
我试图将一些控件添加到列表中,但由于某些原因,这只是将最后一个视图保存到数据库中C# 仅将最后一项添加到数据库,c#,C#,我试图将一些控件添加到列表中,但由于某些原因,这只是将最后一个视图保存到数据库中 public List<tblPortalIandEValue> createIandERecord(Guid _userId, string fieldName, string fieldValue) { List<tblPortalIandEValue> _iandevalues = new List<tblPortalIandEValue>(); _iand
public List<tblPortalIandEValue> createIandERecord(Guid _userId, string fieldName, string fieldValue)
{
List<tblPortalIandEValue> _iandevalues = new List<tblPortalIandEValue>();
_iandevalues.Add(new tblPortalIandEValue { userId = _userId, field_name = fieldName, field_value = fieldValue });
return _iandevalues;
}
public List createIandERecord(Guid\u userId,string fieldName,string fieldValue)
{
列表_iandevalues=新列表();
_添加(新的TBLPortaliandValue{userId=\u userId,field\u name=fieldName,field\u value=fieldValue});
返回-贬值;
}
我想我的问题在于我的保存,因为我把这个列表称为addnew,然后返回它。我想我应该返回记录
protected void btnSave_Click(object sender, EventArgs e)
{
List<tblPortalIandEValue> _iandevalues = new List<tblPortalIandEValue>();
_customerId = Guid.NewGuid();
_iandevalues=_dal.createIandERecord(_customerId , "mortagecic", mortagecic.Value.ToString());
_iandevalues = _dal.createIandERecord(_customerId, "gascic", gascic.Value.ToString());
_iandevalues = _dal.createIandERecord(_customerId, "electricitycic", electricitycic.Value.ToString());
_iandevalues.ForEach(n =>_dal.portalEntities.tblPortalIandEValues.Add(n));
_dal.portalEntities.SaveChanges();
}
protectedvoidbtnsave\u单击(对象发送方,事件参数e)
{
列表_iandevalues=新列表();
_customerId=Guid.NewGuid();
_iandevalues=_dal.createIAnderRecord(_customerId,“mortagecic”,mortagecic.Value.ToString());
_iandevalues=_dal.createIAnderRecord(_customerId,“gascic”,gascic.Value.ToString());
_iandevalues=_dal.createIandERecord(_customerId,“electricitycic”,electricitycic.Value.ToString());
_iandevalues.ForEach(n=>_dal.portalinties.tblportaliandvalues.Add(n));
_dal.portalinties.SaveChanges();
}
您的问题在于CreateIAnderRecord方法,因为您每次都在更新列表。将代码更改为:
public tblPortalIandEValue createIandERecord(Guid _userId, string fieldName, string fieldValue)
{
return new tblPortalIandEValue { userId = _userId, field_name = fieldName, field_value = fieldValue });
}
protected void btnSave_Click(object sender, EventArgs e)
{
List<tblPortalIandEValue> _iandevalues = new List<tblPortalIandEValue>();
_customerId = Guid.NewGuid();
_iandevalues.Add(_dal.createIandERecord(_customerId, "mortagecic", mortagecic.Value.ToString()));
_iandevalues.Add(_dal.createIandERecord(_customerId, "gascic", gascic.Value.ToString()));
_iandevalues.Add(_dal.createIandERecord(_customerId, "electricitycic", electricitycic.Value.ToString()));
_iandevalues.ForEach(n => _dal.portalEntities.tblPortalIandEValues.Add(n));
_dal.portalEntities.SaveChanges();
}
public tblportaliandvalue createIandERecord(Guid\u用户ID、字符串字段名、字符串字段值)
{
返回新的TBLPortaliandValue{userId=\u userId,field\u name=fieldName,field\u value=fieldValue});
}
受保护的无效btnSave\u单击(对象发送方,事件参数e)
{
列表_iandevalues=新列表();
_customerId=Guid.NewGuid();
_iandevalues.Add(_dal.createIAnderRecord(_customerId,“mortagecic”,mortagecic.Value.ToString());
_iandevalues.Add(_dal.createIAnderRecord(_customerId,“gascic”,gascic.Value.ToString());
_i折旧.Add(_dal.createIandERecord(_customerId,“electricityic”,electricityic.Value.ToString());
_iandevalues.ForEach(n=>_dal.portalinties.tblportaliandvalues.Add(n));
_dal.portalinties.SaveChanges();
}
第二行将覆盖列表的创建。我怀疑您想将其更改为\u iandevalues.AddRange(\u dal.createIandERecord(…)代码>我相信我被跟踪了hee没有理由投票感谢你的帮助而不是贬低