C# 第一项仅保存在数据库中

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

我有一个新闻列表,在这里我试图保存/更新到数据库。新闻列表是一个列表,在这里我已经访问了新闻列表并尝试执行操作。但问题总是1项转到插入部分并将其保存到数据库,以及数据库中不存在的所有其他项转到更新查询部分

麦可德
公共字符串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;

    }