Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.ComponentModel.DataAnnotations.Schema;
- using System.Xml.Serialization;
- namespace CFDE.Model
- {
- [XmlRoot(ElementName = "OwnershipPeriod")]
- public class OwnershipPeriod : ChathamBase
- {
- [XmlElement(ElementName = "OwnershipPercentage")]
- [Column(TypeName = "decimal")]
- public Nullable<decimal> OwnershipPercentage;
- [XmlElement(ElementName = "OwnershipPercentageEffectiveDate")]
- [Column(TypeName = "datetime")]
- public Nullable<DateTime> OwnershipPercentageEffectiveDate;
- [XmlElement(ElementName = "OwnershipStructure")]
- [Column(TypeName = "varchar")]
- public string OwnershipStructure;
- }
- }
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace CFDE.Model
- {
- interface IChathamBase
- {
- int TransactionIdentifier { get; set; }
- }
- public class ChathamBase : IChathamBase
- {
- public int TransactionIdentifier { get; set; }
- }
- }
- internal static void BulkUpsert(string connectionName, List<OwnershipPeriod> op)
- {
- BulkOperations bulk = new BulkOperations();
- using (TransactionScope trans = new TransactionScope())
- {
- using (SqlConnection cn = GetConnection(connectionName))
- {
- bulk.Setup<OwnershipPeriod>()
- .ForCollection(op)
- .WithTable("OwnershipPeriod")
- .AddAllColumns()
- //.AddColumn(x => x.TransactionIdentifier)
- //.AddColumn(x => x.OwnershipPercentage)
- .BulkInsertOrUpdate()
- //.SetIdentityColumn(x => x.TransactionIdentifier)
- .MatchTargetOn(x => x.TransactionIdentifier)
- .Commit(cn);
- }
- trans.Complete();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement