2012-10-17 89 views
0

我在我的數據庫運行PetaPoco模板T4,它會生成以下錯誤:但PetaPcoro T4模板編譯錯誤

Running transformation: System.InvalidOperationException: Sequence contains more than one  matching element 

從database.tt

我的數據庫是正確建模文件」報道,大部分表格都沒有記錄,儘管我認爲這與它無關,是嗎?

我正在查詢MySQL本地數據庫。我已經在web.config中設置了連接字符串,並且這是web.config文件中的唯一連接字符串

回答

1

昨天我有同樣的問題,我也使用MySQL和最後的Nuget包。首先,我發現那一代作品上所有的數據庫,我試着從official page解決方案:

DatabaseName = "name"; 

但我發現它不理解變量DatabaseName,現在它叫SchemaName。這修復了未知表格上的錯誤。

其次,我發現它在多個PK表上拋出異常,因此在T4模板編譯並檢查最後一個表之後打開Database.cs。我的解決方案是從PetaPoco.Generator.ttinclude的主鍵中刪除代,然後手動編輯。

此外,您還可以看看:In PetaPoco, how to decorate a table that has multi-columns primary keys

+0

邁克爾Dimoudis了重寫T4模板處理複合鍵的時間。這裏是回購 - > https://github.com/michaeldimoudis/PetaPoco/tree/master/PetaPoco/Models/Generated –

0

您是否有更多信息,例如堆棧跟蹤? VS通常會轉到錯誤的位置,但在實際模板解析開始之前,有時會出現初始錯誤。 你沒有意外在配置文件中創建連接字符串的第二個副本?