Atualização em massa em c #

Para inserir uma quantidade enorme de dados em um banco de dados, eu costumava coletar todas as informações inseridas em uma lista e convertê-las em uma lista.DataTable. Eu então insiro essa lista em um banco de dados viaSqlBulkCopy.

Onde eu envio minha lista gerada
LiMyList
que contém informações de todos os dados em massa que eu quero inserir no banco de dados
e passá-lo para a minha operação de inserção em massa

InsertData(LiMyList, "MyTable");

OndeInsertData é

 public static void InsertData<T>(List<T> list,string TableName)
        {
                DataTable dt = new DataTable("MyTable");
                clsBulkOperation blk = new clsBulkOperation();
                dt = ConvertToDataTable(list);
                ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
                using (SqlBulkCopy bulkcopy = new SqlBulkCopy(ConfigurationManager.ConnectionStrings["SchoolSoulDataEntitiesForReport"].ConnectionString))
                {
                    bulkcopy.BulkCopyTimeout = 660;
                    bulkcopy.DestinationTableName = TableName;
                    bulkcopy.WriteToServer(dt);
                }
        }    

public static DataTable ConvertToDataTable<T>(IList<T> data)
        {
            PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(typeof(T));
            DataTable table = new DataTable();
            foreach (PropertyDescriptor prop in properties)
                table.Columns.Add(prop.Name, Nullable.GetUnderlyingType(prop.PropertyType) ?? prop.PropertyType);
            foreach (T item in data)
            {
                DataRow row = table.NewRow();
                foreach (PropertyDescriptor prop in properties)
                    row[prop.Name] = prop.GetValue(item) ?? DBNull.Value;
                table.Rows.Add(row);
            }
            return table;
        }

Agora eu quero fazer uma operação de atualização, existe alguma maneira de inserir dados é feito porSqlBulkCopy para atualizar dados para DataBase de c # .net

questionAnswers(7)

yourAnswerToTheQuestion