2009-06-29 73 views
0

我有一個SQL Server表,它具有通用名稱,如Text1,Text2 ..等。表的設計是這樣的,因爲相同的結構用於不同的項目。將類屬性映射到表中的通用列.NET

我在.NET中有一個類,它具有屬性。假設一個Customer類有一個名爲FirstName的屬性。

如何在應用程序中將FirstName映射到Text1一次(中心位置),以便在創建不同的DAL方法時不必記住和硬編碼遍佈應用程序的映射?

例如,我希望應用程序知道何時要更新,插入名字,DAL會自動使用Text1。基本上我不必記住哪個屬性到哪個列。這個想法是這樣的,開發人員不會以錯誤的方式映射合適的/列。它始終如一。

注意:數據庫插入,更新和刪除只能通過存儲過程進行。

回答

0

看看那裏的各種ORM。對於映射遺留數據庫,是完美的。

+0

我不能使用第三方ORM。我更喜歡使用.NET或LINQ。 – 2009-06-29 21:43:25

+0

我不明白這種心態,就像說「我不能用螺絲刀擰螺絲」。噢,我猜... – mxmissile 2009-06-29 22:40:34

0

如果你堅持MS並且不想使用實體框架LinqToSQL是相當不錯的。

0

如果您不能使用NHibernate的(和我強烈建議你這樣做),或者無法使用LINQ到SQL(也許是你的代碼庫是.NET 2.0)然後...

你可能會想要實現某種形式的工廠模式。在你的工廠對象內部,你可能想要返回一個強大的數據集,然後使用一個對象來映射你的數據集和DTO/View/Entity對象之間的映射器。來自Lostechies的Jimmy爲對象映射器創建了一個很好的開源對象,您可能會發現它非常有用:AutoMapper

快樂編碼

相關問題