我嘗試使用linq2db插入數據嗎?但出現錯誤表類[Table(Schema="inf", Name="InformMessageLog")]public partial class InformMessageLog{ [Identity ] public int ID { get; set; }// int [Column, NotNull ] public DateTime Date { get; set; } // datetime [Column, NotNull ] public int StudentID { get; set; }// int [Column, Nullable] public string ContactName { get; set; } // nvarchar(max) [Column, Nullable] public string ContactPhone { get; set; } // nvarchar(max) [Column, Nullable] public string ContactMail { get; set; }// nvarchar(max) [Column, NotNull ] public string EventPoint { get; set; } // nvarchar(50) [Column, NotNull ] public string Template { get; set; } // nvarchar(max) [Column, NotNull ] public string Link { get; set; } // nvarchar(100) [Column, NotNull ] public string Status { get; set; } // nvarchar(100) [Column, Nullable] public bool? TechnicalError { get; set; } // bit [Column, Nullable] public string CampaingId { get; set; } // nvarchar(max)}我的密碼List<InformMessageLog> result = new List<InformMessageLog>();result = ....; //form list resulttry { using (var db = new IntegrationSqlDbDB()) { db.BulkCopy(result); } return req.CreateResponse(HttpStatusCode.OK, result); } catch (Exception e) { loger.LogError("Failed to set log from db " + e.Message); }結果數據[ { "ID": 1, "Date": "2018-04-13T00:00:00+00:00", "StudentID": 76769, "ContactName": "XXXXXXX XXXXXXX", "ContactPhone": "-", "ContactMail": "[email protected]", "EventPoint": "loyality", "Template": "1806123", "Link": "unisender", "Status": "-", "TechnicalError": false, "CampaingId": "1594676730" }]錯誤給定的ColumnMapping與源或目標中的任何列都不匹配。我檢查了所有類型并復制了列名稱,但問題仍然存在。ID欄可能有問題嗎?如何正確將其傳遞給bulkCopy結構。
2 回答

猛跑小豬
TA貢獻1858條經驗 獲得超8個贊
默認情況下,SQL Server列名稱不區分大小寫,而批量復制則區分大小寫。您需要檢查數據庫中的列名,以及它們是否與C#屬性區分大小寫-將db名稱放入column屬性。
- 2 回答
- 0 關注
- 261 瀏覽
添加回答
舉報
0/150
提交
取消