2009-11-25 22 views
1

我的SQL表名稱都是複數 - 事件,團隊,校園等... 當我將表拖入dbml中時,它創建一個名爲「Campuse」的實體,當然這是不正確的。我在屬性頁面中手動將其重命名爲Campus,但似乎沒有正確更新所有自動生成的代碼。例如,文件了.Designer.cs有以下代碼:Linq to SQL以表名結尾爲「es」創建錯誤的實體類名稱

public System.Data.Linq.Table<Campus> Campus 

當它應該是

public System.Data.Linq.Table<Campus> Campuses 

類似的問題,協會的名稱。

我可能會經歷所有生成的代碼,並嘗試手動重命名所有內容,但這是一個痛苦。有沒有更好的辦法?

回答

7

你可以turn off automatic pluralization of LINQ-to-SQL entities,這應該改正你的問題。不幸的是,LINQ-to-SQL(和實體框架)被設計用於以單數形式命名錶格的更普遍的做法。代碼生成器將試圖找出它看作是一個複數單詞的單數形式,但它並不擅長這個任務。

+0

謝謝。沒有意識到普遍的做法是使用單數表名。我想這是有道理的,如果你只是把表格看作結構而不是實際的記錄集合。使用單數名字有所幫助,但自從它以「s」結尾後,它仍然存在「校園」問題。只需手動編輯一行。 – PeteShack 2009-11-25 14:51:44

+0

@PeteShack我也不知道這是普遍的做法。我是一名承包商,我從來沒有爲表單名稱使用單數形式的任何組織工作。永遠!這涵蓋了SQL,MySQL和Oracle。 – Jacques 2018-02-07 07:21:43

相關問題