C# 第一项仅保存在数据库中
我有一个新闻列表,在这里我试图保存/更新到数据库。新闻列表是一个列表,在这里我已经访问了新闻列表并尝试执行操作。但问题总是1项转到插入部分并将其保存到数据库,以及数据库中不存在的所有其他项转到更新查询部分 麦可德C# 第一项仅保存在数据库中,c#,asp.net,asp.net-mvc,C#,Asp.net,Asp.net Mvc,我有一个新闻列表,在这里我试图保存/更新到数据库。新闻列表是一个列表,在这里我已经访问了新闻列表并尝试执行操作。但问题总是1项转到插入部分并将其保存到数据库,以及数据库中不存在的所有其他项转到更新查询部分 麦可德 公共字符串SaveNewsDetails(列表listTempNews,int RowCount) { int值; string newstatus=string.Empty; StringBuilder sqlBuilder=新的StringBuilder(); DataAccess
公共字符串SaveNewsDetails(列表listTempNews,int RowCount)
{
int值;
string newstatus=string.Empty;
StringBuilder sqlBuilder=新的StringBuilder();
DataAccess db=DataAccess.Create(“Conn”);
尝试
{
使用(var trn=db.BeginTransaction())
{
foreach(listTempNews中的变量项)
{
IEnumerable newsList=null;
追加(“选择新闻代码”);
Append(“来自T_新闻”);
Append(“WHERE NewsCode='”+item.N_Code+”);
newsList=trn.Query(sqlBuilder.ToString());
if(newsList==null | | newsList.Count()==0)
{
//“插入到表”查询转到此处
}
其他的
{
//这里是更新查询
}
trn.Execute(sqlBuilder.ToString());
}
trn.Complete();
}
}
捕获(例外情况除外)
{
}
返回新闻状态;
}
要将所有数据插入表中,还是要更新数据库中的所有项目(如果存在)?在这里,我逐项列出了每个项目。如果数据库中存在项目,则需要编辑,如果数据库中不存在项目,则需要插入。当前,列表的第一项转到插入部分,请查看以下线程,这是一种插入或更新查询:您应该阅读pronto。您这里有一个空的catch块,这是真的吗?
public string SaveNewsDetails(List<TempNews> listTempNews, int RowCount)
{
int value;
string NewsStatus = string.Empty;
StringBuilder sqlBuilder = new StringBuilder();
DataAccess db = DataAccess.Create("Conn");
try
{
using (var trn = db.BeginTransaction())
{
foreach (var item in listTempNews)
{
IEnumerable<string> newsList = null;
sqlBuilder.Append("SELECT NewsCode ");
sqlBuilder.Append("FROM T_NEWS ");
sqlBuilder.Append("WHERE NewsCode = '" + item.N_Code + "'");
newsList = trn.Query<string>(sqlBuilder.ToString());
if (newsList == null || newsList.Count() == 0)
{
// Insert to table Query goes here
}
else
{
// Update Query Goes here
}
trn.Execute(sqlBuilder.ToString());
}
trn.Complete();
}
}
catch (Exception Ex)
{
}
return NewsStatus;
}