2008-11-26 23 views
2

如果能夠以某種方式說出生成的實體類中的某些屬性應該(例如)通過(比如說)驗證屬性(以及Linq To SQL列屬性)進行修飾,那將非常方便。可能修改Linq To SQL生成的C#?

它是一個T4模板嗎?或者還有其他方法來剝皮貓嗎?

回答

0

不,SqlMetal工具是處理C#生成的工具,它自身定義瞭如何生成C#(或VB)。

我不熟悉你想要的模板樣式,但是你可以試着放棄生成的類(如果它們不是那麼大的變化),因爲它們只是部分類。

否則,你需要寫/查找SqlMetal的自定義實現

0

不幸的是,部分類不能屬性成員從局部類的另一部分增加 - 也就是說,如果SqlMetal定義屬性Foo,你無法在.cs的一半中爲Foo添加屬性。

這取消了其中一種(通常)定製此類文件的更強大的方法......您可能必須抓住機會並手動編輯生成的文件(將其完全從dbml中分離後) - 或者編寫你自己的dbml解析器frmo scratch(mayhbe using xslt)。不容易。